je-editor 0.0.57__py3-none-any.whl → 0.0.59__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3194) hide show
  1. je_editor/__init__.py +1 -1
  2. je_editor/pyside_ui/editor_main_ui/main_editor.py +20 -0
  3. je_editor/pyside_ui/menu/set_menu.py +17 -0
  4. je_editor/pyside_ui/ui_setting/ui_setting.py +27 -0
  5. je_editor/start_editor.py +18 -0
  6. je_editor/tkinter_ui/__init__.py +1 -1
  7. je_editor/tkinter_ui/editor_main_ui/__init__.py +1 -1
  8. je_editor/tkinter_ui/editor_main_ui/tkinter_editor.py +1 -4
  9. je_editor/tkinter_ui/editor_main_ui/ui_setting/ui_setting.py +1 -1
  10. je_editor/tkinter_ui/ui_event/__init__.py +1 -1
  11. je_editor/tkinter_ui/ui_event/auto_save/__init__.py +1 -1
  12. je_editor/tkinter_ui/ui_event/auto_save/start_auto_save/start_auto_save.py +17 -17
  13. je_editor/tkinter_ui/ui_event/change_font/__init__.py +1 -1
  14. je_editor/tkinter_ui/ui_event/change_font/change_font.py +38 -38
  15. je_editor/tkinter_ui/ui_event/close/__init__.py +1 -1
  16. je_editor/tkinter_ui/ui_event/close/close_event.py +12 -12
  17. je_editor/tkinter_ui/ui_event/encoding/set_encoding.py +10 -10
  18. je_editor/tkinter_ui/ui_event/execute/__init__.py +1 -1
  19. je_editor/tkinter_ui/ui_event/execute/execute_code/__init__.py +1 -1
  20. je_editor/tkinter_ui/ui_event/execute/execute_code/exec_code.py +22 -22
  21. je_editor/tkinter_ui/ui_event/execute/execute_shell_command/__init__.py +1 -1
  22. je_editor/tkinter_ui/ui_event/execute/execute_shell_command/run_on_shell.py +12 -12
  23. je_editor/tkinter_ui/ui_event/language/__init__.py +1 -1
  24. je_editor/tkinter_ui/ui_event/language/set_language.py +13 -13
  25. je_editor/tkinter_ui/ui_event/open_file/__init__.py +1 -1
  26. je_editor/tkinter_ui/ui_event/open_file/open_file_to_read/__init__.py +1 -1
  27. je_editor/tkinter_ui/ui_event/open_file/open_file_to_read/open_file_to_read.py +20 -20
  28. je_editor/tkinter_ui/ui_event/open_file/open_last_edit_file/__init__.py +1 -1
  29. je_editor/tkinter_ui/ui_event/open_file/open_last_edit_file/open_last_edit_file.py +17 -17
  30. je_editor/tkinter_ui/ui_event/save_file/save_file_to_open/__init__.py +1 -1
  31. je_editor/tkinter_ui/ui_event/save_file/save_file_to_open/save_file_to_open.py +19 -19
  32. je_editor/tkinter_ui/ui_event/tag_keyword/__init__.py +1 -1
  33. je_editor/tkinter_ui/ui_event/tag_keyword/tag_keyword.py +49 -49
  34. je_editor/tkinter_ui/ui_event/text_process/program_exec/__init__.py +1 -1
  35. je_editor/tkinter_ui/ui_event/text_process/program_exec/code_exec_manager.py +169 -169
  36. je_editor/tkinter_ui/ui_event/text_process/program_exec/process_error.py +10 -10
  37. je_editor/tkinter_ui/ui_event/text_process/shell/__init__.py +1 -1
  38. je_editor/utils/__init__.py +1 -1
  39. je_editor/utils/editor_content/__init__.py +1 -1
  40. je_editor/utils/editor_content/content_save.py +66 -66
  41. je_editor/utils/editor_content/editor_content_data.py +19 -19
  42. je_editor/utils/encoding/__init__.py +1 -1
  43. je_editor/utils/encoding/encoding_data_module.py +101 -101
  44. je_editor/utils/exception/__init__.py +1 -1
  45. je_editor/utils/exception/exception_tags.py +33 -33
  46. je_editor/utils/exception/exceptions.py +30 -30
  47. je_editor/utils/file/open/__init__.py +1 -1
  48. je_editor/utils/file/open/open_file.py +52 -52
  49. je_editor/utils/file/save/save_file.py +81 -81
  50. je_editor/utils/font/__init__.py +1 -1
  51. je_editor/utils/font/font.py +20 -20
  52. je_editor/utils/json_format/__init__.py +1 -1
  53. je_editor/utils/json_format/json_process.py +28 -28
  54. je_editor/utils/keyword/__init__.py +1 -1
  55. je_editor/utils/keyword/keyword_list.py +4 -4
  56. je_editor/utils/language/__init__.py +1 -1
  57. je_editor/utils/language/language_data_module.py +9 -9
  58. je_editor/utils/language_data_module/__init__.py +1 -1
  59. je_editor/utils/language_data_module/language_compiler_data_module.py +7 -7
  60. je_editor/utils/language_data_module/language_param_data_module.py +7 -7
  61. je_editor/utils/theme/theme.py +6 -6
  62. {je_editor-0.0.57.dist-info → je_editor-0.0.59.dist-info}/LICENSE +21 -21
  63. {je_editor-0.0.57.dist-info → je_editor-0.0.59.dist-info}/METADATA +2 -1
  64. je_editor-0.0.59.dist-info/RECORD +107 -0
  65. je_editor-0.0.59.dist-info/top_level.txt +1 -0
  66. deprecation_for_old_python/dev_setup.py +0 -30
  67. deprecation_for_old_python/setup.py +0 -30
  68. docs/source/conf.py +0 -54
  69. je_editor-0.0.57.dist-info/RECORD +0 -3228
  70. je_editor-0.0.57.dist-info/top_level.txt +0 -6
  71. start_editor/start_editor.py +0 -3
  72. test/tkinter_ui/unit_test/extend_test/extend_editor.py +0 -11
  73. test/tkinter_ui/unit_test/file/save_and_open/save_and_open.py +0 -5
  74. test/tkinter_ui/unit_test/tkinter_test/editor/editor_with_theme.py +0 -7
  75. test/tkinter_ui/unit_test/tkinter_test/editor/import_tkinter_test.py +0 -3
  76. test/tkinter_ui/unit_test/tkinter_test/font/test_font.py +0 -14
  77. venv/Lib/site-packages/PyInstaller/__init__.py +0 -65
  78. venv/Lib/site-packages/PyInstaller/__main__.py +0 -198
  79. venv/Lib/site-packages/PyInstaller/_recursion_too_deep_message.py +0 -45
  80. venv/Lib/site-packages/PyInstaller/_shared_with_waf.py +0 -86
  81. venv/Lib/site-packages/PyInstaller/archive/__init__.py +0 -1
  82. venv/Lib/site-packages/PyInstaller/archive/pyz_crypto.py +0 -48
  83. venv/Lib/site-packages/PyInstaller/archive/readers.py +0 -242
  84. venv/Lib/site-packages/PyInstaller/archive/writers.py +0 -583
  85. venv/Lib/site-packages/PyInstaller/building/__init__.py +0 -1
  86. venv/Lib/site-packages/PyInstaller/building/api.py +0 -1064
  87. venv/Lib/site-packages/PyInstaller/building/build_main.py +0 -971
  88. venv/Lib/site-packages/PyInstaller/building/datastruct.py +0 -295
  89. venv/Lib/site-packages/PyInstaller/building/icon.py +0 -85
  90. venv/Lib/site-packages/PyInstaller/building/makespec.py +0 -836
  91. venv/Lib/site-packages/PyInstaller/building/osx.py +0 -267
  92. venv/Lib/site-packages/PyInstaller/building/splash.py +0 -486
  93. venv/Lib/site-packages/PyInstaller/building/splash_templates.py +0 -229
  94. venv/Lib/site-packages/PyInstaller/building/templates.py +0 -142
  95. venv/Lib/site-packages/PyInstaller/building/toc_conversion.py +0 -156
  96. venv/Lib/site-packages/PyInstaller/building/utils.py +0 -741
  97. venv/Lib/site-packages/PyInstaller/compat.py +0 -771
  98. venv/Lib/site-packages/PyInstaller/config.py +0 -54
  99. venv/Lib/site-packages/PyInstaller/configure.py +0 -95
  100. venv/Lib/site-packages/PyInstaller/depend/__init__.py +0 -1
  101. venv/Lib/site-packages/PyInstaller/depend/analysis.py +0 -896
  102. venv/Lib/site-packages/PyInstaller/depend/bindepend.py +0 -1043
  103. venv/Lib/site-packages/PyInstaller/depend/bytecode.py +0 -318
  104. venv/Lib/site-packages/PyInstaller/depend/dylib.py +0 -453
  105. venv/Lib/site-packages/PyInstaller/depend/imphook.py +0 -546
  106. venv/Lib/site-packages/PyInstaller/depend/imphookapi.py +0 -468
  107. venv/Lib/site-packages/PyInstaller/depend/utils.py +0 -420
  108. venv/Lib/site-packages/PyInstaller/exceptions.py +0 -30
  109. venv/Lib/site-packages/PyInstaller/fake-modules/pyi_splash.py +0 -223
  110. venv/Lib/site-packages/PyInstaller/hooks/__init__.py +0 -1
  111. venv/Lib/site-packages/PyInstaller/hooks/hook-PIL.Image.py +0 -17
  112. venv/Lib/site-packages/PyInstaller/hooks/hook-PIL.ImageFilter.py +0 -13
  113. venv/Lib/site-packages/PyInstaller/hooks/hook-PIL.SpiderImagePlugin.py +0 -14
  114. venv/Lib/site-packages/PyInstaller/hooks/hook-PIL.py +0 -21
  115. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QAxContainer.py +0 -14
  116. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.Qsci.py +0 -14
  117. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.Qt.py +0 -29
  118. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.Qt3DAnimation.py +0 -14
  119. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.Qt3DCore.py +0 -14
  120. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.Qt3DExtras.py +0 -14
  121. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.Qt3DInput.py +0 -14
  122. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.Qt3DLogic.py +0 -14
  123. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.Qt3DRender.py +0 -14
  124. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtBluetooth.py +0 -14
  125. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtChart.py +0 -14
  126. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtCore.py +0 -14
  127. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtDBus.py +0 -14
  128. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtDataVisualization.py +0 -14
  129. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtDesigner.py +0 -14
  130. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtGui.py +0 -14
  131. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtHelp.py +0 -14
  132. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtLocation.py +0 -14
  133. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtMacExtras.py +0 -14
  134. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtMultimedia.py +0 -14
  135. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtMultimediaWidgets.py +0 -14
  136. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtNetwork.py +0 -15
  137. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtNetworkAuth.py +0 -14
  138. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtNfc.py +0 -14
  139. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtOpenGL.py +0 -14
  140. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtPositioning.py +0 -14
  141. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtPrintSupport.py +0 -14
  142. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtPurchasing.py +0 -14
  143. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtQml.py +0 -17
  144. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtQuick.py +0 -14
  145. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtQuick3D.py +0 -14
  146. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtQuickWidgets.py +0 -14
  147. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtRemoteObjects.py +0 -14
  148. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtScript.py +0 -14
  149. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtSensors.py +0 -14
  150. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtSerialPort.py +0 -14
  151. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtSql.py +0 -14
  152. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtSvg.py +0 -14
  153. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtTest.py +0 -14
  154. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtTextToSpeech.py +0 -14
  155. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtWebChannel.py +0 -14
  156. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtWebEngine.py +0 -14
  157. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtWebEngineCore.py +0 -22
  158. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtWebEngineWidgets.py +0 -14
  159. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtWebKit.py +0 -14
  160. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtWebKitWidgets.py +0 -14
  161. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtWebSockets.py +0 -14
  162. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtWidgets.py +0 -14
  163. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtWinExtras.py +0 -14
  164. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtX11Extras.py +0 -14
  165. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtXml.py +0 -14
  166. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.QtXmlPatterns.py +0 -14
  167. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.py +0 -26
  168. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt5.uic.py +0 -17
  169. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QAxContainer.py +0 -14
  170. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.Qsci.py +0 -14
  171. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.Qt3DAnimation.py +0 -14
  172. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.Qt3DCore.py +0 -14
  173. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.Qt3DExtras.py +0 -14
  174. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.Qt3DInput.py +0 -14
  175. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.Qt3DLogic.py +0 -14
  176. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.Qt3DRender.py +0 -16
  177. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtBluetooth.py +0 -14
  178. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtCharts.py +0 -14
  179. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtCore.py +0 -14
  180. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtDBus.py +0 -14
  181. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtDataVisualization.py +0 -14
  182. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtDesigner.py +0 -14
  183. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtGui.py +0 -14
  184. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtHelp.py +0 -14
  185. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtMultimedia.py +0 -14
  186. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtMultimediaWidgets.py +0 -14
  187. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtNetwork.py +0 -15
  188. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtNetworkAuth.py +0 -14
  189. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtNfc.py +0 -14
  190. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtOpenGL.py +0 -14
  191. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtOpenGLWidgets.py +0 -14
  192. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtPdf.py +0 -14
  193. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtPdfWidgets.py +0 -14
  194. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtPositioning.py +0 -14
  195. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtPrintSupport.py +0 -14
  196. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtQml.py +0 -17
  197. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtQuick.py +0 -14
  198. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtQuick3D.py +0 -14
  199. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtQuickWidgets.py +0 -14
  200. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtRemoteObjects.py +0 -14
  201. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtSensors.py +0 -14
  202. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtSerialPort.py +0 -14
  203. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtSql.py +0 -14
  204. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtSvg.py +0 -14
  205. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtSvgWidgets.py +0 -14
  206. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtTest.py +0 -14
  207. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtWebChannel.py +0 -14
  208. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtWebEngineCore.py +0 -27
  209. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtWebEngineQuick.py +0 -14
  210. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtWebEngineWidgets.py +0 -14
  211. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtWebSockets.py +0 -14
  212. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtWidgets.py +0 -14
  213. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.QtXml.py +0 -14
  214. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.py +0 -23
  215. venv/Lib/site-packages/PyInstaller/hooks/hook-PyQt6.uic.py +0 -17
  216. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.Qt3DAnimation.py +0 -14
  217. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.Qt3DCore.py +0 -14
  218. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.Qt3DExtras.py +0 -14
  219. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.Qt3DInput.py +0 -14
  220. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.Qt3DLogic.py +0 -14
  221. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.Qt3DRender.py +0 -14
  222. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtAxContainer.py +0 -14
  223. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtCharts.py +0 -14
  224. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtConcurrent.py +0 -14
  225. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtCore.py +0 -14
  226. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtDataVisualization.py +0 -14
  227. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtGui.py +0 -14
  228. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtHelp.py +0 -14
  229. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtLocation.py +0 -14
  230. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtMacExtras.py +0 -14
  231. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtMultimedia.py +0 -19
  232. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtMultimediaWidgets.py +0 -14
  233. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtNetwork.py +0 -15
  234. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtOpenGL.py +0 -14
  235. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtOpenGLFunctions.py +0 -14
  236. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtPositioning.py +0 -14
  237. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtPrintSupport.py +0 -14
  238. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtQml.py +0 -19
  239. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtQuick.py +0 -14
  240. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtQuickControls2.py +0 -14
  241. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtQuickWidgets.py +0 -14
  242. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtRemoteObjects.py +0 -14
  243. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtScript.py +0 -14
  244. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtScriptTools.py +0 -14
  245. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtScxml.py +0 -14
  246. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtSensors.py +0 -14
  247. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtSerialPort.py +0 -14
  248. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtSql.py +0 -14
  249. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtSvg.py +0 -14
  250. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtTest.py +0 -14
  251. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtTextToSpeech.py +0 -14
  252. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtUiTools.py +0 -15
  253. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtWebChannel.py +0 -14
  254. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtWebEngine.py +0 -14
  255. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtWebEngineCore.py +0 -22
  256. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtWebEngineWidgets.py +0 -14
  257. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtWebKit.py +0 -14
  258. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtWebKitWidgets.py +0 -14
  259. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtWebSockets.py +0 -14
  260. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtWidgets.py +0 -14
  261. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtWinExtras.py +0 -14
  262. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtX11Extras.py +0 -14
  263. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtXml.py +0 -14
  264. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.QtXmlPatterns.py +0 -14
  265. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.Qwt5.py +0 -31
  266. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide2.py +0 -22
  267. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.Qt3DAnimation.py +0 -14
  268. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.Qt3DCore.py +0 -14
  269. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.Qt3DExtras.py +0 -14
  270. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.Qt3DInput.py +0 -14
  271. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.Qt3DLogic.py +0 -14
  272. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.Qt3DRender.py +0 -14
  273. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtAxContainer.py +0 -14
  274. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtBluetooth.py +0 -14
  275. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtCharts.py +0 -14
  276. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtConcurrent.py +0 -14
  277. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtCore.py +0 -14
  278. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtDBus.py +0 -14
  279. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtDataVisualization.py +0 -14
  280. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtDesigner.py +0 -14
  281. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtGui.py +0 -14
  282. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtHelp.py +0 -14
  283. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtHttpServer.py +0 -14
  284. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtMultimedia.py +0 -19
  285. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtMultimediaWidgets.py +0 -14
  286. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtNetwork.py +0 -15
  287. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtNetworkAuth.py +0 -14
  288. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtNfc.py +0 -14
  289. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtOpenGL.py +0 -14
  290. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtOpenGLWidgets.py +0 -14
  291. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtPdf.py +0 -14
  292. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtPdfWidgets.py +0 -14
  293. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtPositioning.py +0 -14
  294. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtPrintSupport.py +0 -14
  295. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtQml.py +0 -17
  296. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtQuick.py +0 -14
  297. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtQuick3D.py +0 -14
  298. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtQuickControls2.py +0 -16
  299. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtQuickWidgets.py +0 -14
  300. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtRemoteObjects.py +0 -14
  301. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtScxml.py +0 -14
  302. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtSensors.py +0 -14
  303. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtSerialPort.py +0 -14
  304. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtSpatialAudio.py +0 -14
  305. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtSql.py +0 -14
  306. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtStateMachine.py +0 -14
  307. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtSvg.py +0 -14
  308. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtSvgWidgets.py +0 -14
  309. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtTest.py +0 -14
  310. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtUiTools.py +0 -14
  311. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtWebChannel.py +0 -14
  312. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtWebEngineCore.py +0 -29
  313. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtWebEngineQuick.py +0 -14
  314. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtWebEngineWidgets.py +0 -14
  315. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtWebSockets.py +0 -14
  316. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtWidgets.py +0 -14
  317. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.QtXml.py +0 -14
  318. venv/Lib/site-packages/PyInstaller/hooks/hook-PySide6.py +0 -25
  319. venv/Lib/site-packages/PyInstaller/hooks/hook-_tkinter.py +0 -29
  320. venv/Lib/site-packages/PyInstaller/hooks/hook-babel.py +0 -16
  321. venv/Lib/site-packages/PyInstaller/hooks/hook-difflib.py +0 -13
  322. venv/Lib/site-packages/PyInstaller/hooks/hook-distutils.py +0 -33
  323. venv/Lib/site-packages/PyInstaller/hooks/hook-distutils.util.py +0 -13
  324. venv/Lib/site-packages/PyInstaller/hooks/hook-django.contrib.sessions.py +0 -14
  325. venv/Lib/site-packages/PyInstaller/hooks/hook-django.core.cache.py +0 -14
  326. venv/Lib/site-packages/PyInstaller/hooks/hook-django.core.mail.py +0 -25
  327. venv/Lib/site-packages/PyInstaller/hooks/hook-django.core.management.py +0 -19
  328. venv/Lib/site-packages/PyInstaller/hooks/hook-django.db.backends.mysql.base.py +0 -13
  329. venv/Lib/site-packages/PyInstaller/hooks/hook-django.db.backends.oracle.base.py +0 -12
  330. venv/Lib/site-packages/PyInstaller/hooks/hook-django.db.backends.py +0 -25
  331. venv/Lib/site-packages/PyInstaller/hooks/hook-django.py +0 -92
  332. venv/Lib/site-packages/PyInstaller/hooks/hook-django.template.loaders.py +0 -14
  333. venv/Lib/site-packages/PyInstaller/hooks/hook-encodings.py +0 -14
  334. venv/Lib/site-packages/PyInstaller/hooks/hook-gevent.py +0 -24
  335. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.py +0 -12
  336. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.Adw.py +0 -16
  337. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.Atk.py +0 -29
  338. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.Champlain.py +0 -16
  339. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.Clutter.py +0 -16
  340. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GIRepository.py +0 -16
  341. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GLib.py +0 -42
  342. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GModule.py +0 -16
  343. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GObject.py +0 -19
  344. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.Gdk.py +0 -36
  345. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GdkPixbuf.py +0 -141
  346. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.Gio.py +0 -63
  347. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.Graphene.py +0 -16
  348. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.Gsk.py +0 -16
  349. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.Gst.py +0 -93
  350. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstAllocators.py +0 -16
  351. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstApp.py +0 -16
  352. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstAudio.py +0 -16
  353. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstBadAudio.py +0 -16
  354. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstBase.py +0 -16
  355. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstCheck.py +0 -16
  356. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstCodecs.py +0 -16
  357. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstController.py +0 -16
  358. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstGL.py +0 -16
  359. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstGLEGL.py +0 -16
  360. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstGLWayland.py +0 -16
  361. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstGLX11.py +0 -16
  362. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstInsertBin.py +0 -16
  363. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstMpegts.py +0 -16
  364. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstNet.py +0 -16
  365. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstPbutils.py +0 -16
  366. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstPlay.py +0 -16
  367. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstPlayer.py +0 -16
  368. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstRtp.py +0 -16
  369. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstRtsp.py +0 -16
  370. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstRtspServer.py +0 -16
  371. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstSdp.py +0 -16
  372. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstTag.py +0 -16
  373. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstTranscoder.py +0 -16
  374. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstVideo.py +0 -16
  375. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstVulkan.py +0 -16
  376. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstVulkanWayland.py +0 -16
  377. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstVulkanXCB.py +0 -16
  378. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GstWebRTC.py +0 -16
  379. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.Gtk.py +0 -59
  380. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GtkChamplain.py +0 -16
  381. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GtkClutter.py +0 -16
  382. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GtkSource.py +0 -31
  383. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.GtkosxApplication.py +0 -18
  384. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.HarfBuzz.py +0 -16
  385. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.Pango.py +0 -16
  386. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.PangoCairo.py +0 -16
  387. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.cairo.py +0 -16
  388. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.freetype2.py +0 -16
  389. venv/Lib/site-packages/PyInstaller/hooks/hook-gi.repository.xlib.py +0 -16
  390. venv/Lib/site-packages/PyInstaller/hooks/hook-heapq.py +0 -13
  391. venv/Lib/site-packages/PyInstaller/hooks/hook-idlelib.py +0 -14
  392. venv/Lib/site-packages/PyInstaller/hooks/hook-importlib_metadata.py +0 -24
  393. venv/Lib/site-packages/PyInstaller/hooks/hook-importlib_resources.py +0 -22
  394. venv/Lib/site-packages/PyInstaller/hooks/hook-keyring.py +0 -19
  395. venv/Lib/site-packages/PyInstaller/hooks/hook-kivy.py +0 -25
  396. venv/Lib/site-packages/PyInstaller/hooks/hook-lib2to3.py +0 -16
  397. venv/Lib/site-packages/PyInstaller/hooks/hook-matplotlib.backends.py +0 -218
  398. venv/Lib/site-packages/PyInstaller/hooks/hook-matplotlib.numerix.py +0 -21
  399. venv/Lib/site-packages/PyInstaller/hooks/hook-matplotlib.py +0 -23
  400. venv/Lib/site-packages/PyInstaller/hooks/hook-multiprocessing.util.py +0 -16
  401. venv/Lib/site-packages/PyInstaller/hooks/hook-numpy._pytesttester.py +0 -16
  402. venv/Lib/site-packages/PyInstaller/hooks/hook-numpy.py +0 -59
  403. venv/Lib/site-packages/PyInstaller/hooks/hook-packaging.py +0 -13
  404. venv/Lib/site-packages/PyInstaller/hooks/hook-pandas.io.formats.style.py +0 -18
  405. venv/Lib/site-packages/PyInstaller/hooks/hook-pandas.plotting.py +0 -18
  406. venv/Lib/site-packages/PyInstaller/hooks/hook-pandas.py +0 -20
  407. venv/Lib/site-packages/PyInstaller/hooks/hook-pickle.py +0 -13
  408. venv/Lib/site-packages/PyInstaller/hooks/hook-pkg_resources.py +0 -57
  409. venv/Lib/site-packages/PyInstaller/hooks/hook-platform.py +0 -16
  410. venv/Lib/site-packages/PyInstaller/hooks/hook-pygments.py +0 -29
  411. venv/Lib/site-packages/PyInstaller/hooks/hook-pytz.py +0 -16
  412. venv/Lib/site-packages/PyInstaller/hooks/hook-pytzdata.py +0 -14
  413. venv/Lib/site-packages/PyInstaller/hooks/hook-qtawesome.py +0 -19
  414. venv/Lib/site-packages/PyInstaller/hooks/hook-scapy.layers.all.py +0 -19
  415. venv/Lib/site-packages/PyInstaller/hooks/hook-scipy.io.matlab.py +0 -13
  416. venv/Lib/site-packages/PyInstaller/hooks/hook-scipy.linalg.py +0 -13
  417. venv/Lib/site-packages/PyInstaller/hooks/hook-scipy.py +0 -35
  418. venv/Lib/site-packages/PyInstaller/hooks/hook-scipy.sparse.csgraph.py +0 -13
  419. venv/Lib/site-packages/PyInstaller/hooks/hook-scipy.spatial.transform.rotation.py +0 -17
  420. venv/Lib/site-packages/PyInstaller/hooks/hook-scipy.special._ellip_harm_2.py +0 -30
  421. venv/Lib/site-packages/PyInstaller/hooks/hook-scipy.special._ufuncs.py +0 -14
  422. venv/Lib/site-packages/PyInstaller/hooks/hook-scipy.stats._stats.py +0 -15
  423. venv/Lib/site-packages/PyInstaller/hooks/hook-scrapy.py +0 -18
  424. venv/Lib/site-packages/PyInstaller/hooks/hook-setuptools.msvc.py +0 -13
  425. venv/Lib/site-packages/PyInstaller/hooks/hook-setuptools.py +0 -41
  426. venv/Lib/site-packages/PyInstaller/hooks/hook-shelve.py +0 -14
  427. venv/Lib/site-packages/PyInstaller/hooks/hook-sphinx.py +0 -41
  428. venv/Lib/site-packages/PyInstaller/hooks/hook-sqlalchemy.py +0 -77
  429. venv/Lib/site-packages/PyInstaller/hooks/hook-sqlite3.py +0 -19
  430. venv/Lib/site-packages/PyInstaller/hooks/hook-sysconfig.py +0 -29
  431. venv/Lib/site-packages/PyInstaller/hooks/hook-wcwidth.py +0 -14
  432. venv/Lib/site-packages/PyInstaller/hooks/hook-win32ctypes.core.py +0 -21
  433. venv/Lib/site-packages/PyInstaller/hooks/hook-xml.dom.domreg.py +0 -13
  434. venv/Lib/site-packages/PyInstaller/hooks/hook-xml.etree.cElementTree.py +0 -13
  435. venv/Lib/site-packages/PyInstaller/hooks/hook-xml.py +0 -12
  436. venv/Lib/site-packages/PyInstaller/hooks/hook-zope.interface.py +0 -12
  437. venv/Lib/site-packages/PyInstaller/hooks/pre_find_module_path/__init__.py +0 -1
  438. venv/Lib/site-packages/PyInstaller/hooks/pre_find_module_path/hook-PyQt5.uic.port_v2.py +0 -15
  439. venv/Lib/site-packages/PyInstaller/hooks/pre_find_module_path/hook-distutils.py +0 -46
  440. venv/Lib/site-packages/PyInstaller/hooks/pre_find_module_path/hook-pyi_splash.py +0 -36
  441. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/__init__.py +0 -1
  442. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.py +0 -37
  443. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.Adw.py +0 -16
  444. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.Atk.py +0 -16
  445. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.Champlain.py +0 -16
  446. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.Clutter.py +0 -16
  447. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GIRepository.py +0 -16
  448. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GLib.py +0 -16
  449. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GModule.py +0 -16
  450. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GObject.py +0 -16
  451. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.Gdk.py +0 -16
  452. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GdkPixbuf.py +0 -16
  453. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.Gio.py +0 -16
  454. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.Graphene.py +0 -16
  455. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.Gsk.py +0 -16
  456. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.Gst.py +0 -16
  457. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstAllocators.py +0 -16
  458. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstApp.py +0 -16
  459. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstAudio.py +0 -16
  460. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstBadAudio.py +0 -16
  461. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstBase.py +0 -16
  462. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstCheck.py +0 -16
  463. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstCodecs.py +0 -16
  464. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstController.py +0 -16
  465. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstGL.py +0 -16
  466. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstGLEGL.py +0 -16
  467. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstGLWayland.py +0 -16
  468. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstGLX11.py +0 -16
  469. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstInsertBin.py +0 -16
  470. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstMpegts.py +0 -16
  471. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstNet.py +0 -16
  472. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstPbutils.py +0 -16
  473. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstPlay.py +0 -16
  474. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstPlayer.py +0 -16
  475. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstRtp.py +0 -16
  476. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstRtsp.py +0 -16
  477. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstRtspServer.py +0 -16
  478. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstSdp.py +0 -16
  479. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstTag.py +0 -16
  480. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstTranscoder.py +0 -16
  481. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstVideo.py +0 -16
  482. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstVulkan.py +0 -16
  483. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstVulkanWayland.py +0 -16
  484. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstVulkanXCB.py +0 -16
  485. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GstWebRTC.py +0 -16
  486. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.Gtk.py +0 -16
  487. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GtkChamplain.py +0 -16
  488. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GtkClutter.py +0 -16
  489. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GtkSource.py +0 -16
  490. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.GtkosxApplication.py +0 -16
  491. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.HarfBuzz.py +0 -16
  492. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.Pango.py +0 -16
  493. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.PangoCairo.py +0 -16
  494. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.cairo.py +0 -16
  495. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.freetype2.py +0 -16
  496. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-gi.repository.xlib.py +0 -16
  497. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-setuptools.extern.six.moves.py +0 -35
  498. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-six.moves.py +0 -60
  499. venv/Lib/site-packages/PyInstaller/hooks/pre_safe_import_module/hook-urllib3.packages.six.moves.py +0 -30
  500. venv/Lib/site-packages/PyInstaller/hooks/rthooks/__init__.py +0 -1
  501. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth__tkinter.py +0 -30
  502. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_django.py +0 -30
  503. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_gdkpixbuf.py +0 -35
  504. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_gi.py +0 -15
  505. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_gio.py +0 -15
  506. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_glib.py +0 -31
  507. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_gstreamer.py +0 -26
  508. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_gtk.py +0 -21
  509. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_inspect.py +0 -44
  510. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_kivy.py +0 -18
  511. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_mplconfig.py +0 -38
  512. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_multiprocessing.py +0 -95
  513. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_pkgres.py +0 -200
  514. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_pkgutil.py +0 -86
  515. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_pyqt5.py +0 -28
  516. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_pyqt5webengine.py +0 -32
  517. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_pyqt6.py +0 -28
  518. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_pyqt6webengine.py +0 -35
  519. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_pyside2.py +0 -26
  520. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_pyside2webengine.py +0 -25
  521. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_pyside6.py +0 -26
  522. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_pyside6webengine.py +0 -31
  523. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_setuptools.py +0 -35
  524. venv/Lib/site-packages/PyInstaller/hooks/rthooks/pyi_rth_win32comgenpy.py +0 -52
  525. venv/Lib/site-packages/PyInstaller/isolated/__init__.py +0 -31
  526. venv/Lib/site-packages/PyInstaller/isolated/_child.py +0 -95
  527. venv/Lib/site-packages/PyInstaller/isolated/_parent.py +0 -406
  528. venv/Lib/site-packages/PyInstaller/lib/__init__.py +0 -1
  529. venv/Lib/site-packages/PyInstaller/lib/modulegraph/__init__.py +0 -1
  530. venv/Lib/site-packages/PyInstaller/lib/modulegraph/__main__.py +0 -89
  531. venv/Lib/site-packages/PyInstaller/lib/modulegraph/_compat.py +0 -25
  532. venv/Lib/site-packages/PyInstaller/lib/modulegraph/find_modules.py +0 -338
  533. venv/Lib/site-packages/PyInstaller/lib/modulegraph/modulegraph.py +0 -3309
  534. venv/Lib/site-packages/PyInstaller/lib/modulegraph/util.py +0 -149
  535. venv/Lib/site-packages/PyInstaller/lib/modulegraph/zipio.py +0 -418
  536. venv/Lib/site-packages/PyInstaller/loader/__init__.py +0 -1
  537. venv/Lib/site-packages/PyInstaller/loader/pyiboot01_bootstrap.py +0 -92
  538. venv/Lib/site-packages/PyInstaller/loader/pyimod01_archive.py +0 -307
  539. venv/Lib/site-packages/PyInstaller/loader/pyimod02_importers.py +0 -604
  540. venv/Lib/site-packages/PyInstaller/loader/pyimod03_ctypes.py +0 -131
  541. venv/Lib/site-packages/PyInstaller/loader/pyimod04_pywin32.py +0 -48
  542. venv/Lib/site-packages/PyInstaller/log.py +0 -56
  543. venv/Lib/site-packages/PyInstaller/utils/__init__.py +0 -1
  544. venv/Lib/site-packages/PyInstaller/utils/_gitrevision.py +0 -10
  545. venv/Lib/site-packages/PyInstaller/utils/cliutils/__init__.py +0 -1
  546. venv/Lib/site-packages/PyInstaller/utils/cliutils/archive_viewer.py +0 -271
  547. venv/Lib/site-packages/PyInstaller/utils/cliutils/bindepend.py +0 -52
  548. venv/Lib/site-packages/PyInstaller/utils/cliutils/grab_version.py +0 -51
  549. venv/Lib/site-packages/PyInstaller/utils/cliutils/makespec.py +0 -53
  550. venv/Lib/site-packages/PyInstaller/utils/cliutils/set_version.py +0 -42
  551. venv/Lib/site-packages/PyInstaller/utils/conftest.py +0 -576
  552. venv/Lib/site-packages/PyInstaller/utils/git.py +0 -59
  553. venv/Lib/site-packages/PyInstaller/utils/hooks/__init__.py +0 -1397
  554. venv/Lib/site-packages/PyInstaller/utils/hooks/conda.py +0 -400
  555. venv/Lib/site-packages/PyInstaller/utils/hooks/django.py +0 -151
  556. venv/Lib/site-packages/PyInstaller/utils/hooks/gi.py +0 -308
  557. venv/Lib/site-packages/PyInstaller/utils/hooks/qt/__init__.py +0 -845
  558. venv/Lib/site-packages/PyInstaller/utils/hooks/qt/_modules_info.py +0 -439
  559. venv/Lib/site-packages/PyInstaller/utils/hooks/tcl_tk.py +0 -253
  560. venv/Lib/site-packages/PyInstaller/utils/hooks/win32.py +0 -50
  561. venv/Lib/site-packages/PyInstaller/utils/misc.py +0 -223
  562. venv/Lib/site-packages/PyInstaller/utils/osx.py +0 -359
  563. venv/Lib/site-packages/PyInstaller/utils/run_tests.py +0 -69
  564. venv/Lib/site-packages/PyInstaller/utils/tests.py +0 -154
  565. venv/Lib/site-packages/PyInstaller/utils/win32/__init__.py +0 -1
  566. venv/Lib/site-packages/PyInstaller/utils/win32/icon.py +0 -248
  567. venv/Lib/site-packages/PyInstaller/utils/win32/versioninfo.py +0 -585
  568. venv/Lib/site-packages/PyInstaller/utils/win32/winmanifest.py +0 -1083
  569. venv/Lib/site-packages/PyInstaller/utils/win32/winresource.py +0 -245
  570. venv/Lib/site-packages/PyInstaller/utils/win32/winutils.py +0 -358
  571. venv/Lib/site-packages/PySide6/__init__.py +0 -124
  572. venv/Lib/site-packages/PySide6/_config.py +0 -16
  573. venv/Lib/site-packages/PySide6/_git_pyside_version.py +0 -19
  574. venv/Lib/site-packages/PySide6/examples/3d/simple3d/simple3d.py +0 -127
  575. venv/Lib/site-packages/PySide6/examples/axcontainer/axviewer/axviewer.py +0 -47
  576. venv/Lib/site-packages/PySide6/examples/bluetooth/btscanner/device.py +0 -129
  577. venv/Lib/site-packages/PySide6/examples/bluetooth/btscanner/main.py +0 -18
  578. venv/Lib/site-packages/PySide6/examples/bluetooth/btscanner/service.py +0 -48
  579. venv/Lib/site-packages/PySide6/examples/bluetooth/btscanner/ui_device.py +0 -90
  580. venv/Lib/site-packages/PySide6/examples/bluetooth/btscanner/ui_service.py +0 -57
  581. venv/Lib/site-packages/PySide6/examples/bluetooth/heartrate_game/bluetoothbaseclass.py +0 -40
  582. venv/Lib/site-packages/PySide6/examples/bluetooth/heartrate_game/connectionhandler.py +0 -51
  583. venv/Lib/site-packages/PySide6/examples/bluetooth/heartrate_game/devicefinder.py +0 -122
  584. venv/Lib/site-packages/PySide6/examples/bluetooth/heartrate_game/devicehandler.py +0 -307
  585. venv/Lib/site-packages/PySide6/examples/bluetooth/heartrate_game/deviceinfo.py +0 -38
  586. venv/Lib/site-packages/PySide6/examples/bluetooth/heartrate_game/heartrate_global.py +0 -6
  587. venv/Lib/site-packages/PySide6/examples/bluetooth/heartrate_game/main.py +0 -53
  588. venv/Lib/site-packages/PySide6/examples/bluetooth/heartrate_server/heartrate_server.py +0 -94
  589. venv/Lib/site-packages/PySide6/examples/charts/areachart/areachart.py +0 -67
  590. venv/Lib/site-packages/PySide6/examples/charts/audio/audio.py +0 -91
  591. venv/Lib/site-packages/PySide6/examples/charts/barchart/barchart.py +0 -69
  592. venv/Lib/site-packages/PySide6/examples/charts/callout/callout.py +0 -220
  593. venv/Lib/site-packages/PySide6/examples/charts/chartthemes/main.py +0 -369
  594. venv/Lib/site-packages/PySide6/examples/charts/chartthemes/ui_themewidget.py +0 -91
  595. venv/Lib/site-packages/PySide6/examples/charts/donutbreakdown/donutbreakdown.py +0 -148
  596. venv/Lib/site-packages/PySide6/examples/charts/dynamicspline/chart.py +0 -52
  597. venv/Lib/site-packages/PySide6/examples/charts/dynamicspline/main.py +0 -27
  598. venv/Lib/site-packages/PySide6/examples/charts/legend/legend.py +0 -225
  599. venv/Lib/site-packages/PySide6/examples/charts/lineandbar/lineandbar.py +0 -81
  600. venv/Lib/site-packages/PySide6/examples/charts/linechart/linechart.py +0 -47
  601. venv/Lib/site-packages/PySide6/examples/charts/logvalueaxis/logvalueaxis.py +0 -57
  602. venv/Lib/site-packages/PySide6/examples/charts/memoryusage/memoryusage.py +0 -92
  603. venv/Lib/site-packages/PySide6/examples/charts/modeldata/modeldata.py +0 -144
  604. venv/Lib/site-packages/PySide6/examples/charts/nesteddonuts/nesteddonuts.py +0 -100
  605. venv/Lib/site-packages/PySide6/examples/charts/percentbarchart/percentbarchart.py +0 -63
  606. venv/Lib/site-packages/PySide6/examples/charts/piechart/piechart.py +0 -50
  607. venv/Lib/site-packages/PySide6/examples/charts/pointselectionandmarkers/pointselectionandmarkers.py +0 -127
  608. venv/Lib/site-packages/PySide6/examples/charts/pointselectionandmarkers/rc_markers.py +0 -275
  609. venv/Lib/site-packages/PySide6/examples/charts/pointselectionandmarkers/utilities.py +0 -67
  610. venv/Lib/site-packages/PySide6/examples/charts/qmlpolarchart/qmlpolarchart.py +0 -28
  611. venv/Lib/site-packages/PySide6/examples/charts/temperaturerecords/temperaturerecords.py +0 -60
  612. venv/Lib/site-packages/PySide6/examples/corelib/ipc/sharedmemory/dialog.py +0 -93
  613. venv/Lib/site-packages/PySide6/examples/corelib/ipc/sharedmemory/main.py +0 -15
  614. venv/Lib/site-packages/PySide6/examples/corelib/ipc/sharedmemory/ui_dialog.py +0 -57
  615. venv/Lib/site-packages/PySide6/examples/corelib/mimetypesbrowser/mainwindow.py +0 -161
  616. venv/Lib/site-packages/PySide6/examples/corelib/mimetypesbrowser/mimetypemodel.py +0 -136
  617. venv/Lib/site-packages/PySide6/examples/corelib/mimetypesbrowser/mimetypesbrowser.py +0 -24
  618. venv/Lib/site-packages/PySide6/examples/corelib/settingseditor/settingseditor.py +0 -757
  619. venv/Lib/site-packages/PySide6/examples/corelib/threads/mandelbrot.py +0 -352
  620. venv/Lib/site-packages/PySide6/examples/datavisualization/bars3d/bars3d.py +0 -80
  621. venv/Lib/site-packages/PySide6/examples/datavisualization/minimalsurface/main.py +0 -54
  622. venv/Lib/site-packages/PySide6/examples/datavisualization/surface/main.py +0 -189
  623. venv/Lib/site-packages/PySide6/examples/datavisualization/surface/surfacegraph.py +0 -253
  624. venv/Lib/site-packages/PySide6/examples/datavisualization/surface_model_numpy/main.py +0 -189
  625. venv/Lib/site-packages/PySide6/examples/datavisualization/surface_model_numpy/surfacegraph.py +0 -295
  626. venv/Lib/site-packages/PySide6/examples/datavisualization/surface_numpy/main.py +0 -189
  627. venv/Lib/site-packages/PySide6/examples/datavisualization/surface_numpy/surfacegraph.py +0 -253
  628. venv/Lib/site-packages/PySide6/examples/dbus/listnames/listnames.py +0 -54
  629. venv/Lib/site-packages/PySide6/examples/dbus/pingpong/ping.py +0 -39
  630. venv/Lib/site-packages/PySide6/examples/dbus/pingpong/pong.py +0 -44
  631. venv/Lib/site-packages/PySide6/examples/designer/taskmenuextension/main.py +0 -16
  632. venv/Lib/site-packages/PySide6/examples/designer/taskmenuextension/registertictactoe.py +0 -13
  633. venv/Lib/site-packages/PySide6/examples/designer/taskmenuextension/tictactoe.py +0 -133
  634. venv/Lib/site-packages/PySide6/examples/designer/taskmenuextension/tictactoeplugin.py +0 -71
  635. venv/Lib/site-packages/PySide6/examples/designer/taskmenuextension/tictactoetaskmenu.py +0 -68
  636. venv/Lib/site-packages/PySide6/examples/external/matplotlib/widget3d/widget3d.py +0 -207
  637. venv/Lib/site-packages/PySide6/examples/external/matplotlib/widget_gaussian/widget_gaussian.py +0 -75
  638. venv/Lib/site-packages/PySide6/examples/external/networkx/main.py +0 -346
  639. venv/Lib/site-packages/PySide6/examples/external/opencv/webcam_pattern_detection.py +0 -170
  640. venv/Lib/site-packages/PySide6/examples/external/pandas/dataframe_model.py +0 -82
  641. venv/Lib/site-packages/PySide6/examples/external/scikit/staining_colors_separation.py +0 -147
  642. venv/Lib/site-packages/PySide6/examples/gui/analogclock/main.py +0 -77
  643. venv/Lib/site-packages/PySide6/examples/httpserver/afterrequest/main.py +0 -36
  644. venv/Lib/site-packages/PySide6/examples/multimedia/audiooutput/audiooutput.py +0 -272
  645. venv/Lib/site-packages/PySide6/examples/multimedia/audiosource/audiosource.py +0 -204
  646. venv/Lib/site-packages/PySide6/examples/multimedia/camera/camera.py +0 -172
  647. venv/Lib/site-packages/PySide6/examples/multimedia/player/player.py +0 -194
  648. venv/Lib/site-packages/PySide6/examples/network/blockingfortuneclient/blockingfortuneclient.py +0 -186
  649. venv/Lib/site-packages/PySide6/examples/network/downloader/downloader.py +0 -178
  650. venv/Lib/site-packages/PySide6/examples/network/fortuneclient/fortuneclient.py +0 -126
  651. venv/Lib/site-packages/PySide6/examples/network/fortuneserver/fortuneserver.py +0 -82
  652. venv/Lib/site-packages/PySide6/examples/network/googlesuggest/googlesuggest.py +0 -137
  653. venv/Lib/site-packages/PySide6/examples/network/googlesuggest/main.py +0 -14
  654. venv/Lib/site-packages/PySide6/examples/network/googlesuggest/searchbox.py +0 -27
  655. venv/Lib/site-packages/PySide6/examples/network/loopback/dialog.py +0 -151
  656. venv/Lib/site-packages/PySide6/examples/network/loopback/main.py +0 -15
  657. venv/Lib/site-packages/PySide6/examples/network/threadedfortuneserver/threadedfortuneserver.py +0 -116
  658. venv/Lib/site-packages/PySide6/examples/networkauth/redditclient/main.py +0 -28
  659. venv/Lib/site-packages/PySide6/examples/networkauth/redditclient/redditmodel.py +0 -70
  660. venv/Lib/site-packages/PySide6/examples/networkauth/redditclient/redditwrapper.py +0 -91
  661. venv/Lib/site-packages/PySide6/examples/opengl/contextinfo/contextinfo.py +0 -262
  662. venv/Lib/site-packages/PySide6/examples/opengl/hellogl2/hellogl2.py +0 -440
  663. venv/Lib/site-packages/PySide6/examples/opengl/textures/textures.py +0 -211
  664. venv/Lib/site-packages/PySide6/examples/opengl/textures/textures_rc.py +0 -762
  665. venv/Lib/site-packages/PySide6/examples/opengl/threadedqopenglwidget/glwidget.py +0 -79
  666. venv/Lib/site-packages/PySide6/examples/opengl/threadedqopenglwidget/main.py +0 -93
  667. venv/Lib/site-packages/PySide6/examples/opengl/threadedqopenglwidget/mainwindow.py +0 -24
  668. venv/Lib/site-packages/PySide6/examples/opengl/threadedqopenglwidget/renderer.py +0 -326
  669. venv/Lib/site-packages/PySide6/examples/pdf/quickpdfviewer/main.py +0 -49
  670. venv/Lib/site-packages/PySide6/examples/pdf/quickpdfviewer/rc_viewer.py +0 -5505
  671. venv/Lib/site-packages/PySide6/examples/pdfwidgets/pdfviewer/main.py +0 -27
  672. venv/Lib/site-packages/PySide6/examples/pdfwidgets/pdfviewer/mainwindow.py +0 -141
  673. venv/Lib/site-packages/PySide6/examples/pdfwidgets/pdfviewer/resources_rc.py +0 -3468
  674. venv/Lib/site-packages/PySide6/examples/pdfwidgets/pdfviewer/ui_mainwindow.py +0 -259
  675. venv/Lib/site-packages/PySide6/examples/pdfwidgets/pdfviewer/zoomselector.py +0 -59
  676. venv/Lib/site-packages/PySide6/examples/qml/editingmodel/main.py +0 -21
  677. venv/Lib/site-packages/PySide6/examples/qml/editingmodel/model.py +0 -157
  678. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/adding/main.py +0 -30
  679. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/adding/person.py +0 -35
  680. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/attached/birthdayparty.py +0 -63
  681. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/attached/main.py +0 -46
  682. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/attached/person.py +0 -46
  683. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/binding/birthdayparty.py +0 -83
  684. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/binding/happybirthdaysong.py +0 -47
  685. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/binding/main.py +0 -52
  686. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/binding/person.py +0 -53
  687. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/coercion/birthdayparty.py +0 -41
  688. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/coercion/main.py +0 -36
  689. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/coercion/person.py +0 -47
  690. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/default/birthdayparty.py +0 -42
  691. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/default/main.py +0 -36
  692. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/default/person.py +0 -46
  693. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/extended/main.py +0 -95
  694. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/grouped/birthdayparty.py +0 -42
  695. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/grouped/main.py +0 -43
  696. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/grouped/person.py +0 -85
  697. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/methods/birthdayparty.py +0 -47
  698. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/methods/main.py +0 -32
  699. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/methods/person.py +0 -34
  700. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/properties/birthdayparty.py +0 -41
  701. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/properties/main.py +0 -34
  702. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/properties/person.py +0 -35
  703. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/valuesource/birthdayparty.py +0 -76
  704. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/valuesource/happybirthdaysong.py +0 -47
  705. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/valuesource/main.py +0 -51
  706. venv/Lib/site-packages/PySide6/examples/qml/referenceexamples/valuesource/person.py +0 -46
  707. venv/Lib/site-packages/PySide6/examples/qml/signals/pytoqml1/main.py +0 -31
  708. venv/Lib/site-packages/PySide6/examples/qml/signals/pytoqml2/main.py +0 -54
  709. venv/Lib/site-packages/PySide6/examples/qml/signals/qmltopy1/main.py +0 -50
  710. venv/Lib/site-packages/PySide6/examples/qml/signals/qmltopy2/main.py +0 -45
  711. venv/Lib/site-packages/PySide6/examples/qml/signals/qmltopy3/main.py +0 -33
  712. venv/Lib/site-packages/PySide6/examples/qml/signals/qmltopy4/main.py +0 -33
  713. venv/Lib/site-packages/PySide6/examples/qml/textproperties/main.py +0 -76
  714. venv/Lib/site-packages/PySide6/examples/qml/tutorials/extending/chapter1-basics/basics.py +0 -68
  715. venv/Lib/site-packages/PySide6/examples/qml/tutorials/extending/chapter2-methods/methods.py +0 -75
  716. venv/Lib/site-packages/PySide6/examples/qml/tutorials/extending/chapter3-bindings/bindings.py +0 -79
  717. venv/Lib/site-packages/PySide6/examples/qml/tutorials/extending/chapter4-customPropertyTypes/customPropertyTypes.py +0 -82
  718. venv/Lib/site-packages/PySide6/examples/qml/tutorials/extending/chapter5-listproperties/listproperties.py +0 -96
  719. venv/Lib/site-packages/PySide6/examples/qml/tutorials/extending/chapter6-plugins/Charts/piechart.py +0 -40
  720. venv/Lib/site-packages/PySide6/examples/qml/tutorials/extending/chapter6-plugins/Charts/pieslice.py +0 -52
  721. venv/Lib/site-packages/PySide6/examples/qml/usingmodel/usingmodel.py +0 -70
  722. venv/Lib/site-packages/PySide6/examples/quick/models/objectlistmodel/objectlistmodel.py +0 -61
  723. venv/Lib/site-packages/PySide6/examples/quick/models/stringlistmodel/stringlistmodel.py +0 -26
  724. venv/Lib/site-packages/PySide6/examples/quick/painteditem/painteditem.py +0 -75
  725. venv/Lib/site-packages/PySide6/examples/quick/rendercontrol/rendercontrol_opengl/cuberenderer.py +0 -186
  726. venv/Lib/site-packages/PySide6/examples/quick/rendercontrol/rendercontrol_opengl/main.py +0 -20
  727. venv/Lib/site-packages/PySide6/examples/quick/rendercontrol/rendercontrol_opengl/window_singlethreaded.py +0 -275
  728. venv/Lib/site-packages/PySide6/examples/quick/scenegraph/openglunderqml/main.py +0 -27
  729. venv/Lib/site-packages/PySide6/examples/quick/scenegraph/openglunderqml/squircle.py +0 -79
  730. venv/Lib/site-packages/PySide6/examples/quick/scenegraph/openglunderqml/squirclerenderer.py +0 -99
  731. venv/Lib/site-packages/PySide6/examples/quick/shared/shared_rc.py +0 -1884
  732. venv/Lib/site-packages/PySide6/examples/quick/window/main.py +0 -37
  733. venv/Lib/site-packages/PySide6/examples/quick/window/window_rc.py +0 -328
  734. venv/Lib/site-packages/PySide6/examples/quick3d/customgeometry/examplepoint.py +0 -51
  735. venv/Lib/site-packages/PySide6/examples/quick3d/customgeometry/exampletriangle.py +0 -188
  736. venv/Lib/site-packages/PySide6/examples/quick3d/customgeometry/main.py +0 -29
  737. venv/Lib/site-packages/PySide6/examples/quick3d/customgeometry/resources_rc.py +0 -585
  738. venv/Lib/site-packages/PySide6/examples/quick3d/intro/main.py +0 -24
  739. venv/Lib/site-packages/PySide6/examples/quickcontrols2/gallery/gallery.py +0 -52
  740. venv/Lib/site-packages/PySide6/examples/quickcontrols2/gallery/rc_gallery.py +0 -7855
  741. venv/Lib/site-packages/PySide6/examples/remoteobjects/modelview/modelviewclient.py +0 -24
  742. venv/Lib/site-packages/PySide6/examples/remoteobjects/modelview/modelviewserver.py +0 -103
  743. venv/Lib/site-packages/PySide6/examples/samplebinding/main.py +0 -64
  744. venv/Lib/site-packages/PySide6/examples/serialport/terminal/console.py +0 -49
  745. venv/Lib/site-packages/PySide6/examples/serialport/terminal/main.py +0 -17
  746. venv/Lib/site-packages/PySide6/examples/serialport/terminal/mainwindow.py +0 -108
  747. venv/Lib/site-packages/PySide6/examples/serialport/terminal/rc_terminal.py +0 -4464
  748. venv/Lib/site-packages/PySide6/examples/serialport/terminal/settingsdialog.py +0 -179
  749. venv/Lib/site-packages/PySide6/examples/serialport/terminal/ui_mainwindow.py +0 -149
  750. venv/Lib/site-packages/PySide6/examples/serialport/terminal/ui_settingsdialog.py +0 -181
  751. venv/Lib/site-packages/PySide6/examples/spatialaudio/audiopanning/main.py +0 -193
  752. venv/Lib/site-packages/PySide6/examples/sql/books/bookdelegate.py +0 -94
  753. venv/Lib/site-packages/PySide6/examples/sql/books/bookwindow.py +0 -98
  754. venv/Lib/site-packages/PySide6/examples/sql/books/createdb.py +0 -96
  755. venv/Lib/site-packages/PySide6/examples/sql/books/main.py +0 -16
  756. venv/Lib/site-packages/PySide6/examples/sql/books/rc_books.py +0 -88
  757. venv/Lib/site-packages/PySide6/examples/sql/books/ui_bookwindow.py +0 -135
  758. venv/Lib/site-packages/PySide6/examples/sql/relationaltablemodel/connection.py +0 -18
  759. venv/Lib/site-packages/PySide6/examples/sql/relationaltablemodel/relationaltablemodel.py +0 -77
  760. venv/Lib/site-packages/PySide6/examples/statemachine/eventtrans/eventtrans.py +0 -57
  761. venv/Lib/site-packages/PySide6/examples/statemachine/factstates/factstates.py +0 -89
  762. venv/Lib/site-packages/PySide6/examples/statemachine/ping_pong/ping_pong.py +0 -70
  763. venv/Lib/site-packages/PySide6/examples/statemachine/rogue/rogue.py +0 -179
  764. venv/Lib/site-packages/PySide6/examples/statemachine/trafficlight/trafficlight.py +0 -117
  765. venv/Lib/site-packages/PySide6/examples/statemachine/twowaybutton/twowaybutton.py +0 -33
  766. venv/Lib/site-packages/PySide6/examples/texttospeech/hello_speak/hello_speak.py +0 -73
  767. venv/Lib/site-packages/PySide6/examples/uitools/uiloader/uiloader.py +0 -35
  768. venv/Lib/site-packages/PySide6/examples/utils/pyside_config.py +0 -338
  769. venv/Lib/site-packages/PySide6/examples/webchannel/standalone/core.py +0 -25
  770. venv/Lib/site-packages/PySide6/examples/webchannel/standalone/dialog.py +0 -32
  771. venv/Lib/site-packages/PySide6/examples/webchannel/standalone/main.py +0 -62
  772. venv/Lib/site-packages/PySide6/examples/webchannel/standalone/ui_dialog.py +0 -57
  773. venv/Lib/site-packages/PySide6/examples/webchannel/standalone/websocketclientwrapper.py +0 -35
  774. venv/Lib/site-packages/PySide6/examples/webchannel/standalone/websockettransport.py +0 -51
  775. venv/Lib/site-packages/PySide6/examples/webenginequick/nanobrowser/quicknanobrowser.py +0 -65
  776. venv/Lib/site-packages/PySide6/examples/webenginequick/nanobrowser/rc_resources.py +0 -348
  777. venv/Lib/site-packages/PySide6/examples/webenginewidgets/markdowneditor/document.py +0 -24
  778. venv/Lib/site-packages/PySide6/examples/webenginewidgets/markdowneditor/main.py +0 -20
  779. venv/Lib/site-packages/PySide6/examples/webenginewidgets/markdowneditor/mainwindow.py +0 -136
  780. venv/Lib/site-packages/PySide6/examples/webenginewidgets/markdowneditor/previewpage.py +0 -18
  781. venv/Lib/site-packages/PySide6/examples/webenginewidgets/markdowneditor/rc_markdowneditor.py +0 -852
  782. venv/Lib/site-packages/PySide6/examples/webenginewidgets/markdowneditor/ui_mainwindow.py +0 -115
  783. venv/Lib/site-packages/PySide6/examples/webenginewidgets/notifications/main.py +0 -57
  784. venv/Lib/site-packages/PySide6/examples/webenginewidgets/notifications/notificationpopup.py +0 -68
  785. venv/Lib/site-packages/PySide6/examples/webenginewidgets/simplebrowser/simplebrowser.py +0 -70
  786. venv/Lib/site-packages/PySide6/examples/webenginewidgets/tabbedbrowser/bookmarkwidget.py +0 -239
  787. venv/Lib/site-packages/PySide6/examples/webenginewidgets/tabbedbrowser/browsertabwidget.py +0 -212
  788. venv/Lib/site-packages/PySide6/examples/webenginewidgets/tabbedbrowser/downloadwidget.py +0 -111
  789. venv/Lib/site-packages/PySide6/examples/webenginewidgets/tabbedbrowser/findtoolbar.py +0 -62
  790. venv/Lib/site-packages/PySide6/examples/webenginewidgets/tabbedbrowser/historywindow.py +0 -66
  791. venv/Lib/site-packages/PySide6/examples/webenginewidgets/tabbedbrowser/main.py +0 -358
  792. venv/Lib/site-packages/PySide6/examples/webenginewidgets/tabbedbrowser/webengineview.py +0 -56
  793. venv/Lib/site-packages/PySide6/examples/widgetbinding/dialog.py +0 -32
  794. venv/Lib/site-packages/PySide6/examples/widgetbinding/main.py +0 -14
  795. venv/Lib/site-packages/PySide6/examples/widgetbinding/registerwigglywidget.py +0 -31
  796. venv/Lib/site-packages/PySide6/examples/widgetbinding/wigglywidget.py +0 -69
  797. venv/Lib/site-packages/PySide6/examples/widgets/animation/animatedtiles/animatedtiles.py +0 -230
  798. venv/Lib/site-packages/PySide6/examples/widgets/animation/animatedtiles/animatedtiles_rc.py +0 -6108
  799. venv/Lib/site-packages/PySide6/examples/widgets/animation/appchooser/appchooser.py +0 -99
  800. venv/Lib/site-packages/PySide6/examples/widgets/animation/appchooser/appchooser_rc.py +0 -1424
  801. venv/Lib/site-packages/PySide6/examples/widgets/animation/easing/easing.py +0 -221
  802. venv/Lib/site-packages/PySide6/examples/widgets/animation/easing/ui_form.py +0 -178
  803. venv/Lib/site-packages/PySide6/examples/widgets/animation/states/states.py +0 -235
  804. venv/Lib/site-packages/PySide6/examples/widgets/animation/states/states_rc.py +0 -2182
  805. venv/Lib/site-packages/PySide6/examples/widgets/codeeditor/codeeditor.py +0 -104
  806. venv/Lib/site-packages/PySide6/examples/widgets/codeeditor/main.py +0 -15
  807. venv/Lib/site-packages/PySide6/examples/widgets/desktop/screenshot/screenshot.py +0 -156
  808. venv/Lib/site-packages/PySide6/examples/widgets/desktop/systray/main.py +0 -21
  809. venv/Lib/site-packages/PySide6/examples/widgets/desktop/systray/rc_systray.py +0 -2581
  810. venv/Lib/site-packages/PySide6/examples/widgets/desktop/systray/window.py +0 -236
  811. venv/Lib/site-packages/PySide6/examples/widgets/dialogs/classwizard/classwizard.py +0 -380
  812. venv/Lib/site-packages/PySide6/examples/widgets/dialogs/classwizard/classwizard_rc.py +0 -2316
  813. venv/Lib/site-packages/PySide6/examples/widgets/dialogs/classwizard/listchooser.py +0 -173
  814. venv/Lib/site-packages/PySide6/examples/widgets/dialogs/extension/extension.py +0 -77
  815. venv/Lib/site-packages/PySide6/examples/widgets/dialogs/findfiles/findfiles.py +0 -184
  816. venv/Lib/site-packages/PySide6/examples/widgets/dialogs/licensewizard/licensewizard.py +0 -298
  817. venv/Lib/site-packages/PySide6/examples/widgets/dialogs/licensewizard/main.py +0 -15
  818. venv/Lib/site-packages/PySide6/examples/widgets/dialogs/standarddialogs/standarddialogs.py +0 -415
  819. venv/Lib/site-packages/PySide6/examples/widgets/dialogs/tabdialog/tabdialog.py +0 -178
  820. venv/Lib/site-packages/PySide6/examples/widgets/dialogs/trivialwizard/trivialwizard.py +0 -63
  821. venv/Lib/site-packages/PySide6/examples/widgets/draganddrop/draggableicons/draggableicons.py +0 -128
  822. venv/Lib/site-packages/PySide6/examples/widgets/draganddrop/draggabletext/draggabletext.py +0 -118
  823. venv/Lib/site-packages/PySide6/examples/widgets/draganddrop/draggabletext/draggabletext_rc.py +0 -55
  824. venv/Lib/site-packages/PySide6/examples/widgets/draganddrop/dropsite/droparea.py +0 -67
  825. venv/Lib/site-packages/PySide6/examples/widgets/draganddrop/dropsite/dropsitewindow.py +0 -115
  826. venv/Lib/site-packages/PySide6/examples/widgets/draganddrop/dropsite/main.py +0 -15
  827. venv/Lib/site-packages/PySide6/examples/widgets/effects/blurpicker/blureffect.py +0 -33
  828. venv/Lib/site-packages/PySide6/examples/widgets/effects/blurpicker/blurpicker.py +0 -105
  829. venv/Lib/site-packages/PySide6/examples/widgets/effects/blurpicker/main.py +0 -20
  830. venv/Lib/site-packages/PySide6/examples/widgets/effects/lighting/lighting.py +0 -108
  831. venv/Lib/site-packages/PySide6/examples/widgets/gettext/main.py +0 -60
  832. venv/Lib/site-packages/PySide6/examples/widgets/graphicsview/anchorlayout/anchorlayout.py +0 -90
  833. venv/Lib/site-packages/PySide6/examples/widgets/graphicsview/collidingmice/collidingmice.py +0 -180
  834. venv/Lib/site-packages/PySide6/examples/widgets/graphicsview/collidingmice/mice_rc.py +0 -232
  835. venv/Lib/site-packages/PySide6/examples/widgets/graphicsview/diagramscene/diagramscene.py +0 -817
  836. venv/Lib/site-packages/PySide6/examples/widgets/graphicsview/diagramscene/diagramscene_rc.py +0 -417
  837. venv/Lib/site-packages/PySide6/examples/widgets/graphicsview/dragdroprobot/dragdroprobot.py +0 -254
  838. venv/Lib/site-packages/PySide6/examples/widgets/graphicsview/dragdroprobot/dragdroprobot_rc.py +0 -975
  839. venv/Lib/site-packages/PySide6/examples/widgets/graphicsview/elasticnodes/elasticnodes.py +0 -393
  840. venv/Lib/site-packages/PySide6/examples/widgets/imageviewer/imageviewer.py +0 -277
  841. venv/Lib/site-packages/PySide6/examples/widgets/imageviewer/main.py +0 -27
  842. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/address_book/adddialogwidget.py +0 -65
  843. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/address_book/address_book.py +0 -96
  844. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/address_book/addresswidget.py +0 -214
  845. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/address_book/newaddresstab.py +0 -56
  846. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/address_book/tablemodel.py +0 -109
  847. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/basicfiltermodel/basicsortfiltermodel.py +0 -178
  848. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/dirview/dirview.py +0 -60
  849. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/editabletreemodel/main.py +0 -14
  850. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/editabletreemodel/mainwindow.py +0 -163
  851. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/editabletreemodel/treeitem.py +0 -94
  852. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/editabletreemodel/treemodel.py +0 -199
  853. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/fetchmore/fetchmore.py +0 -137
  854. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/jsonmodel/jsonmodel.py +0 -323
  855. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/spinboxdelegate/spinboxdelegate.py +0 -78
  856. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/spreadsheet/main.py +0 -19
  857. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/spreadsheet/spreadsheet.py +0 -544
  858. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/spreadsheet/spreadsheetdelegate.py +0 -67
  859. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/spreadsheet/spreadsheetitem.py +0 -122
  860. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/stardelegate/stardelegate.py +0 -136
  861. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/stardelegate/stareditor.py +0 -63
  862. venv/Lib/site-packages/PySide6/examples/widgets/itemviews/stardelegate/starrating.py +0 -62
  863. venv/Lib/site-packages/PySide6/examples/widgets/layouts/basiclayouts/basiclayouts.py +0 -99
  864. venv/Lib/site-packages/PySide6/examples/widgets/layouts/borderlayout/borderlayout.py +0 -248
  865. venv/Lib/site-packages/PySide6/examples/widgets/layouts/dynamiclayouts/dynamiclayouts.py +0 -132
  866. venv/Lib/site-packages/PySide6/examples/widgets/layouts/flowlayout/flowlayout.py +0 -120
  867. venv/Lib/site-packages/PySide6/examples/widgets/linguist/linguist_rc.py +0 -68
  868. venv/Lib/site-packages/PySide6/examples/widgets/linguist/main.py +0 -55
  869. venv/Lib/site-packages/PySide6/examples/widgets/mainwindows/application/application.py +0 -259
  870. venv/Lib/site-packages/PySide6/examples/widgets/mainwindows/application/application_rc.py +0 -608
  871. venv/Lib/site-packages/PySide6/examples/widgets/mainwindows/dockwidgets/dockwidgets.py +0 -271
  872. venv/Lib/site-packages/PySide6/examples/widgets/mainwindows/dockwidgets/dockwidgets_rc.py +0 -464
  873. venv/Lib/site-packages/PySide6/examples/widgets/mainwindows/mdi/mdi.py +0 -439
  874. venv/Lib/site-packages/PySide6/examples/widgets/mainwindows/mdi/mdi_rc.py +0 -608
  875. venv/Lib/site-packages/PySide6/examples/widgets/painting/basicdrawing/basicdrawing.py +0 -313
  876. venv/Lib/site-packages/PySide6/examples/widgets/painting/basicdrawing/basicdrawing_rc.py +0 -135
  877. venv/Lib/site-packages/PySide6/examples/widgets/painting/concentriccircles/concentriccircles.py +0 -108
  878. venv/Lib/site-packages/PySide6/examples/widgets/painting/painter/painter.py +0 -202
  879. venv/Lib/site-packages/PySide6/examples/widgets/painting/plot/plot.py +0 -66
  880. venv/Lib/site-packages/PySide6/examples/widgets/richtext/orderform/orderform.py +0 -267
  881. venv/Lib/site-packages/PySide6/examples/widgets/richtext/syntaxhighlighter/syntaxhighlighter.py +0 -109
  882. venv/Lib/site-packages/PySide6/examples/widgets/richtext/textedit/main.py +0 -42
  883. venv/Lib/site-packages/PySide6/examples/widgets/richtext/textedit/textedit.py +0 -716
  884. venv/Lib/site-packages/PySide6/examples/widgets/richtext/textedit/textedit_rc.py +0 -6029
  885. venv/Lib/site-packages/PySide6/examples/widgets/richtext/textobject/textobject.py +0 -104
  886. venv/Lib/site-packages/PySide6/examples/widgets/thread_signals/thread_signals.py +0 -62
  887. venv/Lib/site-packages/PySide6/examples/widgets/tools/regularexpression/regularexpression.py +0 -21
  888. venv/Lib/site-packages/PySide6/examples/widgets/tools/regularexpression/regularexpressiondialog.py +0 -457
  889. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/addressbook/part1.py +0 -39
  890. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/addressbook/part2.py +0 -146
  891. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/addressbook/part3.py +0 -215
  892. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/addressbook/part4.py +0 -272
  893. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/addressbook/part5.py +0 -332
  894. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/addressbook/part6.py +0 -396
  895. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/addressbook/part7.py +0 -448
  896. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/cannon/t1.py +0 -20
  897. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/cannon/t10.py +0 -152
  898. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/cannon/t11.py +0 -224
  899. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/cannon/t12.py +0 -275
  900. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/cannon/t13.py +0 -356
  901. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/cannon/t14.py +0 -409
  902. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/cannon/t2.py +0 -23
  903. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/cannon/t3.py +0 -25
  904. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/cannon/t4.py +0 -30
  905. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/cannon/t5.py +0 -41
  906. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/cannon/t6.py +0 -51
  907. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/cannon/t7.py +0 -73
  908. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/cannon/t8.py +0 -116
  909. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/cannon/t9.py +0 -122
  910. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/modelview/1_readonly.py +0 -38
  911. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/modelview/2_formatting.py +0 -65
  912. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/modelview/3_changingmodel.py +0 -52
  913. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/modelview/4_headers.py +0 -43
  914. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/modelview/5_edit.py +0 -73
  915. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/modelview/6_treeview.py +0 -41
  916. venv/Lib/site-packages/PySide6/examples/widgets/tutorials/modelview/7_selections.py +0 -70
  917. venv/Lib/site-packages/PySide6/examples/widgets/widgets/charactermap/characterwidget.py +0 -133
  918. venv/Lib/site-packages/PySide6/examples/widgets/widgets/charactermap/fontinfodialog.py +0 -47
  919. venv/Lib/site-packages/PySide6/examples/widgets/widgets/charactermap/main.py +0 -17
  920. venv/Lib/site-packages/PySide6/examples/widgets/widgets/charactermap/mainwindow.py +0 -167
  921. venv/Lib/site-packages/PySide6/examples/widgets/widgets/digitalclock/digitalclock.py +0 -41
  922. venv/Lib/site-packages/PySide6/examples/widgets/widgets/tetrix/tetrix.py +0 -471
  923. venv/Lib/site-packages/PySide6/examples/widgets/widgetsgallery/main.py +0 -17
  924. venv/Lib/site-packages/PySide6/examples/widgets/widgetsgallery/widgetgallery.py +0 -402
  925. venv/Lib/site-packages/PySide6/examples/xml/dombookmarks/dombookmarks.py +0 -228
  926. venv/Lib/site-packages/PySide6/scripts/deploy/__init__.py +0 -7
  927. venv/Lib/site-packages/PySide6/scripts/deploy/commands.py +0 -31
  928. venv/Lib/site-packages/PySide6/scripts/deploy/config.py +0 -226
  929. venv/Lib/site-packages/PySide6/scripts/deploy/nuitka_helper.py +0 -51
  930. venv/Lib/site-packages/PySide6/scripts/deploy/python_helper.py +0 -83
  931. venv/Lib/site-packages/PySide6/scripts/deploy.py +0 -190
  932. venv/Lib/site-packages/PySide6/scripts/metaobjectdump.py +0 -406
  933. venv/Lib/site-packages/PySide6/scripts/project/__init__.py +0 -25
  934. venv/Lib/site-packages/PySide6/scripts/project/newproject.py +0 -165
  935. venv/Lib/site-packages/PySide6/scripts/project/project_data.py +0 -215
  936. venv/Lib/site-packages/PySide6/scripts/project/utils.py +0 -105
  937. venv/Lib/site-packages/PySide6/scripts/project.py +0 -240
  938. venv/Lib/site-packages/PySide6/scripts/pyside_tool.py +0 -201
  939. venv/Lib/site-packages/PySide6/scripts/qml.py +0 -246
  940. venv/Lib/site-packages/PySide6/scripts/qtpy2cpp.py +0 -62
  941. venv/Lib/site-packages/PySide6/scripts/qtpy2cpp_lib/astdump.py +0 -111
  942. venv/Lib/site-packages/PySide6/scripts/qtpy2cpp_lib/formatter.py +0 -265
  943. venv/Lib/site-packages/PySide6/scripts/qtpy2cpp_lib/nodedump.py +0 -50
  944. venv/Lib/site-packages/PySide6/scripts/qtpy2cpp_lib/qt.py +0 -56
  945. venv/Lib/site-packages/PySide6/scripts/qtpy2cpp_lib/tokenizer.py +0 -55
  946. venv/Lib/site-packages/PySide6/scripts/qtpy2cpp_lib/visitor.py +0 -443
  947. venv/Lib/site-packages/PySide6/support/__init__.py +0 -6
  948. venv/Lib/site-packages/PySide6/support/deprecated.py +0 -97
  949. venv/Lib/site-packages/PySide6/support/generate_pyi.py +0 -92
  950. venv/Lib/site-packages/_distutils_hack/__init__.py +0 -222
  951. venv/Lib/site-packages/_distutils_hack/override.py +0 -1
  952. venv/Lib/site-packages/_pyinstaller_hooks_contrib/__init__.py +0 -15
  953. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/__init__.py +0 -23
  954. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/pre_find_module_path/__init__.py +0 -11
  955. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/pre_safe_import_module/__init__.py +0 -11
  956. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/pre_safe_import_module/hook-tensorflow.py +0 -23
  957. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/pre_safe_import_module/hook-win32com.py +0 -47
  958. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/rthooks/__init__.py +0 -26
  959. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/rthooks/pyi_rth_enchant.py +0 -22
  960. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/rthooks/pyi_rth_nltk.py +0 -18
  961. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/rthooks/pyi_rth_osgeo.py +0 -32
  962. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/rthooks/pyi_rth_pygraphviz.py +0 -31
  963. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/rthooks/pyi_rth_pyproj.py +0 -26
  964. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/rthooks/pyi_rth_pyqtgraph_multiprocess.py +0 -51
  965. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/rthooks/pyi_rth_pythoncom.py +0 -24
  966. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/rthooks/pyi_rth_pywintypes.py +0 -24
  967. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/rthooks/pyi_rth_traitlets.py +0 -24
  968. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/rthooks/pyi_rth_usb.py +0 -74
  969. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/__init__.py +0 -31
  970. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-BTrees.py +0 -17
  971. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-Crypto.py +0 -63
  972. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-Cryptodome.py +0 -45
  973. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-HtmlTestRunner.py +0 -17
  974. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-IPython.py +0 -34
  975. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-OpenGL.py +0 -70
  976. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-OpenGL_accelerate.py +0 -25
  977. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-Xlib.py +0 -16
  978. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-_mssql.py +0 -13
  979. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-_mysql.py +0 -18
  980. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-accessible_output2.py +0 -19
  981. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-adbutils.py +0 -16
  982. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-adios.py +0 -19
  983. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-afmformats.py +0 -17
  984. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-aliyunsdkcore.py +0 -14
  985. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-altair.py +0 -15
  986. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-amazonproduct.py +0 -29
  987. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-anyio.py +0 -20
  988. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-appdirs.py +0 -23
  989. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-appy.pod.py +0 -17
  990. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-apscheduler.py +0 -28
  991. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-argon2.py +0 -13
  992. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-astor.py +0 -15
  993. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-astroid.py +0 -48
  994. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-astropy.py +0 -42
  995. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-av.py +0 -35
  996. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-avro.py +0 -28
  997. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-azurerm.py +0 -22
  998. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-backports.zoneinfo.py +0 -18
  999. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-bacon.py +0 -49
  1000. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-bcrypt.py +0 -19
  1001. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-bleak.py +0 -19
  1002. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-blspy.py +0 -36
  1003. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-bokeh.py +0 -24
  1004. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-boto.py +0 -25
  1005. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-boto3.py +0 -29
  1006. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-botocore.py +0 -30
  1007. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-branca.py +0 -15
  1008. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-cairocffi.py +0 -40
  1009. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-cairosvg.py +0 -40
  1010. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-cassandra.py +0 -22
  1011. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-certifi.py +0 -21
  1012. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-cf_units.py +0 -16
  1013. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-cftime.py +0 -21
  1014. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-charset_normalizer.py +0 -16
  1015. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-cloudscraper.py +0 -15
  1016. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-clr.py +0 -62
  1017. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-clr_loader.py +0 -24
  1018. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-compliance_checker.py +0 -22
  1019. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-countrycode.py +0 -15
  1020. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-countryinfo.py +0 -15
  1021. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-cryptography.py +0 -44
  1022. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-cv2.py +0 -74
  1023. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-cx_Oracle.py +0 -15
  1024. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-cytoolz.itertoolz.py +0 -16
  1025. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-dash.py +0 -15
  1026. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-dash_bootstrap_components.py +0 -15
  1027. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-dash_core_components.py +0 -15
  1028. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-dash_html_components.py +0 -15
  1029. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-dash_renderer.py +0 -15
  1030. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-dash_table.py +0 -15
  1031. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-dash_uploader.py +0 -15
  1032. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-dask.py +0 -18
  1033. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-dateparser.utils.strptime.py +0 -17
  1034. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-dclab.py +0 -17
  1035. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-discid.py +0 -41
  1036. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-distorm3.py +0 -20
  1037. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-dns.rdata.py +0 -17
  1038. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-docutils.py +0 -20
  1039. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-docx.py +0 -17
  1040. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-docx2pdf.py +0 -20
  1041. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-dynaconf.py +0 -15
  1042. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-easyocr.py +0 -18
  1043. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-eel.py +0 -16
  1044. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-enchant.py +0 -64
  1045. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-enzyme.parsers.ebml.core.py +0 -26
  1046. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-eth_abi.py +0 -15
  1047. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-eth_account.py +0 -15
  1048. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-eth_hash.py +0 -16
  1049. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-eth_keyfile.py +0 -15
  1050. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-eth_utils.py +0 -15
  1051. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-exchangelib.py +0 -12
  1052. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-fabric.py +0 -22
  1053. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-faker.py +0 -19
  1054. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-ffpyplayer.py +0 -19
  1055. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-fiona.py +0 -17
  1056. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-flask_compress.py +0 -15
  1057. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-flask_restx.py +0 -13
  1058. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-flex.py +0 -17
  1059. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-flirpy.py +0 -19
  1060. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-fmpy.py +0 -27
  1061. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-folium.py +0 -16
  1062. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-gadfly.py +0 -14
  1063. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-gcloud.py +0 -15
  1064. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-geopandas.py +0 -17
  1065. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-gitlab.py +0 -22
  1066. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-gmplot.py +0 -15
  1067. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-gooey.py +0 -19
  1068. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-google.api.py +0 -14
  1069. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-google.api_core.py +0 -14
  1070. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-google.cloud.bigquery.py +0 -16
  1071. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-google.cloud.kms_v1.py +0 -18
  1072. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-google.cloud.pubsub_v1.py +0 -14
  1073. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-google.cloud.py +0 -14
  1074. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-google.cloud.speech.py +0 -14
  1075. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-google.cloud.storage.py +0 -14
  1076. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-google.cloud.translate.py +0 -14
  1077. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-googleapiclient.model.py +0 -20
  1078. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-great_expectations.py +0 -15
  1079. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-grpc.py +0 -14
  1080. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-gst._gst.py +0 -48
  1081. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-gtk.py +0 -17
  1082. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-h5py.py +0 -19
  1083. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-hdf5plugin.py +0 -17
  1084. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-httplib2.py +0 -17
  1085. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-humanize.py +0 -24
  1086. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-hydra.py +0 -19
  1087. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-ijson.py +0 -14
  1088. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-imageio.py +0 -21
  1089. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-imageio_ffmpeg.py +0 -17
  1090. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-iminuit.py +0 -25
  1091. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-jaraco.text.py +0 -17
  1092. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-jedi.py +0 -17
  1093. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-jinja2.py +0 -14
  1094. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-jinxed.py +0 -15
  1095. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-jira.py +0 -20
  1096. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-jsonpath_rw_ext.py +0 -15
  1097. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-jsonrpcserver.py +0 -17
  1098. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-jsonschema.py +0 -18
  1099. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-jupyterlab.py +0 -15
  1100. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-kaleido.py +0 -15
  1101. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-kinterbasdb.py +0 -20
  1102. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-langcodes.py +0 -15
  1103. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-langdetect.py +0 -15
  1104. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-lark.py +0 -15
  1105. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-ldfparser.py +0 -15
  1106. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-lensfunpy.py +0 -16
  1107. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-libaudioverse.py +0 -19
  1108. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-lightgbm.py +0 -27
  1109. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-limits.py +0 -15
  1110. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-llvmlite.py +0 -21
  1111. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-logilab.py +0 -26
  1112. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-lxml.etree.py +0 -14
  1113. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-lxml.isoschematron.py +0 -17
  1114. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-lxml.objectify.py +0 -14
  1115. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-lxml.py +0 -20
  1116. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-lz4.py +0 -15
  1117. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-magic.py +0 -18
  1118. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-mako.codegen.py +0 -20
  1119. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-mariadb.py +0 -26
  1120. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-markdown.py +0 -28
  1121. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-metpy.py +0 -21
  1122. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-migrate.py +0 -19
  1123. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-mimesis.py +0 -17
  1124. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-mnemonic.py +0 -15
  1125. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-mpl_toolkits.basemap.py +0 -38
  1126. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-msoffcrypto.py +0 -18
  1127. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-nacl.py +0 -33
  1128. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-names.py +0 -18
  1129. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-nanite.py +0 -17
  1130. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-nbconvert.py +0 -18
  1131. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-nbdime.py +0 -15
  1132. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-nbformat.py +0 -15
  1133. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-ncclient.py +0 -27
  1134. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-netCDF4.py +0 -22
  1135. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-nltk.py +0 -28
  1136. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-nnpy.py +0 -19
  1137. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-notebook.py +0 -27
  1138. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-numba.py +0 -20
  1139. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-numcodecs.py +0 -14
  1140. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-office365.py +0 -19
  1141. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-openpyxl.py +0 -18
  1142. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-orjson.py +0 -21
  1143. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-osgeo.py +0 -82
  1144. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pandas_flavor.py +0 -15
  1145. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-panel.py +0 -18
  1146. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-parsedatetime.py +0 -29
  1147. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-parso.py +0 -14
  1148. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-passlib.py +0 -21
  1149. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-paste.exceptions.reporter.py +0 -20
  1150. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-patsy.py +0 -13
  1151. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pdfminer.py +0 -15
  1152. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pendulum.py +0 -20
  1153. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-phonenumbers.py +0 -19
  1154. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pingouin.py +0 -14
  1155. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pint.py +0 -18
  1156. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pinyin.py +0 -20
  1157. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-platformdirs.py +0 -27
  1158. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-plotly.py +0 -17
  1159. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-prettytable.py +0 -14
  1160. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-psychopy.py +0 -16
  1161. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-psycopg2.py +0 -14
  1162. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-publicsuffix2.py +0 -15
  1163. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pubsub.core.py +0 -15
  1164. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-puremagic.py +0 -15
  1165. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-py.py +0 -15
  1166. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyarrow.py +0 -24
  1167. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pycountry.py +0 -18
  1168. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pycparser.py +0 -23
  1169. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pydantic.py +0 -44
  1170. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pydivert.py +0 -15
  1171. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyexcel-io.py +0 -17
  1172. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyexcel-ods.py +0 -17
  1173. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyexcel-ods3.py +0 -17
  1174. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyexcel-odsr.py +0 -17
  1175. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyexcel-xls.py +0 -17
  1176. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyexcel-xlsx.py +0 -17
  1177. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyexcel-xlsxw.py +0 -17
  1178. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyexcel.py +0 -30
  1179. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyexcel_io.py +0 -27
  1180. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyexcel_ods.py +0 -17
  1181. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyexcel_ods3.py +0 -17
  1182. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyexcel_odsr.py +0 -17
  1183. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyexcel_xls.py +0 -17
  1184. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyexcel_xlsx.py +0 -17
  1185. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyexcel_xlsxw.py +0 -17
  1186. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyexcelerate.Writer.py +0 -14
  1187. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pygraphviz.py +0 -66
  1188. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pylint.py +0 -74
  1189. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pymediainfo.py +0 -43
  1190. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pymssql.py +0 -20
  1191. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pynput.py +0 -14
  1192. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyodbc.py +0 -21
  1193. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyopencl.py +0 -17
  1194. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pypemicro.py +0 -43
  1195. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyphen.py +0 -15
  1196. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyppeteer.py +0 -16
  1197. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyproj.py +0 -63
  1198. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pypsexec.py +0 -18
  1199. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pypylon.py +0 -40
  1200. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyqtgraph.py +0 -40
  1201. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyshark.py +0 -24
  1202. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pysnmp.py +0 -16
  1203. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pystray.py +0 -16
  1204. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pytest.py +0 -19
  1205. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pythoncom.py +0 -31
  1206. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyttsx.py +0 -26
  1207. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyttsx3.py +0 -30
  1208. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyviz_comms.py +0 -15
  1209. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pyvjoy.py +0 -14
  1210. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pywintypes.py +0 -31
  1211. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-pywt.py +0 -21
  1212. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-qtmodern.py +0 -15
  1213. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-radicale.py +0 -16
  1214. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-raven.py +0 -14
  1215. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-rawpy.py +0 -16
  1216. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-rdflib.py +0 -16
  1217. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-redmine.py +0 -14
  1218. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-regex.py +0 -14
  1219. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-reportlab.lib.utils.py +0 -17
  1220. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-reportlab.pdfbase._fontdata.py +0 -18
  1221. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-resampy.py +0 -17
  1222. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-rpy2.py +0 -19
  1223. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-rtree.py +0 -18
  1224. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-sacremoses.py +0 -15
  1225. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-selenium.py +0 -16
  1226. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-sentry_sdk.py +0 -40
  1227. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-shapely.py +0 -106
  1228. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-shotgun_api3.py +0 -23
  1229. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-skimage.feature.py +0 -15
  1230. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-skimage.filters.py +0 -18
  1231. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-skimage.graph.py +0 -15
  1232. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-skimage.io.py +0 -20
  1233. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-skimage.transform.py +0 -21
  1234. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-sklearn.cluster.py +0 -18
  1235. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-sklearn.linear_model.py +0 -18
  1236. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-sklearn.metrics.cluster.py +0 -27
  1237. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-sklearn.metrics.pairwise.py +0 -21
  1238. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-sklearn.metrics.py +0 -19
  1239. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-sklearn.neighbors.py +0 -36
  1240. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-sklearn.py +0 -16
  1241. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-sklearn.tree.py +0 -13
  1242. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-sklearn.utils.py +0 -13
  1243. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-sound_lib.py +0 -19
  1244. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-sounddevice.py +0 -63
  1245. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-soundfile.py +0 -63
  1246. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-spacy.py +0 -19
  1247. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-speech_recognition.py +0 -18
  1248. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-spiceypy.py +0 -18
  1249. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-spnego.py +0 -15
  1250. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-srsly.msgpack._packer.py +0 -17
  1251. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-statsmodels.tsa.statespace.py +0 -16
  1252. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-stdnum.py +0 -15
  1253. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-storm.database.py +0 -23
  1254. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-sunpy.py +0 -20
  1255. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-swagger_spec_validator.py +0 -15
  1256. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-tableauhyperapi.py +0 -15
  1257. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-tables.py +0 -15
  1258. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-tcod.py +0 -20
  1259. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-tensorflow.py +0 -79
  1260. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-text_unidecode.py +0 -27
  1261. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-textdistance.py +0 -17
  1262. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-thinc.backends.numpy_ops.py +0 -17
  1263. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-thinc.py +0 -18
  1264. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-timezonefinder.py +0 -15
  1265. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-tinycss2.py +0 -23
  1266. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-torch.py +0 -15
  1267. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-torchvision.ops.py +0 -15
  1268. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-trimesh.py +0 -17
  1269. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-ttkthemes.py +0 -57
  1270. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-ttkwidgets.py +0 -39
  1271. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-tzdata.py +0 -22
  1272. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-u1db.py +0 -32
  1273. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-umap.py +0 -16
  1274. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-unidecode.py +0 -21
  1275. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-uniseg.py +0 -16
  1276. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-usb.py +0 -89
  1277. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-uvicorn.py +0 -15
  1278. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-uvloop.py +0 -19
  1279. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-vtkpython.py +0 -18
  1280. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-wavefile.py +0 -19
  1281. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-weasyprint.py +0 -85
  1282. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-web3.py +0 -15
  1283. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-webassets.py +0 -14
  1284. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-webrtcvad.py +0 -15
  1285. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-websockets.py +0 -16
  1286. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-webview.py +0 -20
  1287. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-win32com.py +0 -21
  1288. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-workflow.py +0 -14
  1289. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-wx.lib.activex.py +0 -17
  1290. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-wx.lib.pubsub.py +0 -28
  1291. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-wx.xrc.py +0 -13
  1292. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-xml.dom.html.HTMLDocument.py +0 -68
  1293. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-xml.sax.saxexts.py +0 -26
  1294. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-xmldiff.py +0 -15
  1295. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-xsge_gui.py +0 -17
  1296. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-yt_dlp.py +0 -17
  1297. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-zeep.py +0 -17
  1298. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-zmq.py +0 -65
  1299. venv/Lib/site-packages/_pyinstaller_hooks_contrib/hooks/stdhooks/hook-zoneinfo.py +0 -18
  1300. venv/Lib/site-packages/_pyinstaller_hooks_contrib/tests/__init__.py +0 -28
  1301. venv/Lib/site-packages/_pyinstaller_hooks_contrib/tests/conftest.py +0 -13
  1302. venv/Lib/site-packages/_pyinstaller_hooks_contrib/tests/scripts/pyi_lib_boto.py +0 -45
  1303. venv/Lib/site-packages/_pyinstaller_hooks_contrib/tests/scripts/pyi_lib_enchant.py +0 -43
  1304. venv/Lib/site-packages/_pyinstaller_hooks_contrib/tests/scripts/pyi_lib_pycparser.py +0 -54
  1305. venv/Lib/site-packages/_pyinstaller_hooks_contrib/tests/scripts/pyi_lib_tensorflow_layer.py +0 -36
  1306. venv/Lib/site-packages/_pyinstaller_hooks_contrib/tests/scripts/pyi_lib_tensorflow_mnist.py +0 -51
  1307. venv/Lib/site-packages/_pyinstaller_hooks_contrib/tests/test_libraries.py +0 -1479
  1308. venv/Lib/site-packages/_virtualenv.py +0 -130
  1309. venv/Lib/site-packages/altgraph/Dot.py +0 -321
  1310. venv/Lib/site-packages/altgraph/Graph.py +0 -682
  1311. venv/Lib/site-packages/altgraph/GraphAlgo.py +0 -171
  1312. venv/Lib/site-packages/altgraph/GraphStat.py +0 -73
  1313. venv/Lib/site-packages/altgraph/GraphUtil.py +0 -139
  1314. venv/Lib/site-packages/altgraph/ObjectGraph.py +0 -212
  1315. venv/Lib/site-packages/altgraph/__init__.py +0 -148
  1316. venv/Lib/site-packages/bleach/__init__.py +0 -125
  1317. venv/Lib/site-packages/bleach/_vendor/html5lib/__init__.py +0 -35
  1318. venv/Lib/site-packages/bleach/_vendor/html5lib/_ihatexml.py +0 -289
  1319. venv/Lib/site-packages/bleach/_vendor/html5lib/_inputstream.py +0 -918
  1320. venv/Lib/site-packages/bleach/_vendor/html5lib/_tokenizer.py +0 -1735
  1321. venv/Lib/site-packages/bleach/_vendor/html5lib/_trie/__init__.py +0 -5
  1322. venv/Lib/site-packages/bleach/_vendor/html5lib/_trie/_base.py +0 -40
  1323. venv/Lib/site-packages/bleach/_vendor/html5lib/_trie/py.py +0 -67
  1324. venv/Lib/site-packages/bleach/_vendor/html5lib/_utils.py +0 -159
  1325. venv/Lib/site-packages/bleach/_vendor/html5lib/constants.py +0 -2946
  1326. venv/Lib/site-packages/bleach/_vendor/html5lib/filters/__init__.py +0 -0
  1327. venv/Lib/site-packages/bleach/_vendor/html5lib/filters/alphabeticalattributes.py +0 -29
  1328. venv/Lib/site-packages/bleach/_vendor/html5lib/filters/base.py +0 -12
  1329. venv/Lib/site-packages/bleach/_vendor/html5lib/filters/inject_meta_charset.py +0 -73
  1330. venv/Lib/site-packages/bleach/_vendor/html5lib/filters/lint.py +0 -93
  1331. venv/Lib/site-packages/bleach/_vendor/html5lib/filters/optionaltags.py +0 -207
  1332. venv/Lib/site-packages/bleach/_vendor/html5lib/filters/sanitizer.py +0 -916
  1333. venv/Lib/site-packages/bleach/_vendor/html5lib/filters/whitespace.py +0 -38
  1334. venv/Lib/site-packages/bleach/_vendor/html5lib/html5parser.py +0 -2795
  1335. venv/Lib/site-packages/bleach/_vendor/html5lib/serializer.py +0 -409
  1336. venv/Lib/site-packages/bleach/_vendor/html5lib/treeadapters/__init__.py +0 -30
  1337. venv/Lib/site-packages/bleach/_vendor/html5lib/treeadapters/genshi.py +0 -54
  1338. venv/Lib/site-packages/bleach/_vendor/html5lib/treeadapters/sax.py +0 -50
  1339. venv/Lib/site-packages/bleach/_vendor/html5lib/treebuilders/__init__.py +0 -88
  1340. venv/Lib/site-packages/bleach/_vendor/html5lib/treebuilders/base.py +0 -417
  1341. venv/Lib/site-packages/bleach/_vendor/html5lib/treebuilders/dom.py +0 -239
  1342. venv/Lib/site-packages/bleach/_vendor/html5lib/treebuilders/etree.py +0 -343
  1343. venv/Lib/site-packages/bleach/_vendor/html5lib/treebuilders/etree_lxml.py +0 -392
  1344. venv/Lib/site-packages/bleach/_vendor/html5lib/treewalkers/__init__.py +0 -154
  1345. venv/Lib/site-packages/bleach/_vendor/html5lib/treewalkers/base.py +0 -252
  1346. venv/Lib/site-packages/bleach/_vendor/html5lib/treewalkers/dom.py +0 -43
  1347. venv/Lib/site-packages/bleach/_vendor/html5lib/treewalkers/etree.py +0 -131
  1348. venv/Lib/site-packages/bleach/_vendor/html5lib/treewalkers/etree_lxml.py +0 -215
  1349. venv/Lib/site-packages/bleach/_vendor/html5lib/treewalkers/genshi.py +0 -69
  1350. venv/Lib/site-packages/bleach/_vendor/parse.py +0 -1078
  1351. venv/Lib/site-packages/bleach/callbacks.py +0 -32
  1352. venv/Lib/site-packages/bleach/css_sanitizer.py +0 -104
  1353. venv/Lib/site-packages/bleach/html5lib_shim.py +0 -741
  1354. venv/Lib/site-packages/bleach/linkifier.py +0 -633
  1355. venv/Lib/site-packages/bleach/parse_shim.py +0 -1
  1356. venv/Lib/site-packages/bleach/sanitizer.py +0 -638
  1357. venv/Lib/site-packages/build/__init__.py +0 -511
  1358. venv/Lib/site-packages/build/__main__.py +0 -399
  1359. venv/Lib/site-packages/build/env.py +0 -343
  1360. venv/Lib/site-packages/build/util.py +0 -61
  1361. venv/Lib/site-packages/certifi/__init__.py +0 -4
  1362. venv/Lib/site-packages/certifi/__main__.py +0 -12
  1363. venv/Lib/site-packages/certifi/core.py +0 -108
  1364. venv/Lib/site-packages/charset_normalizer/__init__.py +0 -45
  1365. venv/Lib/site-packages/charset_normalizer/api.py +0 -553
  1366. venv/Lib/site-packages/charset_normalizer/assets/__init__.py +0 -1440
  1367. venv/Lib/site-packages/charset_normalizer/cd.py +0 -391
  1368. venv/Lib/site-packages/charset_normalizer/cli/__init__.py +0 -0
  1369. venv/Lib/site-packages/charset_normalizer/cli/normalizer.py +0 -298
  1370. venv/Lib/site-packages/charset_normalizer/constant.py +0 -495
  1371. venv/Lib/site-packages/charset_normalizer/legacy.py +0 -43
  1372. venv/Lib/site-packages/charset_normalizer/md.py +0 -571
  1373. venv/Lib/site-packages/charset_normalizer/models.py +0 -337
  1374. venv/Lib/site-packages/charset_normalizer/utils.py +0 -418
  1375. venv/Lib/site-packages/charset_normalizer/version.py +0 -6
  1376. venv/Lib/site-packages/colorama/__init__.py +0 -7
  1377. venv/Lib/site-packages/colorama/ansi.py +0 -102
  1378. venv/Lib/site-packages/colorama/ansitowin32.py +0 -277
  1379. venv/Lib/site-packages/colorama/initialise.py +0 -121
  1380. venv/Lib/site-packages/colorama/tests/__init__.py +0 -1
  1381. venv/Lib/site-packages/colorama/tests/ansi_test.py +0 -76
  1382. venv/Lib/site-packages/colorama/tests/ansitowin32_test.py +0 -294
  1383. venv/Lib/site-packages/colorama/tests/initialise_test.py +0 -189
  1384. venv/Lib/site-packages/colorama/tests/isatty_test.py +0 -57
  1385. venv/Lib/site-packages/colorama/tests/utils.py +0 -49
  1386. venv/Lib/site-packages/colorama/tests/winterm_test.py +0 -131
  1387. venv/Lib/site-packages/colorama/win32.py +0 -180
  1388. venv/Lib/site-packages/colorama/winterm.py +0 -195
  1389. venv/Lib/site-packages/commonmark/__init__.py +0 -8
  1390. venv/Lib/site-packages/commonmark/blocks.py +0 -908
  1391. venv/Lib/site-packages/commonmark/cmark.py +0 -53
  1392. venv/Lib/site-packages/commonmark/common.py +0 -113
  1393. venv/Lib/site-packages/commonmark/dump.py +0 -108
  1394. venv/Lib/site-packages/commonmark/entitytrans.py +0 -2353
  1395. venv/Lib/site-packages/commonmark/inlines.py +0 -882
  1396. venv/Lib/site-packages/commonmark/main.py +0 -41
  1397. venv/Lib/site-packages/commonmark/node.py +0 -179
  1398. venv/Lib/site-packages/commonmark/normalize_reference.py +0 -165
  1399. venv/Lib/site-packages/commonmark/render/__init__.py +0 -0
  1400. venv/Lib/site-packages/commonmark/render/html.py +0 -228
  1401. venv/Lib/site-packages/commonmark/render/renderer.py +0 -43
  1402. venv/Lib/site-packages/commonmark/render/rst.py +0 -159
  1403. venv/Lib/site-packages/commonmark/tests/__init__.py +0 -0
  1404. venv/Lib/site-packages/commonmark/tests/rst_tests.py +0 -172
  1405. venv/Lib/site-packages/commonmark/tests/run_spec_tests.py +0 -242
  1406. venv/Lib/site-packages/commonmark/tests/unit_tests.py +0 -157
  1407. venv/Lib/site-packages/docutils/__init__.py +0 -284
  1408. venv/Lib/site-packages/docutils/__main__.py +0 -96
  1409. venv/Lib/site-packages/docutils/core.py +0 -714
  1410. venv/Lib/site-packages/docutils/examples.py +0 -99
  1411. venv/Lib/site-packages/docutils/frontend.py +0 -951
  1412. venv/Lib/site-packages/docutils/io.py +0 -611
  1413. venv/Lib/site-packages/docutils/languages/__init__.py +0 -83
  1414. venv/Lib/site-packages/docutils/languages/af.py +0 -58
  1415. venv/Lib/site-packages/docutils/languages/ar.py +0 -60
  1416. venv/Lib/site-packages/docutils/languages/ca.py +0 -60
  1417. venv/Lib/site-packages/docutils/languages/cs.py +0 -60
  1418. venv/Lib/site-packages/docutils/languages/da.py +0 -61
  1419. venv/Lib/site-packages/docutils/languages/de.py +0 -58
  1420. venv/Lib/site-packages/docutils/languages/en.py +0 -60
  1421. venv/Lib/site-packages/docutils/languages/eo.py +0 -61
  1422. venv/Lib/site-packages/docutils/languages/es.py +0 -58
  1423. venv/Lib/site-packages/docutils/languages/fa.py +0 -60
  1424. venv/Lib/site-packages/docutils/languages/fi.py +0 -60
  1425. venv/Lib/site-packages/docutils/languages/fr.py +0 -58
  1426. venv/Lib/site-packages/docutils/languages/gl.py +0 -62
  1427. venv/Lib/site-packages/docutils/languages/he.py +0 -61
  1428. venv/Lib/site-packages/docutils/languages/it.py +0 -58
  1429. venv/Lib/site-packages/docutils/languages/ja.py +0 -60
  1430. venv/Lib/site-packages/docutils/languages/ko.py +0 -60
  1431. venv/Lib/site-packages/docutils/languages/lt.py +0 -60
  1432. venv/Lib/site-packages/docutils/languages/lv.py +0 -59
  1433. venv/Lib/site-packages/docutils/languages/nl.py +0 -60
  1434. venv/Lib/site-packages/docutils/languages/pl.py +0 -60
  1435. venv/Lib/site-packages/docutils/languages/pt_br.py +0 -60
  1436. venv/Lib/site-packages/docutils/languages/ru.py +0 -58
  1437. venv/Lib/site-packages/docutils/languages/sk.py +0 -58
  1438. venv/Lib/site-packages/docutils/languages/sv.py +0 -59
  1439. venv/Lib/site-packages/docutils/languages/zh_cn.py +0 -66
  1440. venv/Lib/site-packages/docutils/languages/zh_tw.py +0 -65
  1441. venv/Lib/site-packages/docutils/nodes.py +0 -2314
  1442. venv/Lib/site-packages/docutils/parsers/__init__.py +0 -92
  1443. venv/Lib/site-packages/docutils/parsers/commonmark_wrapper.py +0 -56
  1444. venv/Lib/site-packages/docutils/parsers/null.py +0 -20
  1445. venv/Lib/site-packages/docutils/parsers/recommonmark_wrapper.py +0 -136
  1446. venv/Lib/site-packages/docutils/parsers/rst/__init__.py +0 -414
  1447. venv/Lib/site-packages/docutils/parsers/rst/directives/__init__.py +0 -460
  1448. venv/Lib/site-packages/docutils/parsers/rst/directives/admonitions.py +0 -99
  1449. venv/Lib/site-packages/docutils/parsers/rst/directives/body.py +0 -304
  1450. venv/Lib/site-packages/docutils/parsers/rst/directives/html.py +0 -21
  1451. venv/Lib/site-packages/docutils/parsers/rst/directives/images.py +0 -163
  1452. venv/Lib/site-packages/docutils/parsers/rst/directives/misc.py +0 -635
  1453. venv/Lib/site-packages/docutils/parsers/rst/directives/parts.py +0 -126
  1454. venv/Lib/site-packages/docutils/parsers/rst/directives/references.py +0 -29
  1455. venv/Lib/site-packages/docutils/parsers/rst/directives/tables.py +0 -513
  1456. venv/Lib/site-packages/docutils/parsers/rst/languages/__init__.py +0 -40
  1457. venv/Lib/site-packages/docutils/parsers/rst/languages/af.py +0 -107
  1458. venv/Lib/site-packages/docutils/parsers/rst/languages/ar.py +0 -99
  1459. venv/Lib/site-packages/docutils/parsers/rst/languages/ca.py +0 -126
  1460. venv/Lib/site-packages/docutils/parsers/rst/languages/cs.py +0 -110
  1461. venv/Lib/site-packages/docutils/parsers/rst/languages/da.py +0 -113
  1462. venv/Lib/site-packages/docutils/parsers/rst/languages/de.py +0 -106
  1463. venv/Lib/site-packages/docutils/parsers/rst/languages/en.py +0 -111
  1464. venv/Lib/site-packages/docutils/parsers/rst/languages/eo.py +0 -118
  1465. venv/Lib/site-packages/docutils/parsers/rst/languages/es.py +0 -122
  1466. venv/Lib/site-packages/docutils/parsers/rst/languages/fa.py +0 -102
  1467. venv/Lib/site-packages/docutils/parsers/rst/languages/fi.py +0 -98
  1468. venv/Lib/site-packages/docutils/parsers/rst/languages/fr.py +0 -104
  1469. venv/Lib/site-packages/docutils/parsers/rst/languages/gl.py +0 -111
  1470. venv/Lib/site-packages/docutils/parsers/rst/languages/he.py +0 -109
  1471. venv/Lib/site-packages/docutils/parsers/rst/languages/it.py +0 -98
  1472. venv/Lib/site-packages/docutils/parsers/rst/languages/ja.py +0 -119
  1473. venv/Lib/site-packages/docutils/parsers/rst/languages/ko.py +0 -111
  1474. venv/Lib/site-packages/docutils/parsers/rst/languages/lt.py +0 -109
  1475. venv/Lib/site-packages/docutils/parsers/rst/languages/lv.py +0 -108
  1476. venv/Lib/site-packages/docutils/parsers/rst/languages/nl.py +0 -113
  1477. venv/Lib/site-packages/docutils/parsers/rst/languages/pl.py +0 -100
  1478. venv/Lib/site-packages/docutils/parsers/rst/languages/pt_br.py +0 -109
  1479. venv/Lib/site-packages/docutils/parsers/rst/languages/ru.py +0 -90
  1480. venv/Lib/site-packages/docutils/parsers/rst/languages/sk.py +0 -96
  1481. venv/Lib/site-packages/docutils/parsers/rst/languages/sv.py +0 -96
  1482. venv/Lib/site-packages/docutils/parsers/rst/languages/zh_cn.py +0 -104
  1483. venv/Lib/site-packages/docutils/parsers/rst/languages/zh_tw.py +0 -109
  1484. venv/Lib/site-packages/docutils/parsers/rst/roles.py +0 -439
  1485. venv/Lib/site-packages/docutils/parsers/rst/states.py +0 -3135
  1486. venv/Lib/site-packages/docutils/parsers/rst/tableparser.py +0 -539
  1487. venv/Lib/site-packages/docutils/readers/__init__.py +0 -113
  1488. venv/Lib/site-packages/docutils/readers/doctree.py +0 -46
  1489. venv/Lib/site-packages/docutils/readers/pep.py +0 -48
  1490. venv/Lib/site-packages/docutils/readers/standalone.py +0 -65
  1491. venv/Lib/site-packages/docutils/statemachine.py +0 -1525
  1492. venv/Lib/site-packages/docutils/transforms/__init__.py +0 -174
  1493. venv/Lib/site-packages/docutils/transforms/components.py +0 -54
  1494. venv/Lib/site-packages/docutils/transforms/frontmatter.py +0 -545
  1495. venv/Lib/site-packages/docutils/transforms/misc.py +0 -144
  1496. venv/Lib/site-packages/docutils/transforms/parts.py +0 -176
  1497. venv/Lib/site-packages/docutils/transforms/peps.py +0 -308
  1498. venv/Lib/site-packages/docutils/transforms/references.py +0 -919
  1499. venv/Lib/site-packages/docutils/transforms/universal.py +0 -338
  1500. venv/Lib/site-packages/docutils/transforms/writer_aux.py +0 -99
  1501. venv/Lib/site-packages/docutils/utils/__init__.py +0 -821
  1502. venv/Lib/site-packages/docutils/utils/code_analyzer.py +0 -138
  1503. venv/Lib/site-packages/docutils/utils/error_reporting.py +0 -222
  1504. venv/Lib/site-packages/docutils/utils/math/__init__.py +0 -52
  1505. venv/Lib/site-packages/docutils/utils/math/latex2mathml.py +0 -1430
  1506. venv/Lib/site-packages/docutils/utils/math/math2html.py +0 -3171
  1507. venv/Lib/site-packages/docutils/utils/math/tex2mathml_extern.py +0 -152
  1508. venv/Lib/site-packages/docutils/utils/math/tex2unichar.py +0 -704
  1509. venv/Lib/site-packages/docutils/utils/math/unichar2tex.py +0 -808
  1510. venv/Lib/site-packages/docutils/utils/punctuation_chars.py +0 -122
  1511. venv/Lib/site-packages/docutils/utils/roman.py +0 -86
  1512. venv/Lib/site-packages/docutils/utils/smartquotes.py +0 -991
  1513. venv/Lib/site-packages/docutils/utils/urischemes.py +0 -138
  1514. venv/Lib/site-packages/docutils/writers/__init__.py +0 -151
  1515. venv/Lib/site-packages/docutils/writers/_html_base.py +0 -1781
  1516. venv/Lib/site-packages/docutils/writers/docutils_xml.py +0 -188
  1517. venv/Lib/site-packages/docutils/writers/html4css1/__init__.py +0 -947
  1518. venv/Lib/site-packages/docutils/writers/html5_polyglot/__init__.py +0 -454
  1519. venv/Lib/site-packages/docutils/writers/latex2e/__init__.py +0 -3295
  1520. venv/Lib/site-packages/docutils/writers/manpage.py +0 -1181
  1521. venv/Lib/site-packages/docutils/writers/null.py +0 -21
  1522. venv/Lib/site-packages/docutils/writers/odf_odt/__init__.py +0 -3468
  1523. venv/Lib/site-packages/docutils/writers/odf_odt/pygmentsformatter.py +0 -109
  1524. venv/Lib/site-packages/docutils/writers/pep_html/__init__.py +0 -103
  1525. venv/Lib/site-packages/docutils/writers/pseudoxml.py +0 -40
  1526. venv/Lib/site-packages/docutils/writers/s5_html/__init__.py +0 -352
  1527. venv/Lib/site-packages/docutils/writers/xetex/__init__.py +0 -149
  1528. venv/Lib/site-packages/future/__init__.py +0 -93
  1529. venv/Lib/site-packages/future/backports/__init__.py +0 -26
  1530. venv/Lib/site-packages/future/backports/_markupbase.py +0 -422
  1531. venv/Lib/site-packages/future/backports/datetime.py +0 -2152
  1532. venv/Lib/site-packages/future/backports/email/__init__.py +0 -78
  1533. venv/Lib/site-packages/future/backports/email/_encoded_words.py +0 -232
  1534. venv/Lib/site-packages/future/backports/email/_header_value_parser.py +0 -2965
  1535. venv/Lib/site-packages/future/backports/email/_parseaddr.py +0 -546
  1536. venv/Lib/site-packages/future/backports/email/_policybase.py +0 -365
  1537. venv/Lib/site-packages/future/backports/email/base64mime.py +0 -121
  1538. venv/Lib/site-packages/future/backports/email/charset.py +0 -409
  1539. venv/Lib/site-packages/future/backports/email/encoders.py +0 -90
  1540. venv/Lib/site-packages/future/backports/email/errors.py +0 -111
  1541. venv/Lib/site-packages/future/backports/email/feedparser.py +0 -525
  1542. venv/Lib/site-packages/future/backports/email/generator.py +0 -498
  1543. venv/Lib/site-packages/future/backports/email/header.py +0 -581
  1544. venv/Lib/site-packages/future/backports/email/headerregistry.py +0 -592
  1545. venv/Lib/site-packages/future/backports/email/iterators.py +0 -74
  1546. venv/Lib/site-packages/future/backports/email/message.py +0 -882
  1547. venv/Lib/site-packages/future/backports/email/mime/__init__.py +0 -0
  1548. venv/Lib/site-packages/future/backports/email/mime/application.py +0 -39
  1549. venv/Lib/site-packages/future/backports/email/mime/audio.py +0 -74
  1550. venv/Lib/site-packages/future/backports/email/mime/base.py +0 -25
  1551. venv/Lib/site-packages/future/backports/email/mime/image.py +0 -48
  1552. venv/Lib/site-packages/future/backports/email/mime/message.py +0 -36
  1553. venv/Lib/site-packages/future/backports/email/mime/multipart.py +0 -49
  1554. venv/Lib/site-packages/future/backports/email/mime/nonmultipart.py +0 -24
  1555. venv/Lib/site-packages/future/backports/email/mime/text.py +0 -44
  1556. venv/Lib/site-packages/future/backports/email/parser.py +0 -135
  1557. venv/Lib/site-packages/future/backports/email/policy.py +0 -193
  1558. venv/Lib/site-packages/future/backports/email/quoprimime.py +0 -326
  1559. venv/Lib/site-packages/future/backports/email/utils.py +0 -400
  1560. venv/Lib/site-packages/future/backports/html/__init__.py +0 -27
  1561. venv/Lib/site-packages/future/backports/html/entities.py +0 -2514
  1562. venv/Lib/site-packages/future/backports/html/parser.py +0 -536
  1563. venv/Lib/site-packages/future/backports/http/__init__.py +0 -0
  1564. venv/Lib/site-packages/future/backports/http/client.py +0 -1346
  1565. venv/Lib/site-packages/future/backports/http/cookiejar.py +0 -2116
  1566. venv/Lib/site-packages/future/backports/http/cookies.py +0 -598
  1567. venv/Lib/site-packages/future/backports/http/server.py +0 -1226
  1568. venv/Lib/site-packages/future/backports/misc.py +0 -958
  1569. venv/Lib/site-packages/future/backports/socket.py +0 -454
  1570. venv/Lib/site-packages/future/backports/socketserver.py +0 -747
  1571. venv/Lib/site-packages/future/backports/test/__init__.py +0 -9
  1572. venv/Lib/site-packages/future/backports/test/pystone.py +0 -272
  1573. venv/Lib/site-packages/future/backports/test/ssl_servers.py +0 -207
  1574. venv/Lib/site-packages/future/backports/test/support.py +0 -2048
  1575. venv/Lib/site-packages/future/backports/total_ordering.py +0 -38
  1576. venv/Lib/site-packages/future/backports/urllib/__init__.py +0 -0
  1577. venv/Lib/site-packages/future/backports/urllib/error.py +0 -75
  1578. venv/Lib/site-packages/future/backports/urllib/parse.py +0 -991
  1579. venv/Lib/site-packages/future/backports/urllib/request.py +0 -2647
  1580. venv/Lib/site-packages/future/backports/urllib/response.py +0 -103
  1581. venv/Lib/site-packages/future/backports/urllib/robotparser.py +0 -211
  1582. venv/Lib/site-packages/future/backports/xmlrpc/__init__.py +0 -1
  1583. venv/Lib/site-packages/future/backports/xmlrpc/client.py +0 -1496
  1584. venv/Lib/site-packages/future/backports/xmlrpc/server.py +0 -999
  1585. venv/Lib/site-packages/future/builtins/__init__.py +0 -51
  1586. venv/Lib/site-packages/future/builtins/disabled.py +0 -66
  1587. venv/Lib/site-packages/future/builtins/iterators.py +0 -52
  1588. venv/Lib/site-packages/future/builtins/misc.py +0 -135
  1589. venv/Lib/site-packages/future/builtins/new_min_max.py +0 -59
  1590. venv/Lib/site-packages/future/builtins/newnext.py +0 -70
  1591. venv/Lib/site-packages/future/builtins/newround.py +0 -105
  1592. venv/Lib/site-packages/future/builtins/newsuper.py +0 -113
  1593. venv/Lib/site-packages/future/moves/__init__.py +0 -8
  1594. venv/Lib/site-packages/future/moves/_dummy_thread.py +0 -8
  1595. venv/Lib/site-packages/future/moves/_markupbase.py +0 -8
  1596. venv/Lib/site-packages/future/moves/_thread.py +0 -8
  1597. venv/Lib/site-packages/future/moves/builtins.py +0 -10
  1598. venv/Lib/site-packages/future/moves/collections.py +0 -18
  1599. venv/Lib/site-packages/future/moves/configparser.py +0 -8
  1600. venv/Lib/site-packages/future/moves/copyreg.py +0 -12
  1601. venv/Lib/site-packages/future/moves/dbm/__init__.py +0 -20
  1602. venv/Lib/site-packages/future/moves/dbm/dumb.py +0 -9
  1603. venv/Lib/site-packages/future/moves/dbm/gnu.py +0 -9
  1604. venv/Lib/site-packages/future/moves/dbm/ndbm.py +0 -9
  1605. venv/Lib/site-packages/future/moves/html/__init__.py +0 -31
  1606. venv/Lib/site-packages/future/moves/html/entities.py +0 -8
  1607. venv/Lib/site-packages/future/moves/html/parser.py +0 -8
  1608. venv/Lib/site-packages/future/moves/http/__init__.py +0 -4
  1609. venv/Lib/site-packages/future/moves/http/client.py +0 -8
  1610. venv/Lib/site-packages/future/moves/http/cookiejar.py +0 -8
  1611. venv/Lib/site-packages/future/moves/http/cookies.py +0 -9
  1612. venv/Lib/site-packages/future/moves/http/server.py +0 -20
  1613. venv/Lib/site-packages/future/moves/itertools.py +0 -8
  1614. venv/Lib/site-packages/future/moves/pickle.py +0 -11
  1615. venv/Lib/site-packages/future/moves/queue.py +0 -8
  1616. venv/Lib/site-packages/future/moves/reprlib.py +0 -8
  1617. venv/Lib/site-packages/future/moves/socketserver.py +0 -8
  1618. venv/Lib/site-packages/future/moves/subprocess.py +0 -11
  1619. venv/Lib/site-packages/future/moves/sys.py +0 -8
  1620. venv/Lib/site-packages/future/moves/test/__init__.py +0 -5
  1621. venv/Lib/site-packages/future/moves/test/support.py +0 -10
  1622. venv/Lib/site-packages/future/moves/tkinter/__init__.py +0 -27
  1623. venv/Lib/site-packages/future/moves/tkinter/colorchooser.py +0 -12
  1624. venv/Lib/site-packages/future/moves/tkinter/commondialog.py +0 -12
  1625. venv/Lib/site-packages/future/moves/tkinter/constants.py +0 -12
  1626. venv/Lib/site-packages/future/moves/tkinter/dialog.py +0 -12
  1627. venv/Lib/site-packages/future/moves/tkinter/dnd.py +0 -12
  1628. venv/Lib/site-packages/future/moves/tkinter/filedialog.py +0 -18
  1629. venv/Lib/site-packages/future/moves/tkinter/font.py +0 -12
  1630. venv/Lib/site-packages/future/moves/tkinter/messagebox.py +0 -12
  1631. venv/Lib/site-packages/future/moves/tkinter/scrolledtext.py +0 -12
  1632. venv/Lib/site-packages/future/moves/tkinter/simpledialog.py +0 -12
  1633. venv/Lib/site-packages/future/moves/tkinter/tix.py +0 -12
  1634. venv/Lib/site-packages/future/moves/tkinter/ttk.py +0 -12
  1635. venv/Lib/site-packages/future/moves/urllib/__init__.py +0 -5
  1636. venv/Lib/site-packages/future/moves/urllib/error.py +0 -16
  1637. venv/Lib/site-packages/future/moves/urllib/parse.py +0 -28
  1638. venv/Lib/site-packages/future/moves/urllib/request.py +0 -94
  1639. venv/Lib/site-packages/future/moves/urllib/response.py +0 -12
  1640. venv/Lib/site-packages/future/moves/urllib/robotparser.py +0 -8
  1641. venv/Lib/site-packages/future/moves/winreg.py +0 -8
  1642. venv/Lib/site-packages/future/moves/xmlrpc/__init__.py +0 -0
  1643. venv/Lib/site-packages/future/moves/xmlrpc/client.py +0 -7
  1644. venv/Lib/site-packages/future/moves/xmlrpc/server.py +0 -7
  1645. venv/Lib/site-packages/future/standard_library/__init__.py +0 -815
  1646. venv/Lib/site-packages/future/tests/__init__.py +0 -0
  1647. venv/Lib/site-packages/future/tests/base.py +0 -539
  1648. venv/Lib/site-packages/future/types/__init__.py +0 -257
  1649. venv/Lib/site-packages/future/types/newbytes.py +0 -460
  1650. venv/Lib/site-packages/future/types/newdict.py +0 -76
  1651. venv/Lib/site-packages/future/types/newint.py +0 -384
  1652. venv/Lib/site-packages/future/types/newlist.py +0 -95
  1653. venv/Lib/site-packages/future/types/newmemoryview.py +0 -29
  1654. venv/Lib/site-packages/future/types/newobject.py +0 -117
  1655. venv/Lib/site-packages/future/types/newopen.py +0 -32
  1656. venv/Lib/site-packages/future/types/newrange.py +0 -170
  1657. venv/Lib/site-packages/future/types/newstr.py +0 -426
  1658. venv/Lib/site-packages/future/utils/__init__.py +0 -770
  1659. venv/Lib/site-packages/future/utils/surrogateescape.py +0 -198
  1660. venv/Lib/site-packages/idna/__init__.py +0 -44
  1661. venv/Lib/site-packages/idna/codec.py +0 -112
  1662. venv/Lib/site-packages/idna/compat.py +0 -13
  1663. venv/Lib/site-packages/idna/core.py +0 -400
  1664. venv/Lib/site-packages/idna/idnadata.py +0 -2151
  1665. venv/Lib/site-packages/idna/intranges.py +0 -54
  1666. venv/Lib/site-packages/idna/package_data.py +0 -2
  1667. venv/Lib/site-packages/idna/uts46data.py +0 -8600
  1668. venv/Lib/site-packages/importlib_metadata/__init__.py +0 -1095
  1669. venv/Lib/site-packages/importlib_metadata/_adapters.py +0 -68
  1670. venv/Lib/site-packages/importlib_metadata/_collections.py +0 -30
  1671. venv/Lib/site-packages/importlib_metadata/_compat.py +0 -72
  1672. venv/Lib/site-packages/importlib_metadata/_functools.py +0 -104
  1673. venv/Lib/site-packages/importlib_metadata/_itertools.py +0 -73
  1674. venv/Lib/site-packages/importlib_metadata/_meta.py +0 -48
  1675. venv/Lib/site-packages/importlib_metadata/_text.py +0 -99
  1676. venv/Lib/site-packages/jaraco/classes/__init__.py +0 -0
  1677. venv/Lib/site-packages/jaraco/classes/ancestry.py +0 -68
  1678. venv/Lib/site-packages/jaraco/classes/meta.py +0 -66
  1679. venv/Lib/site-packages/jaraco/classes/properties.py +0 -170
  1680. venv/Lib/site-packages/je_editor/__init__.py +0 -25
  1681. venv/Lib/site-packages/je_editor/__main__.py +0 -18
  1682. venv/Lib/site-packages/je_editor/ui/__init__.py +0 -1
  1683. venv/Lib/site-packages/je_editor/ui/editor_main_ui/__init__.py +0 -1
  1684. venv/Lib/site-packages/je_editor/ui/editor_main_ui/content_init/__init__.py +0 -0
  1685. venv/Lib/site-packages/je_editor/ui/editor_main_ui/content_init/content_init.py +0 -80
  1686. venv/Lib/site-packages/je_editor/ui/editor_main_ui/menu/__init__.py +0 -0
  1687. venv/Lib/site-packages/je_editor/ui/editor_main_ui/menu/build_menu.py +0 -10
  1688. venv/Lib/site-packages/je_editor/ui/editor_main_ui/menu/file_menu/__init__.py +0 -0
  1689. venv/Lib/site-packages/je_editor/ui/editor_main_ui/menu/file_menu/build_file_menu.py +0 -65
  1690. venv/Lib/site-packages/je_editor/ui/editor_main_ui/menu/popup_menu/__init__.py +0 -0
  1691. venv/Lib/site-packages/je_editor/ui/editor_main_ui/menu/popup_menu/build_popup_menu.py +0 -13
  1692. venv/Lib/site-packages/je_editor/ui/editor_main_ui/menu/run_menu/__init__.py +0 -0
  1693. venv/Lib/site-packages/je_editor/ui/editor_main_ui/menu/run_menu/build_run_menu.py +0 -35
  1694. venv/Lib/site-packages/je_editor/ui/editor_main_ui/protocal_setting/__init__.py +0 -0
  1695. venv/Lib/site-packages/je_editor/ui/editor_main_ui/protocal_setting/set_ui_protocol.py +0 -8
  1696. venv/Lib/site-packages/je_editor/ui/editor_main_ui/redirect_output/__init__.py +0 -0
  1697. venv/Lib/site-packages/je_editor/ui/editor_main_ui/redirect_output/redirect_output_to_tkinter_ui.py +0 -26
  1698. venv/Lib/site-packages/je_editor/ui/editor_main_ui/tkinter_editor.py +0 -148
  1699. venv/Lib/site-packages/je_editor/ui/editor_main_ui/ui_event_bind/__init__.py +0 -0
  1700. venv/Lib/site-packages/je_editor/ui/editor_main_ui/ui_event_bind/event_bind.py +0 -26
  1701. venv/Lib/site-packages/je_editor/ui/editor_main_ui/ui_grid/__init__.py +0 -0
  1702. venv/Lib/site-packages/je_editor/ui/editor_main_ui/ui_grid/build_ui_grid.py +0 -24
  1703. venv/Lib/site-packages/je_editor/ui/editor_main_ui/ui_setting/__init__.py +0 -0
  1704. venv/Lib/site-packages/je_editor/ui/editor_main_ui/ui_setting/ui_setting.py +0 -41
  1705. venv/Lib/site-packages/je_editor/ui/ui_event/__init__.py +0 -1
  1706. venv/Lib/site-packages/je_editor/ui/ui_event/auto_save/__init__.py +0 -1
  1707. venv/Lib/site-packages/je_editor/ui/ui_event/auto_save/start_auto_save/__init__.py +0 -0
  1708. venv/Lib/site-packages/je_editor/ui/ui_event/auto_save/start_auto_save/start_auto_save.py +0 -17
  1709. venv/Lib/site-packages/je_editor/ui/ui_event/change_font/__init__.py +0 -1
  1710. venv/Lib/site-packages/je_editor/ui/ui_event/change_font/change_font.py +0 -38
  1711. venv/Lib/site-packages/je_editor/ui/ui_event/clear_result/__init__.py +0 -0
  1712. venv/Lib/site-packages/je_editor/ui/ui_event/clear_result/clear_result.py +0 -8
  1713. venv/Lib/site-packages/je_editor/ui/ui_event/close/__init__.py +0 -1
  1714. venv/Lib/site-packages/je_editor/ui/ui_event/close/close_event.py +0 -12
  1715. venv/Lib/site-packages/je_editor/ui/ui_event/encoding/__init__.py +0 -0
  1716. venv/Lib/site-packages/je_editor/ui/ui_event/encoding/set_encoding.py +0 -10
  1717. venv/Lib/site-packages/je_editor/ui/ui_event/execute/__init__.py +0 -1
  1718. venv/Lib/site-packages/je_editor/ui/ui_event/execute/execute_code/__init__.py +0 -1
  1719. venv/Lib/site-packages/je_editor/ui/ui_event/execute/execute_code/exec_code.py +0 -22
  1720. venv/Lib/site-packages/je_editor/ui/ui_event/execute/execute_shell_command/__init__.py +0 -1
  1721. venv/Lib/site-packages/je_editor/ui/ui_event/execute/execute_shell_command/run_on_shell.py +0 -12
  1722. venv/Lib/site-packages/je_editor/ui/ui_event/language/__init__.py +0 -1
  1723. venv/Lib/site-packages/je_editor/ui/ui_event/language/set_language.py +0 -13
  1724. venv/Lib/site-packages/je_editor/ui/ui_event/open_file/__init__.py +0 -1
  1725. venv/Lib/site-packages/je_editor/ui/ui_event/open_file/open_file_to_read/__init__.py +0 -1
  1726. venv/Lib/site-packages/je_editor/ui/ui_event/open_file/open_file_to_read/open_file_to_read.py +0 -20
  1727. venv/Lib/site-packages/je_editor/ui/ui_event/open_file/open_last_edit_file/__init__.py +0 -1
  1728. venv/Lib/site-packages/je_editor/ui/ui_event/open_file/open_last_edit_file/open_last_edit_file.py +0 -17
  1729. venv/Lib/site-packages/je_editor/ui/ui_event/save_file/__init__.py +0 -0
  1730. venv/Lib/site-packages/je_editor/ui/ui_event/save_file/save_file_to_open/__init__.py +0 -1
  1731. venv/Lib/site-packages/je_editor/ui/ui_event/save_file/save_file_to_open/save_file_to_open.py +0 -19
  1732. venv/Lib/site-packages/je_editor/ui/ui_event/tag_keyword/__init__.py +0 -1
  1733. venv/Lib/site-packages/je_editor/ui/ui_event/tag_keyword/tag_keyword.py +0 -49
  1734. venv/Lib/site-packages/je_editor/ui/ui_event/text_process/__init__.py +0 -0
  1735. venv/Lib/site-packages/je_editor/ui/ui_event/text_process/program_exec/__init__.py +0 -1
  1736. venv/Lib/site-packages/je_editor/ui/ui_event/text_process/program_exec/code_exec_manager.py +0 -169
  1737. venv/Lib/site-packages/je_editor/ui/ui_event/text_process/program_exec/process_error.py +0 -10
  1738. venv/Lib/site-packages/je_editor/ui/ui_event/text_process/shell/__init__.py +0 -1
  1739. venv/Lib/site-packages/je_editor/ui/ui_event/text_process/shell/shell_exec_manager.py +0 -130
  1740. venv/Lib/site-packages/je_editor/utils/__init__.py +0 -1
  1741. venv/Lib/site-packages/je_editor/utils/editor_content/__init__.py +0 -1
  1742. venv/Lib/site-packages/je_editor/utils/editor_content/content_save.py +0 -66
  1743. venv/Lib/site-packages/je_editor/utils/editor_content/editor_content_data.py +0 -19
  1744. venv/Lib/site-packages/je_editor/utils/encoding/__init__.py +0 -1
  1745. venv/Lib/site-packages/je_editor/utils/encoding/encoding_data_module.py +0 -101
  1746. venv/Lib/site-packages/je_editor/utils/exception/__init__.py +0 -1
  1747. venv/Lib/site-packages/je_editor/utils/exception/exception_tags.py +0 -33
  1748. venv/Lib/site-packages/je_editor/utils/exception/exceptions.py +0 -30
  1749. venv/Lib/site-packages/je_editor/utils/file/__init__.py +0 -0
  1750. venv/Lib/site-packages/je_editor/utils/file/open/__init__.py +0 -1
  1751. venv/Lib/site-packages/je_editor/utils/file/open/open_file.py +0 -52
  1752. venv/Lib/site-packages/je_editor/utils/file/save/__init__.py +0 -1
  1753. venv/Lib/site-packages/je_editor/utils/file/save/save_file.py +0 -81
  1754. venv/Lib/site-packages/je_editor/utils/font/__init__.py +0 -1
  1755. venv/Lib/site-packages/je_editor/utils/font/font.py +0 -20
  1756. venv/Lib/site-packages/je_editor/utils/json_format/__init__.py +0 -1
  1757. venv/Lib/site-packages/je_editor/utils/json_format/json_process.py +0 -28
  1758. venv/Lib/site-packages/je_editor/utils/keyword/__init__.py +0 -1
  1759. venv/Lib/site-packages/je_editor/utils/keyword/keyword_list.py +0 -4
  1760. venv/Lib/site-packages/je_editor/utils/language/__init__.py +0 -1
  1761. venv/Lib/site-packages/je_editor/utils/language/language_data_module.py +0 -9
  1762. venv/Lib/site-packages/je_editor/utils/language_data_module/__init__.py +0 -1
  1763. venv/Lib/site-packages/je_editor/utils/language_data_module/language_compiler_data_module.py +0 -7
  1764. venv/Lib/site-packages/je_editor/utils/language_data_module/language_param_data_module.py +0 -7
  1765. venv/Lib/site-packages/je_editor/utils/project/__init__.py +0 -0
  1766. venv/Lib/site-packages/je_editor/utils/project/create_project.py +0 -16
  1767. venv/Lib/site-packages/je_editor/utils/redirect_manager/__init__.py +0 -0
  1768. venv/Lib/site-packages/je_editor/utils/redirect_manager/redirect_manager_class.py +0 -70
  1769. venv/Lib/site-packages/je_editor/utils/string_translate/__init__.py +0 -1
  1770. venv/Lib/site-packages/je_editor/utils/string_translate/used_string.py +0 -4
  1771. venv/Lib/site-packages/je_editor/utils/theme/__init__.py +0 -0
  1772. venv/Lib/site-packages/je_editor/utils/theme/theme.py +0 -6
  1773. venv/Lib/site-packages/keyring/__init__.py +0 -17
  1774. venv/Lib/site-packages/keyring/__main__.py +0 -4
  1775. venv/Lib/site-packages/keyring/_compat.py +0 -7
  1776. venv/Lib/site-packages/keyring/_properties_compat.py +0 -169
  1777. venv/Lib/site-packages/keyring/backend.py +0 -256
  1778. venv/Lib/site-packages/keyring/backends/OS_X.py +0 -13
  1779. venv/Lib/site-packages/keyring/backends/SecretService.py +0 -119
  1780. venv/Lib/site-packages/keyring/backends/Windows.py +0 -170
  1781. venv/Lib/site-packages/keyring/backends/__init__.py +0 -0
  1782. venv/Lib/site-packages/keyring/backends/chainer.py +0 -71
  1783. venv/Lib/site-packages/keyring/backends/fail.py +0 -27
  1784. venv/Lib/site-packages/keyring/backends/kwallet.py +0 -165
  1785. venv/Lib/site-packages/keyring/backends/libsecret.py +0 -152
  1786. venv/Lib/site-packages/keyring/backends/macOS/__init__.py +0 -76
  1787. venv/Lib/site-packages/keyring/backends/macOS/api.py +0 -172
  1788. venv/Lib/site-packages/keyring/backends/null.py +0 -17
  1789. venv/Lib/site-packages/keyring/cli.py +0 -136
  1790. venv/Lib/site-packages/keyring/core.py +0 -186
  1791. venv/Lib/site-packages/keyring/credentials.py +0 -70
  1792. venv/Lib/site-packages/keyring/devpi_client.py +0 -19
  1793. venv/Lib/site-packages/keyring/errors.py +0 -61
  1794. venv/Lib/site-packages/keyring/http.py +0 -39
  1795. venv/Lib/site-packages/keyring/py310compat.py +0 -10
  1796. venv/Lib/site-packages/keyring/testing/__init__.py +0 -0
  1797. venv/Lib/site-packages/keyring/testing/backend.py +0 -172
  1798. venv/Lib/site-packages/keyring/testing/util.py +0 -71
  1799. venv/Lib/site-packages/keyring/util/__init__.py +0 -37
  1800. venv/Lib/site-packages/keyring/util/platform_.py +0 -68
  1801. venv/Lib/site-packages/keyring/util/properties.py +0 -18
  1802. venv/Lib/site-packages/libfuturize/__init__.py +0 -1
  1803. venv/Lib/site-packages/libfuturize/fixer_util.py +0 -520
  1804. venv/Lib/site-packages/libfuturize/fixes/__init__.py +0 -97
  1805. venv/Lib/site-packages/libfuturize/fixes/fix_UserDict.py +0 -102
  1806. venv/Lib/site-packages/libfuturize/fixes/fix_absolute_import.py +0 -91
  1807. venv/Lib/site-packages/libfuturize/fixes/fix_add__future__imports_except_unicode_literals.py +0 -26
  1808. venv/Lib/site-packages/libfuturize/fixes/fix_basestring.py +0 -17
  1809. venv/Lib/site-packages/libfuturize/fixes/fix_bytes.py +0 -24
  1810. venv/Lib/site-packages/libfuturize/fixes/fix_cmp.py +0 -33
  1811. venv/Lib/site-packages/libfuturize/fixes/fix_division.py +0 -12
  1812. venv/Lib/site-packages/libfuturize/fixes/fix_division_safe.py +0 -109
  1813. venv/Lib/site-packages/libfuturize/fixes/fix_execfile.py +0 -37
  1814. venv/Lib/site-packages/libfuturize/fixes/fix_future_builtins.py +0 -59
  1815. venv/Lib/site-packages/libfuturize/fixes/fix_future_standard_library.py +0 -24
  1816. venv/Lib/site-packages/libfuturize/fixes/fix_future_standard_library_urllib.py +0 -28
  1817. venv/Lib/site-packages/libfuturize/fixes/fix_input.py +0 -32
  1818. venv/Lib/site-packages/libfuturize/fixes/fix_metaclass.py +0 -262
  1819. venv/Lib/site-packages/libfuturize/fixes/fix_next_call.py +0 -104
  1820. venv/Lib/site-packages/libfuturize/fixes/fix_object.py +0 -17
  1821. venv/Lib/site-packages/libfuturize/fixes/fix_oldstr_wrap.py +0 -39
  1822. venv/Lib/site-packages/libfuturize/fixes/fix_order___future__imports.py +0 -36
  1823. venv/Lib/site-packages/libfuturize/fixes/fix_print.py +0 -104
  1824. venv/Lib/site-packages/libfuturize/fixes/fix_print_with_import.py +0 -22
  1825. venv/Lib/site-packages/libfuturize/fixes/fix_raise.py +0 -107
  1826. venv/Lib/site-packages/libfuturize/fixes/fix_remove_old__future__imports.py +0 -26
  1827. venv/Lib/site-packages/libfuturize/fixes/fix_unicode_keep_u.py +0 -24
  1828. venv/Lib/site-packages/libfuturize/fixes/fix_unicode_literals_import.py +0 -18
  1829. venv/Lib/site-packages/libfuturize/fixes/fix_xrange_with_import.py +0 -20
  1830. venv/Lib/site-packages/libfuturize/main.py +0 -322
  1831. venv/Lib/site-packages/libpasteurize/__init__.py +0 -1
  1832. venv/Lib/site-packages/libpasteurize/fixes/__init__.py +0 -54
  1833. venv/Lib/site-packages/libpasteurize/fixes/feature_base.py +0 -57
  1834. venv/Lib/site-packages/libpasteurize/fixes/fix_add_all__future__imports.py +0 -24
  1835. venv/Lib/site-packages/libpasteurize/fixes/fix_add_all_future_builtins.py +0 -37
  1836. venv/Lib/site-packages/libpasteurize/fixes/fix_add_future_standard_library_import.py +0 -23
  1837. venv/Lib/site-packages/libpasteurize/fixes/fix_annotations.py +0 -48
  1838. venv/Lib/site-packages/libpasteurize/fixes/fix_division.py +0 -28
  1839. venv/Lib/site-packages/libpasteurize/fixes/fix_features.py +0 -86
  1840. venv/Lib/site-packages/libpasteurize/fixes/fix_fullargspec.py +0 -16
  1841. venv/Lib/site-packages/libpasteurize/fixes/fix_future_builtins.py +0 -46
  1842. venv/Lib/site-packages/libpasteurize/fixes/fix_getcwd.py +0 -26
  1843. venv/Lib/site-packages/libpasteurize/fixes/fix_imports.py +0 -112
  1844. venv/Lib/site-packages/libpasteurize/fixes/fix_imports2.py +0 -174
  1845. venv/Lib/site-packages/libpasteurize/fixes/fix_kwargs.py +0 -147
  1846. venv/Lib/site-packages/libpasteurize/fixes/fix_memoryview.py +0 -21
  1847. venv/Lib/site-packages/libpasteurize/fixes/fix_metaclass.py +0 -78
  1848. venv/Lib/site-packages/libpasteurize/fixes/fix_newstyle.py +0 -33
  1849. venv/Lib/site-packages/libpasteurize/fixes/fix_next.py +0 -43
  1850. venv/Lib/site-packages/libpasteurize/fixes/fix_printfunction.py +0 -17
  1851. venv/Lib/site-packages/libpasteurize/fixes/fix_raise.py +0 -25
  1852. venv/Lib/site-packages/libpasteurize/fixes/fix_raise_.py +0 -35
  1853. venv/Lib/site-packages/libpasteurize/fixes/fix_throw.py +0 -23
  1854. venv/Lib/site-packages/libpasteurize/fixes/fix_unpacking.py +0 -120
  1855. venv/Lib/site-packages/libpasteurize/main.py +0 -204
  1856. venv/Lib/site-packages/more_itertools/__init__.py +0 -6
  1857. venv/Lib/site-packages/more_itertools/more.py +0 -4347
  1858. venv/Lib/site-packages/more_itertools/recipes.py +0 -841
  1859. venv/Lib/site-packages/ordlookup/__init__.py +0 -45
  1860. venv/Lib/site-packages/ordlookup/oleaut32.py +0 -400
  1861. venv/Lib/site-packages/ordlookup/ws2_32.py +0 -119
  1862. venv/Lib/site-packages/packaging/__init__.py +0 -15
  1863. venv/Lib/site-packages/packaging/_elffile.py +0 -108
  1864. venv/Lib/site-packages/packaging/_manylinux.py +0 -238
  1865. venv/Lib/site-packages/packaging/_musllinux.py +0 -80
  1866. venv/Lib/site-packages/packaging/_parser.py +0 -328
  1867. venv/Lib/site-packages/packaging/_structures.py +0 -61
  1868. venv/Lib/site-packages/packaging/_tokenizer.py +0 -188
  1869. venv/Lib/site-packages/packaging/markers.py +0 -245
  1870. venv/Lib/site-packages/packaging/requirements.py +0 -95
  1871. venv/Lib/site-packages/packaging/specifiers.py +0 -1005
  1872. venv/Lib/site-packages/packaging/tags.py +0 -546
  1873. venv/Lib/site-packages/packaging/utils.py +0 -141
  1874. venv/Lib/site-packages/packaging/version.py +0 -563
  1875. venv/Lib/site-packages/past/__init__.py +0 -90
  1876. venv/Lib/site-packages/past/builtins/__init__.py +0 -72
  1877. venv/Lib/site-packages/past/builtins/misc.py +0 -161
  1878. venv/Lib/site-packages/past/builtins/noniterators.py +0 -272
  1879. venv/Lib/site-packages/past/translation/__init__.py +0 -485
  1880. venv/Lib/site-packages/past/types/__init__.py +0 -29
  1881. venv/Lib/site-packages/past/types/basestring.py +0 -38
  1882. venv/Lib/site-packages/past/types/olddict.py +0 -96
  1883. venv/Lib/site-packages/past/types/oldstr.py +0 -135
  1884. venv/Lib/site-packages/past/utils/__init__.py +0 -97
  1885. venv/Lib/site-packages/pefile.py +0 -7437
  1886. venv/Lib/site-packages/peutils.py +0 -592
  1887. venv/Lib/site-packages/pip/__init__.py +0 -13
  1888. venv/Lib/site-packages/pip/__main__.py +0 -31
  1889. venv/Lib/site-packages/pip/__pip-runner__.py +0 -50
  1890. venv/Lib/site-packages/pip/_internal/__init__.py +0 -19
  1891. venv/Lib/site-packages/pip/_internal/build_env.py +0 -310
  1892. venv/Lib/site-packages/pip/_internal/cache.py +0 -293
  1893. venv/Lib/site-packages/pip/_internal/cli/__init__.py +0 -4
  1894. venv/Lib/site-packages/pip/_internal/cli/autocompletion.py +0 -171
  1895. venv/Lib/site-packages/pip/_internal/cli/base_command.py +0 -216
  1896. venv/Lib/site-packages/pip/_internal/cli/cmdoptions.py +0 -1049
  1897. venv/Lib/site-packages/pip/_internal/cli/command_context.py +0 -27
  1898. venv/Lib/site-packages/pip/_internal/cli/main.py +0 -70
  1899. venv/Lib/site-packages/pip/_internal/cli/main_parser.py +0 -134
  1900. venv/Lib/site-packages/pip/_internal/cli/parser.py +0 -294
  1901. venv/Lib/site-packages/pip/_internal/cli/progress_bars.py +0 -68
  1902. venv/Lib/site-packages/pip/_internal/cli/req_command.py +0 -502
  1903. venv/Lib/site-packages/pip/_internal/cli/spinners.py +0 -159
  1904. venv/Lib/site-packages/pip/_internal/cli/status_codes.py +0 -6
  1905. venv/Lib/site-packages/pip/_internal/commands/__init__.py +0 -132
  1906. venv/Lib/site-packages/pip/_internal/commands/cache.py +0 -223
  1907. venv/Lib/site-packages/pip/_internal/commands/check.py +0 -53
  1908. venv/Lib/site-packages/pip/_internal/commands/completion.py +0 -126
  1909. venv/Lib/site-packages/pip/_internal/commands/configuration.py +0 -282
  1910. venv/Lib/site-packages/pip/_internal/commands/debug.py +0 -199
  1911. venv/Lib/site-packages/pip/_internal/commands/download.py +0 -149
  1912. venv/Lib/site-packages/pip/_internal/commands/freeze.py +0 -97
  1913. venv/Lib/site-packages/pip/_internal/commands/hash.py +0 -59
  1914. venv/Lib/site-packages/pip/_internal/commands/help.py +0 -41
  1915. venv/Lib/site-packages/pip/_internal/commands/index.py +0 -138
  1916. venv/Lib/site-packages/pip/_internal/commands/inspect.py +0 -97
  1917. venv/Lib/site-packages/pip/_internal/commands/install.py +0 -860
  1918. venv/Lib/site-packages/pip/_internal/commands/list.py +0 -365
  1919. venv/Lib/site-packages/pip/_internal/commands/search.py +0 -174
  1920. venv/Lib/site-packages/pip/_internal/commands/show.py +0 -183
  1921. venv/Lib/site-packages/pip/_internal/commands/uninstall.py +0 -106
  1922. venv/Lib/site-packages/pip/_internal/commands/wheel.py +0 -203
  1923. venv/Lib/site-packages/pip/_internal/configuration.py +0 -374
  1924. venv/Lib/site-packages/pip/_internal/distributions/__init__.py +0 -21
  1925. venv/Lib/site-packages/pip/_internal/distributions/base.py +0 -39
  1926. venv/Lib/site-packages/pip/_internal/distributions/installed.py +0 -23
  1927. venv/Lib/site-packages/pip/_internal/distributions/sdist.py +0 -150
  1928. venv/Lib/site-packages/pip/_internal/distributions/wheel.py +0 -34
  1929. venv/Lib/site-packages/pip/_internal/exceptions.py +0 -660
  1930. venv/Lib/site-packages/pip/_internal/index/__init__.py +0 -2
  1931. venv/Lib/site-packages/pip/_internal/index/collector.py +0 -505
  1932. venv/Lib/site-packages/pip/_internal/index/package_finder.py +0 -1025
  1933. venv/Lib/site-packages/pip/_internal/index/sources.py +0 -224
  1934. venv/Lib/site-packages/pip/_internal/locations/__init__.py +0 -528
  1935. venv/Lib/site-packages/pip/_internal/locations/_distutils.py +0 -180
  1936. venv/Lib/site-packages/pip/_internal/locations/_sysconfig.py +0 -218
  1937. venv/Lib/site-packages/pip/_internal/locations/base.py +0 -81
  1938. venv/Lib/site-packages/pip/_internal/main.py +0 -12
  1939. venv/Lib/site-packages/pip/_internal/metadata/__init__.py +0 -127
  1940. venv/Lib/site-packages/pip/_internal/metadata/_json.py +0 -84
  1941. venv/Lib/site-packages/pip/_internal/metadata/base.py +0 -688
  1942. venv/Lib/site-packages/pip/_internal/metadata/importlib/__init__.py +0 -4
  1943. venv/Lib/site-packages/pip/_internal/metadata/importlib/_compat.py +0 -55
  1944. venv/Lib/site-packages/pip/_internal/metadata/importlib/_dists.py +0 -224
  1945. venv/Lib/site-packages/pip/_internal/metadata/importlib/_envs.py +0 -188
  1946. venv/Lib/site-packages/pip/_internal/metadata/pkg_resources.py +0 -270
  1947. venv/Lib/site-packages/pip/_internal/models/__init__.py +0 -2
  1948. venv/Lib/site-packages/pip/_internal/models/candidate.py +0 -34
  1949. venv/Lib/site-packages/pip/_internal/models/direct_url.py +0 -212
  1950. venv/Lib/site-packages/pip/_internal/models/format_control.py +0 -80
  1951. venv/Lib/site-packages/pip/_internal/models/index.py +0 -28
  1952. venv/Lib/site-packages/pip/_internal/models/installation_report.py +0 -53
  1953. venv/Lib/site-packages/pip/_internal/models/link.py +0 -507
  1954. venv/Lib/site-packages/pip/_internal/models/scheme.py +0 -31
  1955. venv/Lib/site-packages/pip/_internal/models/search_scope.py +0 -133
  1956. venv/Lib/site-packages/pip/_internal/models/selection_prefs.py +0 -51
  1957. venv/Lib/site-packages/pip/_internal/models/target_python.py +0 -110
  1958. venv/Lib/site-packages/pip/_internal/models/wheel.py +0 -92
  1959. venv/Lib/site-packages/pip/_internal/network/__init__.py +0 -2
  1960. venv/Lib/site-packages/pip/_internal/network/auth.py +0 -323
  1961. venv/Lib/site-packages/pip/_internal/network/cache.py +0 -69
  1962. venv/Lib/site-packages/pip/_internal/network/download.py +0 -186
  1963. venv/Lib/site-packages/pip/_internal/network/lazy_wheel.py +0 -210
  1964. venv/Lib/site-packages/pip/_internal/network/session.py +0 -518
  1965. venv/Lib/site-packages/pip/_internal/network/utils.py +0 -96
  1966. venv/Lib/site-packages/pip/_internal/network/xmlrpc.py +0 -60
  1967. venv/Lib/site-packages/pip/_internal/operations/__init__.py +0 -0
  1968. venv/Lib/site-packages/pip/_internal/operations/build/__init__.py +0 -0
  1969. venv/Lib/site-packages/pip/_internal/operations/build/build_tracker.py +0 -124
  1970. venv/Lib/site-packages/pip/_internal/operations/build/metadata.py +0 -39
  1971. venv/Lib/site-packages/pip/_internal/operations/build/metadata_editable.py +0 -41
  1972. venv/Lib/site-packages/pip/_internal/operations/build/metadata_legacy.py +0 -74
  1973. venv/Lib/site-packages/pip/_internal/operations/build/wheel.py +0 -37
  1974. venv/Lib/site-packages/pip/_internal/operations/build/wheel_editable.py +0 -46
  1975. venv/Lib/site-packages/pip/_internal/operations/build/wheel_legacy.py +0 -102
  1976. venv/Lib/site-packages/pip/_internal/operations/check.py +0 -149
  1977. venv/Lib/site-packages/pip/_internal/operations/freeze.py +0 -254
  1978. venv/Lib/site-packages/pip/_internal/operations/install/__init__.py +0 -2
  1979. venv/Lib/site-packages/pip/_internal/operations/install/editable_legacy.py +0 -47
  1980. venv/Lib/site-packages/pip/_internal/operations/install/legacy.py +0 -120
  1981. venv/Lib/site-packages/pip/_internal/operations/install/wheel.py +0 -738
  1982. venv/Lib/site-packages/pip/_internal/operations/prepare.py +0 -667
  1983. venv/Lib/site-packages/pip/_internal/pyproject.py +0 -175
  1984. venv/Lib/site-packages/pip/_internal/req/__init__.py +0 -94
  1985. venv/Lib/site-packages/pip/_internal/req/constructors.py +0 -501
  1986. venv/Lib/site-packages/pip/_internal/req/req_file.py +0 -544
  1987. venv/Lib/site-packages/pip/_internal/req/req_install.py +0 -942
  1988. venv/Lib/site-packages/pip/_internal/req/req_set.py +0 -82
  1989. venv/Lib/site-packages/pip/_internal/req/req_uninstall.py +0 -640
  1990. venv/Lib/site-packages/pip/_internal/resolution/__init__.py +0 -0
  1991. venv/Lib/site-packages/pip/_internal/resolution/base.py +0 -20
  1992. venv/Lib/site-packages/pip/_internal/resolution/legacy/__init__.py +0 -0
  1993. venv/Lib/site-packages/pip/_internal/resolution/legacy/resolver.py +0 -600
  1994. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/__init__.py +0 -0
  1995. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/base.py +0 -141
  1996. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/candidates.py +0 -556
  1997. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/factory.py +0 -731
  1998. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py +0 -155
  1999. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/provider.py +0 -248
  2000. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/reporter.py +0 -68
  2001. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/requirements.py +0 -166
  2002. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/resolver.py +0 -296
  2003. venv/Lib/site-packages/pip/_internal/self_outdated_check.py +0 -239
  2004. venv/Lib/site-packages/pip/_internal/utils/__init__.py +0 -0
  2005. venv/Lib/site-packages/pip/_internal/utils/_log.py +0 -38
  2006. venv/Lib/site-packages/pip/_internal/utils/appdirs.py +0 -52
  2007. venv/Lib/site-packages/pip/_internal/utils/compat.py +0 -63
  2008. venv/Lib/site-packages/pip/_internal/utils/compatibility_tags.py +0 -165
  2009. venv/Lib/site-packages/pip/_internal/utils/datetime.py +0 -11
  2010. venv/Lib/site-packages/pip/_internal/utils/deprecation.py +0 -188
  2011. venv/Lib/site-packages/pip/_internal/utils/direct_url_helpers.py +0 -87
  2012. venv/Lib/site-packages/pip/_internal/utils/distutils_args.py +0 -43
  2013. venv/Lib/site-packages/pip/_internal/utils/egg_link.py +0 -75
  2014. venv/Lib/site-packages/pip/_internal/utils/encoding.py +0 -36
  2015. venv/Lib/site-packages/pip/_internal/utils/entrypoints.py +0 -84
  2016. venv/Lib/site-packages/pip/_internal/utils/filesystem.py +0 -153
  2017. venv/Lib/site-packages/pip/_internal/utils/filetypes.py +0 -27
  2018. venv/Lib/site-packages/pip/_internal/utils/glibc.py +0 -88
  2019. venv/Lib/site-packages/pip/_internal/utils/hashes.py +0 -144
  2020. venv/Lib/site-packages/pip/_internal/utils/inject_securetransport.py +0 -35
  2021. venv/Lib/site-packages/pip/_internal/utils/logging.py +0 -348
  2022. venv/Lib/site-packages/pip/_internal/utils/misc.py +0 -723
  2023. venv/Lib/site-packages/pip/_internal/utils/models.py +0 -39
  2024. venv/Lib/site-packages/pip/_internal/utils/packaging.py +0 -57
  2025. venv/Lib/site-packages/pip/_internal/utils/setuptools_build.py +0 -195
  2026. venv/Lib/site-packages/pip/_internal/utils/subprocess.py +0 -260
  2027. venv/Lib/site-packages/pip/_internal/utils/temp_dir.py +0 -246
  2028. venv/Lib/site-packages/pip/_internal/utils/unpacking.py +0 -257
  2029. venv/Lib/site-packages/pip/_internal/utils/urls.py +0 -62
  2030. venv/Lib/site-packages/pip/_internal/utils/virtualenv.py +0 -104
  2031. venv/Lib/site-packages/pip/_internal/utils/wheel.py +0 -136
  2032. venv/Lib/site-packages/pip/_internal/vcs/__init__.py +0 -15
  2033. venv/Lib/site-packages/pip/_internal/vcs/bazaar.py +0 -112
  2034. venv/Lib/site-packages/pip/_internal/vcs/git.py +0 -526
  2035. venv/Lib/site-packages/pip/_internal/vcs/mercurial.py +0 -163
  2036. venv/Lib/site-packages/pip/_internal/vcs/subversion.py +0 -324
  2037. venv/Lib/site-packages/pip/_internal/vcs/versioncontrol.py +0 -705
  2038. venv/Lib/site-packages/pip/_internal/wheel_builder.py +0 -382
  2039. venv/Lib/site-packages/pip/_vendor/__init__.py +0 -120
  2040. venv/Lib/site-packages/pip/_vendor/cachecontrol/__init__.py +0 -18
  2041. venv/Lib/site-packages/pip/_vendor/cachecontrol/_cmd.py +0 -61
  2042. venv/Lib/site-packages/pip/_vendor/cachecontrol/adapter.py +0 -137
  2043. venv/Lib/site-packages/pip/_vendor/cachecontrol/cache.py +0 -65
  2044. venv/Lib/site-packages/pip/_vendor/cachecontrol/caches/__init__.py +0 -9
  2045. venv/Lib/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py +0 -188
  2046. venv/Lib/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py +0 -39
  2047. venv/Lib/site-packages/pip/_vendor/cachecontrol/compat.py +0 -32
  2048. venv/Lib/site-packages/pip/_vendor/cachecontrol/controller.py +0 -439
  2049. venv/Lib/site-packages/pip/_vendor/cachecontrol/filewrapper.py +0 -111
  2050. venv/Lib/site-packages/pip/_vendor/cachecontrol/heuristics.py +0 -139
  2051. venv/Lib/site-packages/pip/_vendor/cachecontrol/serialize.py +0 -190
  2052. venv/Lib/site-packages/pip/_vendor/cachecontrol/wrapper.py +0 -33
  2053. venv/Lib/site-packages/pip/_vendor/certifi/__init__.py +0 -4
  2054. venv/Lib/site-packages/pip/_vendor/certifi/__main__.py +0 -12
  2055. venv/Lib/site-packages/pip/_vendor/certifi/core.py +0 -108
  2056. venv/Lib/site-packages/pip/_vendor/chardet/__init__.py +0 -93
  2057. venv/Lib/site-packages/pip/_vendor/chardet/big5freq.py +0 -386
  2058. venv/Lib/site-packages/pip/_vendor/chardet/big5prober.py +0 -47
  2059. venv/Lib/site-packages/pip/_vendor/chardet/chardistribution.py +0 -259
  2060. venv/Lib/site-packages/pip/_vendor/chardet/charsetgroupprober.py +0 -109
  2061. venv/Lib/site-packages/pip/_vendor/chardet/charsetprober.py +0 -138
  2062. venv/Lib/site-packages/pip/_vendor/chardet/cli/__init__.py +0 -0
  2063. venv/Lib/site-packages/pip/_vendor/chardet/cli/chardetect.py +0 -86
  2064. venv/Lib/site-packages/pip/_vendor/chardet/codingstatemachine.py +0 -88
  2065. venv/Lib/site-packages/pip/_vendor/chardet/cp949prober.py +0 -49
  2066. venv/Lib/site-packages/pip/_vendor/chardet/enums.py +0 -82
  2067. venv/Lib/site-packages/pip/_vendor/chardet/escprober.py +0 -102
  2068. venv/Lib/site-packages/pip/_vendor/chardet/escsm.py +0 -260
  2069. venv/Lib/site-packages/pip/_vendor/chardet/eucjpprober.py +0 -95
  2070. venv/Lib/site-packages/pip/_vendor/chardet/euckrfreq.py +0 -196
  2071. venv/Lib/site-packages/pip/_vendor/chardet/euckrprober.py +0 -47
  2072. venv/Lib/site-packages/pip/_vendor/chardet/euctwfreq.py +0 -388
  2073. venv/Lib/site-packages/pip/_vendor/chardet/euctwprober.py +0 -47
  2074. venv/Lib/site-packages/pip/_vendor/chardet/gb2312freq.py +0 -284
  2075. venv/Lib/site-packages/pip/_vendor/chardet/gb2312prober.py +0 -47
  2076. venv/Lib/site-packages/pip/_vendor/chardet/hebrewprober.py +0 -302
  2077. venv/Lib/site-packages/pip/_vendor/chardet/jisfreq.py +0 -325
  2078. venv/Lib/site-packages/pip/_vendor/chardet/johabfreq.py +0 -2382
  2079. venv/Lib/site-packages/pip/_vendor/chardet/johabprober.py +0 -47
  2080. venv/Lib/site-packages/pip/_vendor/chardet/jpcntx.py +0 -237
  2081. venv/Lib/site-packages/pip/_vendor/chardet/langbulgarianmodel.py +0 -4649
  2082. venv/Lib/site-packages/pip/_vendor/chardet/langgreekmodel.py +0 -4397
  2083. venv/Lib/site-packages/pip/_vendor/chardet/langhebrewmodel.py +0 -4380
  2084. venv/Lib/site-packages/pip/_vendor/chardet/langhungarianmodel.py +0 -4649
  2085. venv/Lib/site-packages/pip/_vendor/chardet/langrussianmodel.py +0 -5725
  2086. venv/Lib/site-packages/pip/_vendor/chardet/langthaimodel.py +0 -4380
  2087. venv/Lib/site-packages/pip/_vendor/chardet/langturkishmodel.py +0 -4380
  2088. venv/Lib/site-packages/pip/_vendor/chardet/latin1prober.py +0 -145
  2089. venv/Lib/site-packages/pip/_vendor/chardet/mbcharsetprober.py +0 -95
  2090. venv/Lib/site-packages/pip/_vendor/chardet/mbcsgroupprober.py +0 -56
  2091. venv/Lib/site-packages/pip/_vendor/chardet/mbcssm.py +0 -660
  2092. venv/Lib/site-packages/pip/_vendor/chardet/metadata/__init__.py +0 -0
  2093. venv/Lib/site-packages/pip/_vendor/chardet/metadata/languages.py +0 -351
  2094. venv/Lib/site-packages/pip/_vendor/chardet/sbcharsetprober.py +0 -160
  2095. venv/Lib/site-packages/pip/_vendor/chardet/sbcsgroupprober.py +0 -88
  2096. venv/Lib/site-packages/pip/_vendor/chardet/sjisprober.py +0 -98
  2097. venv/Lib/site-packages/pip/_vendor/chardet/universaldetector.py +0 -328
  2098. venv/Lib/site-packages/pip/_vendor/chardet/utf1632prober.py +0 -223
  2099. venv/Lib/site-packages/pip/_vendor/chardet/utf8prober.py +0 -80
  2100. venv/Lib/site-packages/pip/_vendor/chardet/version.py +0 -9
  2101. venv/Lib/site-packages/pip/_vendor/colorama/__init__.py +0 -6
  2102. venv/Lib/site-packages/pip/_vendor/colorama/ansi.py +0 -102
  2103. venv/Lib/site-packages/pip/_vendor/colorama/ansitowin32.py +0 -266
  2104. venv/Lib/site-packages/pip/_vendor/colorama/initialise.py +0 -80
  2105. venv/Lib/site-packages/pip/_vendor/colorama/win32.py +0 -152
  2106. venv/Lib/site-packages/pip/_vendor/colorama/winterm.py +0 -169
  2107. venv/Lib/site-packages/pip/_vendor/distlib/__init__.py +0 -23
  2108. venv/Lib/site-packages/pip/_vendor/distlib/compat.py +0 -1116
  2109. venv/Lib/site-packages/pip/_vendor/distlib/database.py +0 -1350
  2110. venv/Lib/site-packages/pip/_vendor/distlib/index.py +0 -508
  2111. venv/Lib/site-packages/pip/_vendor/distlib/locators.py +0 -1300
  2112. venv/Lib/site-packages/pip/_vendor/distlib/manifest.py +0 -393
  2113. venv/Lib/site-packages/pip/_vendor/distlib/markers.py +0 -152
  2114. venv/Lib/site-packages/pip/_vendor/distlib/metadata.py +0 -1076
  2115. venv/Lib/site-packages/pip/_vendor/distlib/resources.py +0 -358
  2116. venv/Lib/site-packages/pip/_vendor/distlib/scripts.py +0 -437
  2117. venv/Lib/site-packages/pip/_vendor/distlib/util.py +0 -1932
  2118. venv/Lib/site-packages/pip/_vendor/distlib/version.py +0 -739
  2119. venv/Lib/site-packages/pip/_vendor/distlib/wheel.py +0 -1082
  2120. venv/Lib/site-packages/pip/_vendor/distro/__init__.py +0 -54
  2121. venv/Lib/site-packages/pip/_vendor/distro/__main__.py +0 -4
  2122. venv/Lib/site-packages/pip/_vendor/distro/distro.py +0 -1374
  2123. venv/Lib/site-packages/pip/_vendor/idna/__init__.py +0 -44
  2124. venv/Lib/site-packages/pip/_vendor/idna/codec.py +0 -112
  2125. venv/Lib/site-packages/pip/_vendor/idna/compat.py +0 -13
  2126. venv/Lib/site-packages/pip/_vendor/idna/core.py +0 -400
  2127. venv/Lib/site-packages/pip/_vendor/idna/idnadata.py +0 -2151
  2128. venv/Lib/site-packages/pip/_vendor/idna/intranges.py +0 -54
  2129. venv/Lib/site-packages/pip/_vendor/idna/package_data.py +0 -2
  2130. venv/Lib/site-packages/pip/_vendor/idna/uts46data.py +0 -8600
  2131. venv/Lib/site-packages/pip/_vendor/msgpack/__init__.py +0 -57
  2132. venv/Lib/site-packages/pip/_vendor/msgpack/exceptions.py +0 -48
  2133. venv/Lib/site-packages/pip/_vendor/msgpack/ext.py +0 -193
  2134. venv/Lib/site-packages/pip/_vendor/msgpack/fallback.py +0 -1010
  2135. venv/Lib/site-packages/pip/_vendor/packaging/__about__.py +0 -26
  2136. venv/Lib/site-packages/pip/_vendor/packaging/__init__.py +0 -25
  2137. venv/Lib/site-packages/pip/_vendor/packaging/_manylinux.py +0 -301
  2138. venv/Lib/site-packages/pip/_vendor/packaging/_musllinux.py +0 -136
  2139. venv/Lib/site-packages/pip/_vendor/packaging/_structures.py +0 -61
  2140. venv/Lib/site-packages/pip/_vendor/packaging/markers.py +0 -304
  2141. venv/Lib/site-packages/pip/_vendor/packaging/requirements.py +0 -146
  2142. venv/Lib/site-packages/pip/_vendor/packaging/specifiers.py +0 -802
  2143. venv/Lib/site-packages/pip/_vendor/packaging/tags.py +0 -487
  2144. venv/Lib/site-packages/pip/_vendor/packaging/utils.py +0 -136
  2145. venv/Lib/site-packages/pip/_vendor/packaging/version.py +0 -504
  2146. venv/Lib/site-packages/pip/_vendor/pep517/__init__.py +0 -6
  2147. venv/Lib/site-packages/pip/_vendor/pep517/_compat.py +0 -8
  2148. venv/Lib/site-packages/pip/_vendor/pep517/build.py +0 -126
  2149. venv/Lib/site-packages/pip/_vendor/pep517/check.py +0 -207
  2150. venv/Lib/site-packages/pip/_vendor/pep517/colorlog.py +0 -113
  2151. venv/Lib/site-packages/pip/_vendor/pep517/dirtools.py +0 -19
  2152. venv/Lib/site-packages/pip/_vendor/pep517/envbuild.py +0 -170
  2153. venv/Lib/site-packages/pip/_vendor/pep517/in_process/__init__.py +0 -26
  2154. venv/Lib/site-packages/pip/_vendor/pep517/in_process/_in_process.py +0 -351
  2155. venv/Lib/site-packages/pip/_vendor/pep517/meta.py +0 -93
  2156. venv/Lib/site-packages/pip/_vendor/pep517/wrappers.py +0 -362
  2157. venv/Lib/site-packages/pip/_vendor/pkg_resources/__init__.py +0 -3296
  2158. venv/Lib/site-packages/pip/_vendor/pkg_resources/py31compat.py +0 -23
  2159. venv/Lib/site-packages/pip/_vendor/platformdirs/__init__.py +0 -340
  2160. venv/Lib/site-packages/pip/_vendor/platformdirs/__main__.py +0 -46
  2161. venv/Lib/site-packages/pip/_vendor/platformdirs/android.py +0 -120
  2162. venv/Lib/site-packages/pip/_vendor/platformdirs/api.py +0 -156
  2163. venv/Lib/site-packages/pip/_vendor/platformdirs/macos.py +0 -64
  2164. venv/Lib/site-packages/pip/_vendor/platformdirs/unix.py +0 -181
  2165. venv/Lib/site-packages/pip/_vendor/platformdirs/version.py +0 -4
  2166. venv/Lib/site-packages/pip/_vendor/platformdirs/windows.py +0 -182
  2167. venv/Lib/site-packages/pip/_vendor/pygments/__init__.py +0 -82
  2168. venv/Lib/site-packages/pip/_vendor/pygments/__main__.py +0 -17
  2169. venv/Lib/site-packages/pip/_vendor/pygments/cmdline.py +0 -668
  2170. venv/Lib/site-packages/pip/_vendor/pygments/console.py +0 -70
  2171. venv/Lib/site-packages/pip/_vendor/pygments/filter.py +0 -71
  2172. venv/Lib/site-packages/pip/_vendor/pygments/filters/__init__.py +0 -940
  2173. venv/Lib/site-packages/pip/_vendor/pygments/formatter.py +0 -94
  2174. venv/Lib/site-packages/pip/_vendor/pygments/formatters/__init__.py +0 -143
  2175. venv/Lib/site-packages/pip/_vendor/pygments/formatters/_mapping.py +0 -23
  2176. venv/Lib/site-packages/pip/_vendor/pygments/formatters/bbcode.py +0 -108
  2177. venv/Lib/site-packages/pip/_vendor/pygments/formatters/groff.py +0 -170
  2178. venv/Lib/site-packages/pip/_vendor/pygments/formatters/html.py +0 -989
  2179. venv/Lib/site-packages/pip/_vendor/pygments/formatters/img.py +0 -645
  2180. venv/Lib/site-packages/pip/_vendor/pygments/formatters/irc.py +0 -179
  2181. venv/Lib/site-packages/pip/_vendor/pygments/formatters/latex.py +0 -521
  2182. venv/Lib/site-packages/pip/_vendor/pygments/formatters/other.py +0 -161
  2183. venv/Lib/site-packages/pip/_vendor/pygments/formatters/pangomarkup.py +0 -83
  2184. venv/Lib/site-packages/pip/_vendor/pygments/formatters/rtf.py +0 -146
  2185. venv/Lib/site-packages/pip/_vendor/pygments/formatters/svg.py +0 -188
  2186. venv/Lib/site-packages/pip/_vendor/pygments/formatters/terminal.py +0 -127
  2187. venv/Lib/site-packages/pip/_vendor/pygments/formatters/terminal256.py +0 -338
  2188. venv/Lib/site-packages/pip/_vendor/pygments/lexer.py +0 -882
  2189. venv/Lib/site-packages/pip/_vendor/pygments/lexers/__init__.py +0 -335
  2190. venv/Lib/site-packages/pip/_vendor/pygments/lexers/_mapping.py +0 -541
  2191. venv/Lib/site-packages/pip/_vendor/pygments/lexers/python.py +0 -1204
  2192. venv/Lib/site-packages/pip/_vendor/pygments/modeline.py +0 -43
  2193. venv/Lib/site-packages/pip/_vendor/pygments/plugin.py +0 -88
  2194. venv/Lib/site-packages/pip/_vendor/pygments/regexopt.py +0 -91
  2195. venv/Lib/site-packages/pip/_vendor/pygments/scanner.py +0 -104
  2196. venv/Lib/site-packages/pip/_vendor/pygments/sphinxext.py +0 -155
  2197. venv/Lib/site-packages/pip/_vendor/pygments/style.py +0 -197
  2198. venv/Lib/site-packages/pip/_vendor/pygments/styles/__init__.py +0 -97
  2199. venv/Lib/site-packages/pip/_vendor/pygments/token.py +0 -213
  2200. venv/Lib/site-packages/pip/_vendor/pygments/unistring.py +0 -153
  2201. venv/Lib/site-packages/pip/_vendor/pygments/util.py +0 -308
  2202. venv/Lib/site-packages/pip/_vendor/pyparsing/__init__.py +0 -331
  2203. venv/Lib/site-packages/pip/_vendor/pyparsing/actions.py +0 -207
  2204. venv/Lib/site-packages/pip/_vendor/pyparsing/common.py +0 -424
  2205. venv/Lib/site-packages/pip/_vendor/pyparsing/core.py +0 -5814
  2206. venv/Lib/site-packages/pip/_vendor/pyparsing/diagram/__init__.py +0 -642
  2207. venv/Lib/site-packages/pip/_vendor/pyparsing/exceptions.py +0 -267
  2208. venv/Lib/site-packages/pip/_vendor/pyparsing/helpers.py +0 -1088
  2209. venv/Lib/site-packages/pip/_vendor/pyparsing/results.py +0 -760
  2210. venv/Lib/site-packages/pip/_vendor/pyparsing/testing.py +0 -331
  2211. venv/Lib/site-packages/pip/_vendor/pyparsing/unicode.py +0 -352
  2212. venv/Lib/site-packages/pip/_vendor/pyparsing/util.py +0 -235
  2213. venv/Lib/site-packages/pip/_vendor/requests/__init__.py +0 -182
  2214. venv/Lib/site-packages/pip/_vendor/requests/__version__.py +0 -14
  2215. venv/Lib/site-packages/pip/_vendor/requests/_internal_utils.py +0 -48
  2216. venv/Lib/site-packages/pip/_vendor/requests/adapters.py +0 -584
  2217. venv/Lib/site-packages/pip/_vendor/requests/api.py +0 -157
  2218. venv/Lib/site-packages/pip/_vendor/requests/auth.py +0 -315
  2219. venv/Lib/site-packages/pip/_vendor/requests/certs.py +0 -24
  2220. venv/Lib/site-packages/pip/_vendor/requests/compat.py +0 -67
  2221. venv/Lib/site-packages/pip/_vendor/requests/cookies.py +0 -561
  2222. venv/Lib/site-packages/pip/_vendor/requests/exceptions.py +0 -141
  2223. venv/Lib/site-packages/pip/_vendor/requests/help.py +0 -131
  2224. venv/Lib/site-packages/pip/_vendor/requests/hooks.py +0 -33
  2225. venv/Lib/site-packages/pip/_vendor/requests/models.py +0 -1034
  2226. venv/Lib/site-packages/pip/_vendor/requests/packages.py +0 -16
  2227. venv/Lib/site-packages/pip/_vendor/requests/sessions.py +0 -831
  2228. venv/Lib/site-packages/pip/_vendor/requests/status_codes.py +0 -128
  2229. venv/Lib/site-packages/pip/_vendor/requests/structures.py +0 -99
  2230. venv/Lib/site-packages/pip/_vendor/requests/utils.py +0 -1086
  2231. venv/Lib/site-packages/pip/_vendor/resolvelib/__init__.py +0 -26
  2232. venv/Lib/site-packages/pip/_vendor/resolvelib/compat/__init__.py +0 -0
  2233. venv/Lib/site-packages/pip/_vendor/resolvelib/compat/collections_abc.py +0 -6
  2234. venv/Lib/site-packages/pip/_vendor/resolvelib/providers.py +0 -133
  2235. venv/Lib/site-packages/pip/_vendor/resolvelib/reporters.py +0 -43
  2236. venv/Lib/site-packages/pip/_vendor/resolvelib/resolvers.py +0 -482
  2237. venv/Lib/site-packages/pip/_vendor/resolvelib/structs.py +0 -165
  2238. venv/Lib/site-packages/pip/_vendor/rich/__init__.py +0 -176
  2239. venv/Lib/site-packages/pip/_vendor/rich/__main__.py +0 -282
  2240. venv/Lib/site-packages/pip/_vendor/rich/_cell_widths.py +0 -451
  2241. venv/Lib/site-packages/pip/_vendor/rich/_emoji_codes.py +0 -3610
  2242. venv/Lib/site-packages/pip/_vendor/rich/_emoji_replace.py +0 -32
  2243. venv/Lib/site-packages/pip/_vendor/rich/_export_format.py +0 -78
  2244. venv/Lib/site-packages/pip/_vendor/rich/_extension.py +0 -10
  2245. venv/Lib/site-packages/pip/_vendor/rich/_inspect.py +0 -270
  2246. venv/Lib/site-packages/pip/_vendor/rich/_log_render.py +0 -94
  2247. venv/Lib/site-packages/pip/_vendor/rich/_loop.py +0 -43
  2248. venv/Lib/site-packages/pip/_vendor/rich/_palettes.py +0 -309
  2249. venv/Lib/site-packages/pip/_vendor/rich/_pick.py +0 -17
  2250. venv/Lib/site-packages/pip/_vendor/rich/_ratio.py +0 -160
  2251. venv/Lib/site-packages/pip/_vendor/rich/_spinners.py +0 -482
  2252. venv/Lib/site-packages/pip/_vendor/rich/_stack.py +0 -16
  2253. venv/Lib/site-packages/pip/_vendor/rich/_timer.py +0 -19
  2254. venv/Lib/site-packages/pip/_vendor/rich/_win32_console.py +0 -662
  2255. venv/Lib/site-packages/pip/_vendor/rich/_windows.py +0 -72
  2256. venv/Lib/site-packages/pip/_vendor/rich/_windows_renderer.py +0 -56
  2257. venv/Lib/site-packages/pip/_vendor/rich/_wrap.py +0 -56
  2258. venv/Lib/site-packages/pip/_vendor/rich/abc.py +0 -33
  2259. venv/Lib/site-packages/pip/_vendor/rich/align.py +0 -311
  2260. venv/Lib/site-packages/pip/_vendor/rich/ansi.py +0 -237
  2261. venv/Lib/site-packages/pip/_vendor/rich/bar.py +0 -94
  2262. venv/Lib/site-packages/pip/_vendor/rich/box.py +0 -517
  2263. venv/Lib/site-packages/pip/_vendor/rich/cells.py +0 -154
  2264. venv/Lib/site-packages/pip/_vendor/rich/color.py +0 -615
  2265. venv/Lib/site-packages/pip/_vendor/rich/color_triplet.py +0 -38
  2266. venv/Lib/site-packages/pip/_vendor/rich/columns.py +0 -187
  2267. venv/Lib/site-packages/pip/_vendor/rich/console.py +0 -2572
  2268. venv/Lib/site-packages/pip/_vendor/rich/constrain.py +0 -37
  2269. venv/Lib/site-packages/pip/_vendor/rich/containers.py +0 -167
  2270. venv/Lib/site-packages/pip/_vendor/rich/control.py +0 -225
  2271. venv/Lib/site-packages/pip/_vendor/rich/default_styles.py +0 -188
  2272. venv/Lib/site-packages/pip/_vendor/rich/diagnose.py +0 -37
  2273. venv/Lib/site-packages/pip/_vendor/rich/emoji.py +0 -96
  2274. venv/Lib/site-packages/pip/_vendor/rich/errors.py +0 -34
  2275. venv/Lib/site-packages/pip/_vendor/rich/file_proxy.py +0 -54
  2276. venv/Lib/site-packages/pip/_vendor/rich/filesize.py +0 -89
  2277. venv/Lib/site-packages/pip/_vendor/rich/highlighter.py +0 -232
  2278. venv/Lib/site-packages/pip/_vendor/rich/json.py +0 -140
  2279. venv/Lib/site-packages/pip/_vendor/rich/jupyter.py +0 -101
  2280. venv/Lib/site-packages/pip/_vendor/rich/layout.py +0 -445
  2281. venv/Lib/site-packages/pip/_vendor/rich/live.py +0 -373
  2282. venv/Lib/site-packages/pip/_vendor/rich/live_render.py +0 -113
  2283. venv/Lib/site-packages/pip/_vendor/rich/logging.py +0 -280
  2284. venv/Lib/site-packages/pip/_vendor/rich/markup.py +0 -246
  2285. venv/Lib/site-packages/pip/_vendor/rich/measure.py +0 -151
  2286. venv/Lib/site-packages/pip/_vendor/rich/padding.py +0 -141
  2287. venv/Lib/site-packages/pip/_vendor/rich/pager.py +0 -34
  2288. venv/Lib/site-packages/pip/_vendor/rich/palette.py +0 -100
  2289. venv/Lib/site-packages/pip/_vendor/rich/panel.py +0 -251
  2290. venv/Lib/site-packages/pip/_vendor/rich/pretty.py +0 -1010
  2291. venv/Lib/site-packages/pip/_vendor/rich/progress.py +0 -1703
  2292. venv/Lib/site-packages/pip/_vendor/rich/progress_bar.py +0 -224
  2293. venv/Lib/site-packages/pip/_vendor/rich/prompt.py +0 -376
  2294. venv/Lib/site-packages/pip/_vendor/rich/protocol.py +0 -42
  2295. venv/Lib/site-packages/pip/_vendor/rich/region.py +0 -10
  2296. venv/Lib/site-packages/pip/_vendor/rich/repr.py +0 -152
  2297. venv/Lib/site-packages/pip/_vendor/rich/rule.py +0 -134
  2298. venv/Lib/site-packages/pip/_vendor/rich/scope.py +0 -86
  2299. venv/Lib/site-packages/pip/_vendor/rich/screen.py +0 -54
  2300. venv/Lib/site-packages/pip/_vendor/rich/segment.py +0 -739
  2301. venv/Lib/site-packages/pip/_vendor/rich/spinner.py +0 -136
  2302. venv/Lib/site-packages/pip/_vendor/rich/status.py +0 -132
  2303. venv/Lib/site-packages/pip/_vendor/rich/style.py +0 -771
  2304. venv/Lib/site-packages/pip/_vendor/rich/styled.py +0 -42
  2305. venv/Lib/site-packages/pip/_vendor/rich/syntax.py +0 -934
  2306. venv/Lib/site-packages/pip/_vendor/rich/table.py +0 -996
  2307. venv/Lib/site-packages/pip/_vendor/rich/terminal_theme.py +0 -153
  2308. venv/Lib/site-packages/pip/_vendor/rich/text.py +0 -1286
  2309. venv/Lib/site-packages/pip/_vendor/rich/theme.py +0 -112
  2310. venv/Lib/site-packages/pip/_vendor/rich/themes.py +0 -5
  2311. venv/Lib/site-packages/pip/_vendor/rich/traceback.py +0 -679
  2312. venv/Lib/site-packages/pip/_vendor/rich/tree.py +0 -251
  2313. venv/Lib/site-packages/pip/_vendor/six.py +0 -998
  2314. venv/Lib/site-packages/pip/_vendor/tenacity/__init__.py +0 -519
  2315. venv/Lib/site-packages/pip/_vendor/tenacity/_asyncio.py +0 -92
  2316. venv/Lib/site-packages/pip/_vendor/tenacity/_utils.py +0 -68
  2317. venv/Lib/site-packages/pip/_vendor/tenacity/after.py +0 -46
  2318. venv/Lib/site-packages/pip/_vendor/tenacity/before.py +0 -41
  2319. venv/Lib/site-packages/pip/_vendor/tenacity/before_sleep.py +0 -58
  2320. venv/Lib/site-packages/pip/_vendor/tenacity/nap.py +0 -43
  2321. venv/Lib/site-packages/pip/_vendor/tenacity/retry.py +0 -240
  2322. venv/Lib/site-packages/pip/_vendor/tenacity/stop.py +0 -96
  2323. venv/Lib/site-packages/pip/_vendor/tenacity/tornadoweb.py +0 -59
  2324. venv/Lib/site-packages/pip/_vendor/tenacity/wait.py +0 -232
  2325. venv/Lib/site-packages/pip/_vendor/tomli/__init__.py +0 -11
  2326. venv/Lib/site-packages/pip/_vendor/tomli/_parser.py +0 -691
  2327. venv/Lib/site-packages/pip/_vendor/tomli/_re.py +0 -107
  2328. venv/Lib/site-packages/pip/_vendor/tomli/_types.py +0 -10
  2329. venv/Lib/site-packages/pip/_vendor/typing_extensions.py +0 -2209
  2330. venv/Lib/site-packages/pip/_vendor/urllib3/__init__.py +0 -102
  2331. venv/Lib/site-packages/pip/_vendor/urllib3/_collections.py +0 -337
  2332. venv/Lib/site-packages/pip/_vendor/urllib3/_version.py +0 -2
  2333. venv/Lib/site-packages/pip/_vendor/urllib3/connection.py +0 -567
  2334. venv/Lib/site-packages/pip/_vendor/urllib3/connectionpool.py +0 -1110
  2335. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/__init__.py +0 -0
  2336. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_appengine_environ.py +0 -36
  2337. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py +0 -0
  2338. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/bindings.py +0 -519
  2339. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/low_level.py +0 -397
  2340. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/appengine.py +0 -314
  2341. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/ntlmpool.py +0 -130
  2342. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py +0 -519
  2343. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/securetransport.py +0 -921
  2344. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/socks.py +0 -216
  2345. venv/Lib/site-packages/pip/_vendor/urllib3/exceptions.py +0 -323
  2346. venv/Lib/site-packages/pip/_vendor/urllib3/fields.py +0 -274
  2347. venv/Lib/site-packages/pip/_vendor/urllib3/filepost.py +0 -98
  2348. venv/Lib/site-packages/pip/_vendor/urllib3/packages/__init__.py +0 -0
  2349. venv/Lib/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py +0 -0
  2350. venv/Lib/site-packages/pip/_vendor/urllib3/packages/backports/makefile.py +0 -51
  2351. venv/Lib/site-packages/pip/_vendor/urllib3/packages/six.py +0 -1076
  2352. venv/Lib/site-packages/pip/_vendor/urllib3/poolmanager.py +0 -537
  2353. venv/Lib/site-packages/pip/_vendor/urllib3/request.py +0 -170
  2354. venv/Lib/site-packages/pip/_vendor/urllib3/response.py +0 -866
  2355. venv/Lib/site-packages/pip/_vendor/urllib3/util/__init__.py +0 -49
  2356. venv/Lib/site-packages/pip/_vendor/urllib3/util/connection.py +0 -149
  2357. venv/Lib/site-packages/pip/_vendor/urllib3/util/proxy.py +0 -57
  2358. venv/Lib/site-packages/pip/_vendor/urllib3/util/queue.py +0 -22
  2359. venv/Lib/site-packages/pip/_vendor/urllib3/util/request.py +0 -137
  2360. venv/Lib/site-packages/pip/_vendor/urllib3/util/response.py +0 -107
  2361. venv/Lib/site-packages/pip/_vendor/urllib3/util/retry.py +0 -620
  2362. venv/Lib/site-packages/pip/_vendor/urllib3/util/ssl_.py +0 -495
  2363. venv/Lib/site-packages/pip/_vendor/urllib3/util/ssl_match_hostname.py +0 -159
  2364. venv/Lib/site-packages/pip/_vendor/urllib3/util/ssltransport.py +0 -221
  2365. venv/Lib/site-packages/pip/_vendor/urllib3/util/timeout.py +0 -268
  2366. venv/Lib/site-packages/pip/_vendor/urllib3/util/url.py +0 -435
  2367. venv/Lib/site-packages/pip/_vendor/urllib3/util/wait.py +0 -152
  2368. venv/Lib/site-packages/pip/_vendor/webencodings/__init__.py +0 -342
  2369. venv/Lib/site-packages/pip/_vendor/webencodings/labels.py +0 -231
  2370. venv/Lib/site-packages/pip/_vendor/webencodings/mklabels.py +0 -59
  2371. venv/Lib/site-packages/pip/_vendor/webencodings/tests.py +0 -153
  2372. venv/Lib/site-packages/pip/_vendor/webencodings/x_user_defined.py +0 -325
  2373. venv/Lib/site-packages/pkg_resources/__init__.py +0 -3357
  2374. venv/Lib/site-packages/pkg_resources/_vendor/__init__.py +0 -0
  2375. venv/Lib/site-packages/pkg_resources/_vendor/importlib_resources/__init__.py +0 -36
  2376. venv/Lib/site-packages/pkg_resources/_vendor/importlib_resources/_adapters.py +0 -170
  2377. venv/Lib/site-packages/pkg_resources/_vendor/importlib_resources/_common.py +0 -207
  2378. venv/Lib/site-packages/pkg_resources/_vendor/importlib_resources/_compat.py +0 -108
  2379. venv/Lib/site-packages/pkg_resources/_vendor/importlib_resources/_itertools.py +0 -35
  2380. venv/Lib/site-packages/pkg_resources/_vendor/importlib_resources/_legacy.py +0 -120
  2381. venv/Lib/site-packages/pkg_resources/_vendor/importlib_resources/abc.py +0 -170
  2382. venv/Lib/site-packages/pkg_resources/_vendor/importlib_resources/readers.py +0 -120
  2383. venv/Lib/site-packages/pkg_resources/_vendor/importlib_resources/simple.py +0 -106
  2384. venv/Lib/site-packages/pkg_resources/_vendor/jaraco/__init__.py +0 -0
  2385. venv/Lib/site-packages/pkg_resources/_vendor/jaraco/context.py +0 -288
  2386. venv/Lib/site-packages/pkg_resources/_vendor/jaraco/functools.py +0 -525
  2387. venv/Lib/site-packages/pkg_resources/_vendor/jaraco/text/__init__.py +0 -599
  2388. venv/Lib/site-packages/pkg_resources/_vendor/more_itertools/__init__.py +0 -6
  2389. venv/Lib/site-packages/pkg_resources/_vendor/more_itertools/more.py +0 -4346
  2390. venv/Lib/site-packages/pkg_resources/_vendor/more_itertools/recipes.py +0 -841
  2391. venv/Lib/site-packages/pkg_resources/_vendor/packaging/__init__.py +0 -15
  2392. venv/Lib/site-packages/pkg_resources/_vendor/packaging/_elffile.py +0 -108
  2393. venv/Lib/site-packages/pkg_resources/_vendor/packaging/_manylinux.py +0 -238
  2394. venv/Lib/site-packages/pkg_resources/_vendor/packaging/_musllinux.py +0 -80
  2395. venv/Lib/site-packages/pkg_resources/_vendor/packaging/_parser.py +0 -328
  2396. venv/Lib/site-packages/pkg_resources/_vendor/packaging/_structures.py +0 -61
  2397. venv/Lib/site-packages/pkg_resources/_vendor/packaging/_tokenizer.py +0 -188
  2398. venv/Lib/site-packages/pkg_resources/_vendor/packaging/markers.py +0 -245
  2399. venv/Lib/site-packages/pkg_resources/_vendor/packaging/requirements.py +0 -95
  2400. venv/Lib/site-packages/pkg_resources/_vendor/packaging/specifiers.py +0 -1005
  2401. venv/Lib/site-packages/pkg_resources/_vendor/packaging/tags.py +0 -546
  2402. venv/Lib/site-packages/pkg_resources/_vendor/packaging/utils.py +0 -141
  2403. venv/Lib/site-packages/pkg_resources/_vendor/packaging/version.py +0 -563
  2404. venv/Lib/site-packages/pkg_resources/_vendor/platformdirs/__init__.py +0 -342
  2405. venv/Lib/site-packages/pkg_resources/_vendor/platformdirs/__main__.py +0 -46
  2406. venv/Lib/site-packages/pkg_resources/_vendor/platformdirs/android.py +0 -120
  2407. venv/Lib/site-packages/pkg_resources/_vendor/platformdirs/api.py +0 -156
  2408. venv/Lib/site-packages/pkg_resources/_vendor/platformdirs/macos.py +0 -64
  2409. venv/Lib/site-packages/pkg_resources/_vendor/platformdirs/unix.py +0 -181
  2410. venv/Lib/site-packages/pkg_resources/_vendor/platformdirs/version.py +0 -4
  2411. venv/Lib/site-packages/pkg_resources/_vendor/platformdirs/windows.py +0 -184
  2412. venv/Lib/site-packages/pkg_resources/_vendor/typing_extensions.py +0 -2209
  2413. venv/Lib/site-packages/pkg_resources/_vendor/zipp.py +0 -329
  2414. venv/Lib/site-packages/pkg_resources/extern/__init__.py +0 -80
  2415. venv/Lib/site-packages/pkginfo/__init__.py +0 -9
  2416. venv/Lib/site-packages/pkginfo/bdist.py +0 -39
  2417. venv/Lib/site-packages/pkginfo/commandline.py +0 -229
  2418. venv/Lib/site-packages/pkginfo/develop.py +0 -46
  2419. venv/Lib/site-packages/pkginfo/distribution.py +0 -162
  2420. venv/Lib/site-packages/pkginfo/index.py +0 -15
  2421. venv/Lib/site-packages/pkginfo/installed.py +0 -62
  2422. venv/Lib/site-packages/pkginfo/sdist.py +0 -75
  2423. venv/Lib/site-packages/pkginfo/tests/__init__.py +0 -37
  2424. venv/Lib/site-packages/pkginfo/tests/test_bdist.py +0 -60
  2425. venv/Lib/site-packages/pkginfo/tests/test_commandline.py +0 -345
  2426. venv/Lib/site-packages/pkginfo/tests/test_develop.py +0 -27
  2427. venv/Lib/site-packages/pkginfo/tests/test_distribution.py +0 -477
  2428. venv/Lib/site-packages/pkginfo/tests/test_index.py +0 -76
  2429. venv/Lib/site-packages/pkginfo/tests/test_installed.py +0 -139
  2430. venv/Lib/site-packages/pkginfo/tests/test_sdist.py +0 -156
  2431. venv/Lib/site-packages/pkginfo/tests/test_utils.py +0 -176
  2432. venv/Lib/site-packages/pkginfo/tests/test_wheel.py +0 -117
  2433. venv/Lib/site-packages/pkginfo/utils.py +0 -62
  2434. venv/Lib/site-packages/pkginfo/wheel.py +0 -55
  2435. venv/Lib/site-packages/pygments/__init__.py +0 -82
  2436. venv/Lib/site-packages/pygments/__main__.py +0 -17
  2437. venv/Lib/site-packages/pygments/cmdline.py +0 -668
  2438. venv/Lib/site-packages/pygments/console.py +0 -70
  2439. venv/Lib/site-packages/pygments/filter.py +0 -71
  2440. venv/Lib/site-packages/pygments/filters/__init__.py +0 -940
  2441. venv/Lib/site-packages/pygments/formatter.py +0 -94
  2442. venv/Lib/site-packages/pygments/formatters/__init__.py +0 -142
  2443. venv/Lib/site-packages/pygments/formatters/_mapping.py +0 -23
  2444. venv/Lib/site-packages/pygments/formatters/bbcode.py +0 -108
  2445. venv/Lib/site-packages/pygments/formatters/groff.py +0 -170
  2446. venv/Lib/site-packages/pygments/formatters/html.py +0 -991
  2447. venv/Lib/site-packages/pygments/formatters/img.py +0 -645
  2448. venv/Lib/site-packages/pygments/formatters/irc.py +0 -154
  2449. venv/Lib/site-packages/pygments/formatters/latex.py +0 -521
  2450. venv/Lib/site-packages/pygments/formatters/other.py +0 -161
  2451. venv/Lib/site-packages/pygments/formatters/pangomarkup.py +0 -83
  2452. venv/Lib/site-packages/pygments/formatters/rtf.py +0 -146
  2453. venv/Lib/site-packages/pygments/formatters/svg.py +0 -188
  2454. venv/Lib/site-packages/pygments/formatters/terminal.py +0 -127
  2455. venv/Lib/site-packages/pygments/formatters/terminal256.py +0 -338
  2456. venv/Lib/site-packages/pygments/lexer.py +0 -883
  2457. venv/Lib/site-packages/pygments/lexers/__init__.py +0 -334
  2458. venv/Lib/site-packages/pygments/lexers/_ada_builtins.py +0 -103
  2459. venv/Lib/site-packages/pygments/lexers/_asy_builtins.py +0 -1644
  2460. venv/Lib/site-packages/pygments/lexers/_cl_builtins.py +0 -231
  2461. venv/Lib/site-packages/pygments/lexers/_cocoa_builtins.py +0 -75
  2462. venv/Lib/site-packages/pygments/lexers/_csound_builtins.py +0 -1780
  2463. venv/Lib/site-packages/pygments/lexers/_css_builtins.py +0 -558
  2464. venv/Lib/site-packages/pygments/lexers/_julia_builtins.py +0 -411
  2465. venv/Lib/site-packages/pygments/lexers/_lasso_builtins.py +0 -5326
  2466. venv/Lib/site-packages/pygments/lexers/_lilypond_builtins.py +0 -4886
  2467. venv/Lib/site-packages/pygments/lexers/_lua_builtins.py +0 -285
  2468. venv/Lib/site-packages/pygments/lexers/_mapping.py +0 -553
  2469. venv/Lib/site-packages/pygments/lexers/_mql_builtins.py +0 -1171
  2470. venv/Lib/site-packages/pygments/lexers/_mysql_builtins.py +0 -1335
  2471. venv/Lib/site-packages/pygments/lexers/_openedge_builtins.py +0 -2600
  2472. venv/Lib/site-packages/pygments/lexers/_php_builtins.py +0 -3325
  2473. venv/Lib/site-packages/pygments/lexers/_postgres_builtins.py +0 -684
  2474. venv/Lib/site-packages/pygments/lexers/_qlik_builtins.py +0 -666
  2475. venv/Lib/site-packages/pygments/lexers/_scheme_builtins.py +0 -1609
  2476. venv/Lib/site-packages/pygments/lexers/_scilab_builtins.py +0 -3093
  2477. venv/Lib/site-packages/pygments/lexers/_sourcemod_builtins.py +0 -1151
  2478. venv/Lib/site-packages/pygments/lexers/_stan_builtins.py +0 -648
  2479. venv/Lib/site-packages/pygments/lexers/_stata_builtins.py +0 -457
  2480. venv/Lib/site-packages/pygments/lexers/_tsql_builtins.py +0 -1003
  2481. venv/Lib/site-packages/pygments/lexers/_usd_builtins.py +0 -112
  2482. venv/Lib/site-packages/pygments/lexers/_vbscript_builtins.py +0 -279
  2483. venv/Lib/site-packages/pygments/lexers/_vim_builtins.py +0 -1938
  2484. venv/Lib/site-packages/pygments/lexers/actionscript.py +0 -245
  2485. venv/Lib/site-packages/pygments/lexers/ada.py +0 -144
  2486. venv/Lib/site-packages/pygments/lexers/agile.py +0 -23
  2487. venv/Lib/site-packages/pygments/lexers/algebra.py +0 -302
  2488. venv/Lib/site-packages/pygments/lexers/ambient.py +0 -76
  2489. venv/Lib/site-packages/pygments/lexers/amdgpu.py +0 -53
  2490. venv/Lib/site-packages/pygments/lexers/ampl.py +0 -88
  2491. venv/Lib/site-packages/pygments/lexers/apdlexer.py +0 -447
  2492. venv/Lib/site-packages/pygments/lexers/apl.py +0 -104
  2493. venv/Lib/site-packages/pygments/lexers/archetype.py +0 -319
  2494. venv/Lib/site-packages/pygments/lexers/arrow.py +0 -117
  2495. venv/Lib/site-packages/pygments/lexers/arturo.py +0 -250
  2496. venv/Lib/site-packages/pygments/lexers/asc.py +0 -55
  2497. venv/Lib/site-packages/pygments/lexers/asm.py +0 -1037
  2498. venv/Lib/site-packages/pygments/lexers/automation.py +0 -381
  2499. venv/Lib/site-packages/pygments/lexers/bare.py +0 -102
  2500. venv/Lib/site-packages/pygments/lexers/basic.py +0 -665
  2501. venv/Lib/site-packages/pygments/lexers/bdd.py +0 -58
  2502. venv/Lib/site-packages/pygments/lexers/berry.py +0 -99
  2503. venv/Lib/site-packages/pygments/lexers/bibtex.py +0 -159
  2504. venv/Lib/site-packages/pygments/lexers/boa.py +0 -97
  2505. venv/Lib/site-packages/pygments/lexers/business.py +0 -626
  2506. venv/Lib/site-packages/pygments/lexers/c_cpp.py +0 -409
  2507. venv/Lib/site-packages/pygments/lexers/c_like.py +0 -666
  2508. venv/Lib/site-packages/pygments/lexers/capnproto.py +0 -75
  2509. venv/Lib/site-packages/pygments/lexers/cddl.py +0 -173
  2510. venv/Lib/site-packages/pygments/lexers/chapel.py +0 -136
  2511. venv/Lib/site-packages/pygments/lexers/clean.py +0 -179
  2512. venv/Lib/site-packages/pygments/lexers/comal.py +0 -80
  2513. venv/Lib/site-packages/pygments/lexers/compiled.py +0 -34
  2514. venv/Lib/site-packages/pygments/lexers/configs.py +0 -1174
  2515. venv/Lib/site-packages/pygments/lexers/console.py +0 -114
  2516. venv/Lib/site-packages/pygments/lexers/cplint.py +0 -44
  2517. venv/Lib/site-packages/pygments/lexers/crystal.py +0 -365
  2518. venv/Lib/site-packages/pygments/lexers/csound.py +0 -468
  2519. venv/Lib/site-packages/pygments/lexers/css.py +0 -602
  2520. venv/Lib/site-packages/pygments/lexers/d.py +0 -258
  2521. venv/Lib/site-packages/pygments/lexers/dalvik.py +0 -127
  2522. venv/Lib/site-packages/pygments/lexers/data.py +0 -767
  2523. venv/Lib/site-packages/pygments/lexers/devicetree.py +0 -109
  2524. venv/Lib/site-packages/pygments/lexers/diff.py +0 -165
  2525. venv/Lib/site-packages/pygments/lexers/dotnet.py +0 -729
  2526. venv/Lib/site-packages/pygments/lexers/dsls.py +0 -981
  2527. venv/Lib/site-packages/pygments/lexers/dylan.py +0 -287
  2528. venv/Lib/site-packages/pygments/lexers/ecl.py +0 -145
  2529. venv/Lib/site-packages/pygments/lexers/eiffel.py +0 -69
  2530. venv/Lib/site-packages/pygments/lexers/elm.py +0 -124
  2531. venv/Lib/site-packages/pygments/lexers/elpi.py +0 -165
  2532. venv/Lib/site-packages/pygments/lexers/email.py +0 -132
  2533. venv/Lib/site-packages/pygments/lexers/erlang.py +0 -528
  2534. venv/Lib/site-packages/pygments/lexers/esoteric.py +0 -301
  2535. venv/Lib/site-packages/pygments/lexers/ezhil.py +0 -77
  2536. venv/Lib/site-packages/pygments/lexers/factor.py +0 -364
  2537. venv/Lib/site-packages/pygments/lexers/fantom.py +0 -251
  2538. venv/Lib/site-packages/pygments/lexers/felix.py +0 -276
  2539. venv/Lib/site-packages/pygments/lexers/fift.py +0 -67
  2540. venv/Lib/site-packages/pygments/lexers/floscript.py +0 -82
  2541. venv/Lib/site-packages/pygments/lexers/forth.py +0 -179
  2542. venv/Lib/site-packages/pygments/lexers/fortran.py +0 -213
  2543. venv/Lib/site-packages/pygments/lexers/foxpro.py +0 -427
  2544. venv/Lib/site-packages/pygments/lexers/freefem.py +0 -894
  2545. venv/Lib/site-packages/pygments/lexers/func.py +0 -108
  2546. venv/Lib/site-packages/pygments/lexers/functional.py +0 -20
  2547. venv/Lib/site-packages/pygments/lexers/futhark.py +0 -106
  2548. venv/Lib/site-packages/pygments/lexers/gcodelexer.py +0 -35
  2549. venv/Lib/site-packages/pygments/lexers/gdscript.py +0 -188
  2550. venv/Lib/site-packages/pygments/lexers/go.py +0 -98
  2551. venv/Lib/site-packages/pygments/lexers/grammar_notation.py +0 -265
  2552. venv/Lib/site-packages/pygments/lexers/graph.py +0 -105
  2553. venv/Lib/site-packages/pygments/lexers/graphics.py +0 -797
  2554. venv/Lib/site-packages/pygments/lexers/graphviz.py +0 -59
  2555. venv/Lib/site-packages/pygments/lexers/gsql.py +0 -104
  2556. venv/Lib/site-packages/pygments/lexers/haskell.py +0 -871
  2557. venv/Lib/site-packages/pygments/lexers/haxe.py +0 -937
  2558. venv/Lib/site-packages/pygments/lexers/hdl.py +0 -465
  2559. venv/Lib/site-packages/pygments/lexers/hexdump.py +0 -102
  2560. venv/Lib/site-packages/pygments/lexers/html.py +0 -605
  2561. venv/Lib/site-packages/pygments/lexers/idl.py +0 -285
  2562. venv/Lib/site-packages/pygments/lexers/igor.py +0 -420
  2563. venv/Lib/site-packages/pygments/lexers/inferno.py +0 -96
  2564. venv/Lib/site-packages/pygments/lexers/installers.py +0 -327
  2565. venv/Lib/site-packages/pygments/lexers/int_fiction.py +0 -1382
  2566. venv/Lib/site-packages/pygments/lexers/iolang.py +0 -62
  2567. venv/Lib/site-packages/pygments/lexers/j.py +0 -152
  2568. venv/Lib/site-packages/pygments/lexers/javascript.py +0 -1588
  2569. venv/Lib/site-packages/pygments/lexers/jmespath.py +0 -68
  2570. venv/Lib/site-packages/pygments/lexers/jslt.py +0 -95
  2571. venv/Lib/site-packages/pygments/lexers/jsonnet.py +0 -168
  2572. venv/Lib/site-packages/pygments/lexers/julia.py +0 -294
  2573. venv/Lib/site-packages/pygments/lexers/jvm.py +0 -1820
  2574. venv/Lib/site-packages/pygments/lexers/kuin.py +0 -333
  2575. venv/Lib/site-packages/pygments/lexers/lilypond.py +0 -226
  2576. venv/Lib/site-packages/pygments/lexers/lisp.py +0 -2838
  2577. venv/Lib/site-packages/pygments/lexers/macaulay2.py +0 -1739
  2578. venv/Lib/site-packages/pygments/lexers/make.py +0 -209
  2579. venv/Lib/site-packages/pygments/lexers/markup.py +0 -765
  2580. venv/Lib/site-packages/pygments/lexers/math.py +0 -20
  2581. venv/Lib/site-packages/pygments/lexers/matlab.py +0 -3308
  2582. venv/Lib/site-packages/pygments/lexers/maxima.py +0 -85
  2583. venv/Lib/site-packages/pygments/lexers/meson.py +0 -140
  2584. venv/Lib/site-packages/pygments/lexers/mime.py +0 -210
  2585. venv/Lib/site-packages/pygments/lexers/minecraft.py +0 -394
  2586. venv/Lib/site-packages/pygments/lexers/mips.py +0 -128
  2587. venv/Lib/site-packages/pygments/lexers/ml.py +0 -960
  2588. venv/Lib/site-packages/pygments/lexers/modeling.py +0 -369
  2589. venv/Lib/site-packages/pygments/lexers/modula2.py +0 -1580
  2590. venv/Lib/site-packages/pygments/lexers/monte.py +0 -204
  2591. venv/Lib/site-packages/pygments/lexers/mosel.py +0 -447
  2592. venv/Lib/site-packages/pygments/lexers/ncl.py +0 -893
  2593. venv/Lib/site-packages/pygments/lexers/nimrod.py +0 -200
  2594. venv/Lib/site-packages/pygments/lexers/nit.py +0 -64
  2595. venv/Lib/site-packages/pygments/lexers/nix.py +0 -135
  2596. venv/Lib/site-packages/pygments/lexers/oberon.py +0 -120
  2597. venv/Lib/site-packages/pygments/lexers/objective.py +0 -505
  2598. venv/Lib/site-packages/pygments/lexers/ooc.py +0 -85
  2599. venv/Lib/site-packages/pygments/lexers/other.py +0 -40
  2600. venv/Lib/site-packages/pygments/lexers/parasail.py +0 -79
  2601. venv/Lib/site-packages/pygments/lexers/parsers.py +0 -801
  2602. venv/Lib/site-packages/pygments/lexers/pascal.py +0 -641
  2603. venv/Lib/site-packages/pygments/lexers/pawn.py +0 -202
  2604. venv/Lib/site-packages/pygments/lexers/perl.py +0 -733
  2605. venv/Lib/site-packages/pygments/lexers/phix.py +0 -364
  2606. venv/Lib/site-packages/pygments/lexers/php.py +0 -319
  2607. venv/Lib/site-packages/pygments/lexers/pointless.py +0 -71
  2608. venv/Lib/site-packages/pygments/lexers/pony.py +0 -93
  2609. venv/Lib/site-packages/pygments/lexers/praat.py +0 -304
  2610. venv/Lib/site-packages/pygments/lexers/procfile.py +0 -42
  2611. venv/Lib/site-packages/pygments/lexers/prolog.py +0 -304
  2612. venv/Lib/site-packages/pygments/lexers/promql.py +0 -175
  2613. venv/Lib/site-packages/pygments/lexers/python.py +0 -1204
  2614. venv/Lib/site-packages/pygments/lexers/q.py +0 -188
  2615. venv/Lib/site-packages/pygments/lexers/qlik.py +0 -117
  2616. venv/Lib/site-packages/pygments/lexers/qvt.py +0 -151
  2617. venv/Lib/site-packages/pygments/lexers/r.py +0 -190
  2618. venv/Lib/site-packages/pygments/lexers/rdf.py +0 -462
  2619. venv/Lib/site-packages/pygments/lexers/rebol.py +0 -430
  2620. venv/Lib/site-packages/pygments/lexers/resource.py +0 -84
  2621. venv/Lib/site-packages/pygments/lexers/ride.py +0 -139
  2622. venv/Lib/site-packages/pygments/lexers/rita.py +0 -43
  2623. venv/Lib/site-packages/pygments/lexers/rnc.py +0 -67
  2624. venv/Lib/site-packages/pygments/lexers/roboconf.py +0 -81
  2625. venv/Lib/site-packages/pygments/lexers/robotframework.py +0 -552
  2626. venv/Lib/site-packages/pygments/lexers/ruby.py +0 -523
  2627. venv/Lib/site-packages/pygments/lexers/rust.py +0 -223
  2628. venv/Lib/site-packages/pygments/lexers/sas.py +0 -227
  2629. venv/Lib/site-packages/pygments/lexers/savi.py +0 -170
  2630. venv/Lib/site-packages/pygments/lexers/scdoc.py +0 -79
  2631. venv/Lib/site-packages/pygments/lexers/scripting.py +0 -1286
  2632. venv/Lib/site-packages/pygments/lexers/sgf.py +0 -60
  2633. venv/Lib/site-packages/pygments/lexers/shell.py +0 -918
  2634. venv/Lib/site-packages/pygments/lexers/sieve.py +0 -78
  2635. venv/Lib/site-packages/pygments/lexers/slash.py +0 -184
  2636. venv/Lib/site-packages/pygments/lexers/smalltalk.py +0 -196
  2637. venv/Lib/site-packages/pygments/lexers/smithy.py +0 -78
  2638. venv/Lib/site-packages/pygments/lexers/smv.py +0 -78
  2639. venv/Lib/site-packages/pygments/lexers/snobol.py +0 -82
  2640. venv/Lib/site-packages/pygments/lexers/solidity.py +0 -87
  2641. venv/Lib/site-packages/pygments/lexers/sophia.py +0 -103
  2642. venv/Lib/site-packages/pygments/lexers/special.py +0 -116
  2643. venv/Lib/site-packages/pygments/lexers/spice.py +0 -71
  2644. venv/Lib/site-packages/pygments/lexers/sql.py +0 -838
  2645. venv/Lib/site-packages/pygments/lexers/srcinfo.py +0 -62
  2646. venv/Lib/site-packages/pygments/lexers/stata.py +0 -171
  2647. venv/Lib/site-packages/pygments/lexers/supercollider.py +0 -95
  2648. venv/Lib/site-packages/pygments/lexers/tal.py +0 -74
  2649. venv/Lib/site-packages/pygments/lexers/tcl.py +0 -149
  2650. venv/Lib/site-packages/pygments/lexers/teal.py +0 -89
  2651. venv/Lib/site-packages/pygments/lexers/templates.py +0 -2300
  2652. venv/Lib/site-packages/pygments/lexers/teraterm.py +0 -326
  2653. venv/Lib/site-packages/pygments/lexers/testing.py +0 -210
  2654. venv/Lib/site-packages/pygments/lexers/text.py +0 -26
  2655. venv/Lib/site-packages/pygments/lexers/textedit.py +0 -202
  2656. venv/Lib/site-packages/pygments/lexers/textfmts.py +0 -431
  2657. venv/Lib/site-packages/pygments/lexers/theorem.py +0 -484
  2658. venv/Lib/site-packages/pygments/lexers/thingsdb.py +0 -116
  2659. venv/Lib/site-packages/pygments/lexers/tlb.py +0 -57
  2660. venv/Lib/site-packages/pygments/lexers/tnt.py +0 -271
  2661. venv/Lib/site-packages/pygments/lexers/trafficscript.py +0 -51
  2662. venv/Lib/site-packages/pygments/lexers/typoscript.py +0 -217
  2663. venv/Lib/site-packages/pygments/lexers/ul4.py +0 -267
  2664. venv/Lib/site-packages/pygments/lexers/unicon.py +0 -411
  2665. venv/Lib/site-packages/pygments/lexers/urbi.py +0 -145
  2666. venv/Lib/site-packages/pygments/lexers/usd.py +0 -90
  2667. venv/Lib/site-packages/pygments/lexers/varnish.py +0 -189
  2668. venv/Lib/site-packages/pygments/lexers/verification.py +0 -114
  2669. venv/Lib/site-packages/pygments/lexers/web.py +0 -23
  2670. venv/Lib/site-packages/pygments/lexers/webassembly.py +0 -120
  2671. venv/Lib/site-packages/pygments/lexers/webidl.py +0 -299
  2672. venv/Lib/site-packages/pygments/lexers/webmisc.py +0 -1010
  2673. venv/Lib/site-packages/pygments/lexers/whiley.py +0 -116
  2674. venv/Lib/site-packages/pygments/lexers/wowtoc.py +0 -120
  2675. venv/Lib/site-packages/pygments/lexers/wren.py +0 -99
  2676. venv/Lib/site-packages/pygments/lexers/x10.py +0 -67
  2677. venv/Lib/site-packages/pygments/lexers/xorg.py +0 -37
  2678. venv/Lib/site-packages/pygments/lexers/yang.py +0 -104
  2679. venv/Lib/site-packages/pygments/lexers/zig.py +0 -124
  2680. venv/Lib/site-packages/pygments/modeline.py +0 -43
  2681. venv/Lib/site-packages/pygments/plugin.py +0 -88
  2682. venv/Lib/site-packages/pygments/regexopt.py +0 -91
  2683. venv/Lib/site-packages/pygments/scanner.py +0 -104
  2684. venv/Lib/site-packages/pygments/sphinxext.py +0 -217
  2685. venv/Lib/site-packages/pygments/style.py +0 -197
  2686. venv/Lib/site-packages/pygments/styles/__init__.py +0 -97
  2687. venv/Lib/site-packages/pygments/styles/abap.py +0 -28
  2688. venv/Lib/site-packages/pygments/styles/algol.py +0 -61
  2689. venv/Lib/site-packages/pygments/styles/algol_nu.py +0 -61
  2690. venv/Lib/site-packages/pygments/styles/arduino.py +0 -96
  2691. venv/Lib/site-packages/pygments/styles/autumn.py +0 -62
  2692. venv/Lib/site-packages/pygments/styles/borland.py +0 -48
  2693. venv/Lib/site-packages/pygments/styles/bw.py +0 -47
  2694. venv/Lib/site-packages/pygments/styles/colorful.py +0 -78
  2695. venv/Lib/site-packages/pygments/styles/default.py +0 -71
  2696. venv/Lib/site-packages/pygments/styles/dracula.py +0 -102
  2697. venv/Lib/site-packages/pygments/styles/emacs.py +0 -70
  2698. venv/Lib/site-packages/pygments/styles/friendly.py +0 -71
  2699. venv/Lib/site-packages/pygments/styles/friendly_grayscale.py +0 -75
  2700. venv/Lib/site-packages/pygments/styles/fruity.py +0 -41
  2701. venv/Lib/site-packages/pygments/styles/gh_dark.py +0 -107
  2702. venv/Lib/site-packages/pygments/styles/gruvbox.py +0 -109
  2703. venv/Lib/site-packages/pygments/styles/igor.py +0 -27
  2704. venv/Lib/site-packages/pygments/styles/inkpot.py +0 -67
  2705. venv/Lib/site-packages/pygments/styles/lilypond.py +0 -56
  2706. venv/Lib/site-packages/pygments/styles/lovelace.py +0 -94
  2707. venv/Lib/site-packages/pygments/styles/manni.py +0 -74
  2708. venv/Lib/site-packages/pygments/styles/material.py +0 -117
  2709. venv/Lib/site-packages/pygments/styles/monokai.py +0 -106
  2710. venv/Lib/site-packages/pygments/styles/murphy.py +0 -77
  2711. venv/Lib/site-packages/pygments/styles/native.py +0 -65
  2712. venv/Lib/site-packages/pygments/styles/nord.py +0 -150
  2713. venv/Lib/site-packages/pygments/styles/onedark.py +0 -59
  2714. venv/Lib/site-packages/pygments/styles/paraiso_dark.py +0 -119
  2715. venv/Lib/site-packages/pygments/styles/paraiso_light.py +0 -119
  2716. venv/Lib/site-packages/pygments/styles/pastie.py +0 -72
  2717. venv/Lib/site-packages/pygments/styles/perldoc.py +0 -67
  2718. venv/Lib/site-packages/pygments/styles/rainbow_dash.py +0 -88
  2719. venv/Lib/site-packages/pygments/styles/rrt.py +0 -33
  2720. venv/Lib/site-packages/pygments/styles/sas.py +0 -41
  2721. venv/Lib/site-packages/pygments/styles/solarized.py +0 -136
  2722. venv/Lib/site-packages/pygments/styles/staroffice.py +0 -26
  2723. venv/Lib/site-packages/pygments/styles/stata_dark.py +0 -38
  2724. venv/Lib/site-packages/pygments/styles/stata_light.py +0 -37
  2725. venv/Lib/site-packages/pygments/styles/tango.py +0 -139
  2726. venv/Lib/site-packages/pygments/styles/trac.py +0 -60
  2727. venv/Lib/site-packages/pygments/styles/vim.py +0 -61
  2728. venv/Lib/site-packages/pygments/styles/vs.py +0 -36
  2729. venv/Lib/site-packages/pygments/styles/xcode.py +0 -48
  2730. venv/Lib/site-packages/pygments/styles/zenburn.py +0 -78
  2731. venv/Lib/site-packages/pygments/token.py +0 -213
  2732. venv/Lib/site-packages/pygments/unistring.py +0 -153
  2733. venv/Lib/site-packages/pygments/util.py +0 -308
  2734. venv/Lib/site-packages/pyproject_hooks/__init__.py +0 -23
  2735. venv/Lib/site-packages/pyproject_hooks/_compat.py +0 -8
  2736. venv/Lib/site-packages/pyproject_hooks/_impl.py +0 -330
  2737. venv/Lib/site-packages/pyproject_hooks/_in_process/__init__.py +0 -18
  2738. venv/Lib/site-packages/pyproject_hooks/_in_process/_in_process.py +0 -353
  2739. venv/Lib/site-packages/readme_renderer/__about__.py +0 -38
  2740. venv/Lib/site-packages/readme_renderer/__init__.py +0 -13
  2741. venv/Lib/site-packages/readme_renderer/__main__.py +0 -19
  2742. venv/Lib/site-packages/readme_renderer/clean.py +0 -132
  2743. venv/Lib/site-packages/readme_renderer/markdown.py +0 -123
  2744. venv/Lib/site-packages/readme_renderer/rst.py +0 -135
  2745. venv/Lib/site-packages/readme_renderer/txt.py +0 -24
  2746. venv/Lib/site-packages/requests/__init__.py +0 -180
  2747. venv/Lib/site-packages/requests/__version__.py +0 -14
  2748. venv/Lib/site-packages/requests/_internal_utils.py +0 -48
  2749. venv/Lib/site-packages/requests/adapters.py +0 -584
  2750. venv/Lib/site-packages/requests/api.py +0 -157
  2751. venv/Lib/site-packages/requests/auth.py +0 -315
  2752. venv/Lib/site-packages/requests/certs.py +0 -17
  2753. venv/Lib/site-packages/requests/compat.py +0 -79
  2754. venv/Lib/site-packages/requests/cookies.py +0 -561
  2755. venv/Lib/site-packages/requests/exceptions.py +0 -141
  2756. venv/Lib/site-packages/requests/help.py +0 -134
  2757. venv/Lib/site-packages/requests/hooks.py +0 -33
  2758. venv/Lib/site-packages/requests/models.py +0 -1034
  2759. venv/Lib/site-packages/requests/packages.py +0 -28
  2760. venv/Lib/site-packages/requests/sessions.py +0 -831
  2761. venv/Lib/site-packages/requests/status_codes.py +0 -128
  2762. venv/Lib/site-packages/requests/structures.py +0 -99
  2763. venv/Lib/site-packages/requests/utils.py +0 -1086
  2764. venv/Lib/site-packages/requests_toolbelt/__init__.py +0 -34
  2765. venv/Lib/site-packages/requests_toolbelt/_compat.py +0 -311
  2766. venv/Lib/site-packages/requests_toolbelt/adapters/__init__.py +0 -15
  2767. venv/Lib/site-packages/requests_toolbelt/adapters/appengine.py +0 -206
  2768. venv/Lib/site-packages/requests_toolbelt/adapters/fingerprint.py +0 -48
  2769. venv/Lib/site-packages/requests_toolbelt/adapters/host_header_ssl.py +0 -43
  2770. venv/Lib/site-packages/requests_toolbelt/adapters/socket_options.py +0 -129
  2771. venv/Lib/site-packages/requests_toolbelt/adapters/source.py +0 -67
  2772. venv/Lib/site-packages/requests_toolbelt/adapters/ssl.py +0 -66
  2773. venv/Lib/site-packages/requests_toolbelt/adapters/x509.py +0 -196
  2774. venv/Lib/site-packages/requests_toolbelt/auth/__init__.py +0 -0
  2775. venv/Lib/site-packages/requests_toolbelt/auth/_digest_auth_compat.py +0 -29
  2776. venv/Lib/site-packages/requests_toolbelt/auth/guess.py +0 -146
  2777. venv/Lib/site-packages/requests_toolbelt/auth/handler.py +0 -142
  2778. venv/Lib/site-packages/requests_toolbelt/auth/http_proxy_digest.py +0 -103
  2779. venv/Lib/site-packages/requests_toolbelt/cookies/__init__.py +0 -0
  2780. venv/Lib/site-packages/requests_toolbelt/cookies/forgetful.py +0 -7
  2781. venv/Lib/site-packages/requests_toolbelt/downloadutils/__init__.py +0 -0
  2782. venv/Lib/site-packages/requests_toolbelt/downloadutils/stream.py +0 -176
  2783. venv/Lib/site-packages/requests_toolbelt/downloadutils/tee.py +0 -123
  2784. venv/Lib/site-packages/requests_toolbelt/exceptions.py +0 -37
  2785. venv/Lib/site-packages/requests_toolbelt/multipart/__init__.py +0 -31
  2786. venv/Lib/site-packages/requests_toolbelt/multipart/decoder.py +0 -156
  2787. venv/Lib/site-packages/requests_toolbelt/multipart/encoder.py +0 -655
  2788. venv/Lib/site-packages/requests_toolbelt/sessions.py +0 -89
  2789. venv/Lib/site-packages/requests_toolbelt/streaming_iterator.py +0 -116
  2790. venv/Lib/site-packages/requests_toolbelt/threaded/__init__.py +0 -97
  2791. venv/Lib/site-packages/requests_toolbelt/threaded/pool.py +0 -211
  2792. venv/Lib/site-packages/requests_toolbelt/threaded/thread.py +0 -53
  2793. venv/Lib/site-packages/requests_toolbelt/utils/__init__.py +0 -0
  2794. venv/Lib/site-packages/requests_toolbelt/utils/deprecated.py +0 -91
  2795. venv/Lib/site-packages/requests_toolbelt/utils/dump.py +0 -198
  2796. venv/Lib/site-packages/requests_toolbelt/utils/formdata.py +0 -108
  2797. venv/Lib/site-packages/requests_toolbelt/utils/user_agent.py +0 -143
  2798. venv/Lib/site-packages/rfc3986/__init__.py +0 -53
  2799. venv/Lib/site-packages/rfc3986/_mixin.py +0 -373
  2800. venv/Lib/site-packages/rfc3986/abnf_regexp.py +0 -275
  2801. venv/Lib/site-packages/rfc3986/api.py +0 -104
  2802. venv/Lib/site-packages/rfc3986/builder.py +0 -388
  2803. venv/Lib/site-packages/rfc3986/compat.py +0 -59
  2804. venv/Lib/site-packages/rfc3986/exceptions.py +0 -120
  2805. venv/Lib/site-packages/rfc3986/iri.py +0 -161
  2806. venv/Lib/site-packages/rfc3986/misc.py +0 -131
  2807. venv/Lib/site-packages/rfc3986/normalizers.py +0 -171
  2808. venv/Lib/site-packages/rfc3986/parseresult.py +0 -474
  2809. venv/Lib/site-packages/rfc3986/uri.py +0 -160
  2810. venv/Lib/site-packages/rfc3986/validators.py +0 -440
  2811. venv/Lib/site-packages/rich/__init__.py +0 -176
  2812. venv/Lib/site-packages/rich/__main__.py +0 -282
  2813. venv/Lib/site-packages/rich/_cell_widths.py +0 -451
  2814. venv/Lib/site-packages/rich/_emoji_codes.py +0 -3610
  2815. venv/Lib/site-packages/rich/_emoji_replace.py +0 -32
  2816. venv/Lib/site-packages/rich/_export_format.py +0 -78
  2817. venv/Lib/site-packages/rich/_extension.py +0 -10
  2818. venv/Lib/site-packages/rich/_inspect.py +0 -270
  2819. venv/Lib/site-packages/rich/_log_render.py +0 -94
  2820. venv/Lib/site-packages/rich/_loop.py +0 -43
  2821. venv/Lib/site-packages/rich/_palettes.py +0 -309
  2822. venv/Lib/site-packages/rich/_pick.py +0 -17
  2823. venv/Lib/site-packages/rich/_ratio.py +0 -160
  2824. venv/Lib/site-packages/rich/_spinners.py +0 -482
  2825. venv/Lib/site-packages/rich/_stack.py +0 -16
  2826. venv/Lib/site-packages/rich/_timer.py +0 -19
  2827. venv/Lib/site-packages/rich/_win32_console.py +0 -662
  2828. venv/Lib/site-packages/rich/_windows.py +0 -72
  2829. venv/Lib/site-packages/rich/_windows_renderer.py +0 -56
  2830. venv/Lib/site-packages/rich/_wrap.py +0 -56
  2831. venv/Lib/site-packages/rich/abc.py +0 -33
  2832. venv/Lib/site-packages/rich/align.py +0 -311
  2833. venv/Lib/site-packages/rich/ansi.py +0 -237
  2834. venv/Lib/site-packages/rich/bar.py +0 -94
  2835. venv/Lib/site-packages/rich/box.py +0 -517
  2836. venv/Lib/site-packages/rich/cells.py +0 -154
  2837. venv/Lib/site-packages/rich/color.py +0 -615
  2838. venv/Lib/site-packages/rich/color_triplet.py +0 -38
  2839. venv/Lib/site-packages/rich/columns.py +0 -187
  2840. venv/Lib/site-packages/rich/console.py +0 -2572
  2841. venv/Lib/site-packages/rich/constrain.py +0 -37
  2842. venv/Lib/site-packages/rich/containers.py +0 -167
  2843. venv/Lib/site-packages/rich/control.py +0 -225
  2844. venv/Lib/site-packages/rich/default_styles.py +0 -188
  2845. venv/Lib/site-packages/rich/diagnose.py +0 -37
  2846. venv/Lib/site-packages/rich/emoji.py +0 -96
  2847. venv/Lib/site-packages/rich/errors.py +0 -34
  2848. venv/Lib/site-packages/rich/file_proxy.py +0 -54
  2849. venv/Lib/site-packages/rich/filesize.py +0 -89
  2850. venv/Lib/site-packages/rich/highlighter.py +0 -232
  2851. venv/Lib/site-packages/rich/json.py +0 -140
  2852. venv/Lib/site-packages/rich/jupyter.py +0 -101
  2853. venv/Lib/site-packages/rich/layout.py +0 -445
  2854. venv/Lib/site-packages/rich/live.py +0 -373
  2855. venv/Lib/site-packages/rich/live_render.py +0 -113
  2856. venv/Lib/site-packages/rich/logging.py +0 -280
  2857. venv/Lib/site-packages/rich/markdown.py +0 -625
  2858. venv/Lib/site-packages/rich/markup.py +0 -246
  2859. venv/Lib/site-packages/rich/measure.py +0 -151
  2860. venv/Lib/site-packages/rich/padding.py +0 -141
  2861. venv/Lib/site-packages/rich/pager.py +0 -34
  2862. venv/Lib/site-packages/rich/palette.py +0 -100
  2863. venv/Lib/site-packages/rich/panel.py +0 -251
  2864. venv/Lib/site-packages/rich/pretty.py +0 -1010
  2865. venv/Lib/site-packages/rich/progress.py +0 -1703
  2866. venv/Lib/site-packages/rich/progress_bar.py +0 -224
  2867. venv/Lib/site-packages/rich/prompt.py +0 -376
  2868. venv/Lib/site-packages/rich/protocol.py +0 -42
  2869. venv/Lib/site-packages/rich/region.py +0 -10
  2870. venv/Lib/site-packages/rich/repr.py +0 -152
  2871. venv/Lib/site-packages/rich/rule.py +0 -134
  2872. venv/Lib/site-packages/rich/scope.py +0 -86
  2873. venv/Lib/site-packages/rich/screen.py +0 -54
  2874. venv/Lib/site-packages/rich/segment.py +0 -739
  2875. venv/Lib/site-packages/rich/spinner.py +0 -136
  2876. venv/Lib/site-packages/rich/status.py +0 -132
  2877. venv/Lib/site-packages/rich/style.py +0 -771
  2878. venv/Lib/site-packages/rich/styled.py +0 -42
  2879. venv/Lib/site-packages/rich/syntax.py +0 -934
  2880. venv/Lib/site-packages/rich/table.py +0 -996
  2881. venv/Lib/site-packages/rich/terminal_theme.py +0 -153
  2882. venv/Lib/site-packages/rich/text.py +0 -1286
  2883. venv/Lib/site-packages/rich/theme.py +0 -112
  2884. venv/Lib/site-packages/rich/themes.py +0 -5
  2885. venv/Lib/site-packages/rich/traceback.py +0 -679
  2886. venv/Lib/site-packages/rich/tree.py +0 -251
  2887. venv/Lib/site-packages/setuptools/__init__.py +0 -268
  2888. venv/Lib/site-packages/setuptools/_deprecation_warning.py +0 -7
  2889. venv/Lib/site-packages/setuptools/_distutils/__init__.py +0 -14
  2890. venv/Lib/site-packages/setuptools/_distutils/_collections.py +0 -194
  2891. venv/Lib/site-packages/setuptools/_distutils/_functools.py +0 -20
  2892. venv/Lib/site-packages/setuptools/_distutils/_log.py +0 -4
  2893. venv/Lib/site-packages/setuptools/_distutils/_macos_compat.py +0 -12
  2894. venv/Lib/site-packages/setuptools/_distutils/_msvccompiler.py +0 -568
  2895. venv/Lib/site-packages/setuptools/_distutils/archive_util.py +0 -280
  2896. venv/Lib/site-packages/setuptools/_distutils/bcppcompiler.py +0 -401
  2897. venv/Lib/site-packages/setuptools/_distutils/ccompiler.py +0 -1254
  2898. venv/Lib/site-packages/setuptools/_distutils/cmd.py +0 -435
  2899. venv/Lib/site-packages/setuptools/_distutils/command/__init__.py +0 -25
  2900. venv/Lib/site-packages/setuptools/_distutils/command/_framework_compat.py +0 -55
  2901. venv/Lib/site-packages/setuptools/_distutils/command/bdist.py +0 -156
  2902. venv/Lib/site-packages/setuptools/_distutils/command/bdist_dumb.py +0 -143
  2903. venv/Lib/site-packages/setuptools/_distutils/command/bdist_rpm.py +0 -614
  2904. venv/Lib/site-packages/setuptools/_distutils/command/build.py +0 -152
  2905. venv/Lib/site-packages/setuptools/_distutils/command/build_clib.py +0 -207
  2906. venv/Lib/site-packages/setuptools/_distutils/command/build_ext.py +0 -788
  2907. venv/Lib/site-packages/setuptools/_distutils/command/build_py.py +0 -406
  2908. venv/Lib/site-packages/setuptools/_distutils/command/build_scripts.py +0 -172
  2909. venv/Lib/site-packages/setuptools/_distutils/command/check.py +0 -151
  2910. venv/Lib/site-packages/setuptools/_distutils/command/clean.py +0 -75
  2911. venv/Lib/site-packages/setuptools/_distutils/command/config.py +0 -376
  2912. venv/Lib/site-packages/setuptools/_distutils/command/install.py +0 -813
  2913. venv/Lib/site-packages/setuptools/_distutils/command/install_data.py +0 -83
  2914. venv/Lib/site-packages/setuptools/_distutils/command/install_egg_info.py +0 -92
  2915. venv/Lib/site-packages/setuptools/_distutils/command/install_headers.py +0 -44
  2916. venv/Lib/site-packages/setuptools/_distutils/command/install_lib.py +0 -237
  2917. venv/Lib/site-packages/setuptools/_distutils/command/install_scripts.py +0 -60
  2918. venv/Lib/site-packages/setuptools/_distutils/command/py37compat.py +0 -31
  2919. venv/Lib/site-packages/setuptools/_distutils/command/register.py +0 -320
  2920. venv/Lib/site-packages/setuptools/_distutils/command/sdist.py +0 -530
  2921. venv/Lib/site-packages/setuptools/_distutils/command/upload.py +0 -206
  2922. venv/Lib/site-packages/setuptools/_distutils/config.py +0 -139
  2923. venv/Lib/site-packages/setuptools/_distutils/core.py +0 -291
  2924. venv/Lib/site-packages/setuptools/_distutils/cygwinccompiler.py +0 -356
  2925. venv/Lib/site-packages/setuptools/_distutils/debug.py +0 -5
  2926. venv/Lib/site-packages/setuptools/_distutils/dep_util.py +0 -96
  2927. venv/Lib/site-packages/setuptools/_distutils/dir_util.py +0 -243
  2928. venv/Lib/site-packages/setuptools/_distutils/dist.py +0 -1287
  2929. venv/Lib/site-packages/setuptools/_distutils/errors.py +0 -127
  2930. venv/Lib/site-packages/setuptools/_distutils/extension.py +0 -248
  2931. venv/Lib/site-packages/setuptools/_distutils/fancy_getopt.py +0 -470
  2932. venv/Lib/site-packages/setuptools/_distutils/file_util.py +0 -248
  2933. venv/Lib/site-packages/setuptools/_distutils/filelist.py +0 -371
  2934. venv/Lib/site-packages/setuptools/_distutils/log.py +0 -57
  2935. venv/Lib/site-packages/setuptools/_distutils/msvc9compiler.py +0 -829
  2936. venv/Lib/site-packages/setuptools/_distutils/msvccompiler.py +0 -692
  2937. venv/Lib/site-packages/setuptools/_distutils/py38compat.py +0 -8
  2938. venv/Lib/site-packages/setuptools/_distutils/py39compat.py +0 -22
  2939. venv/Lib/site-packages/setuptools/_distutils/spawn.py +0 -109
  2940. venv/Lib/site-packages/setuptools/_distutils/sysconfig.py +0 -559
  2941. venv/Lib/site-packages/setuptools/_distutils/text_file.py +0 -286
  2942. venv/Lib/site-packages/setuptools/_distutils/unixccompiler.py +0 -400
  2943. venv/Lib/site-packages/setuptools/_distutils/util.py +0 -513
  2944. venv/Lib/site-packages/setuptools/_distutils/version.py +0 -357
  2945. venv/Lib/site-packages/setuptools/_distutils/versionpredicate.py +0 -175
  2946. venv/Lib/site-packages/setuptools/_entry_points.py +0 -94
  2947. venv/Lib/site-packages/setuptools/_imp.py +0 -82
  2948. venv/Lib/site-packages/setuptools/_importlib.py +0 -47
  2949. venv/Lib/site-packages/setuptools/_itertools.py +0 -23
  2950. venv/Lib/site-packages/setuptools/_normalization.py +0 -117
  2951. venv/Lib/site-packages/setuptools/_path.py +0 -37
  2952. venv/Lib/site-packages/setuptools/_reqs.py +0 -33
  2953. venv/Lib/site-packages/setuptools/_vendor/__init__.py +0 -0
  2954. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/__init__.py +0 -904
  2955. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/_adapters.py +0 -90
  2956. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/_collections.py +0 -30
  2957. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/_compat.py +0 -72
  2958. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/_functools.py +0 -104
  2959. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/_itertools.py +0 -73
  2960. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/_meta.py +0 -49
  2961. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/_py39compat.py +0 -35
  2962. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/_text.py +0 -99
  2963. venv/Lib/site-packages/setuptools/_vendor/importlib_resources/__init__.py +0 -36
  2964. venv/Lib/site-packages/setuptools/_vendor/importlib_resources/_adapters.py +0 -170
  2965. venv/Lib/site-packages/setuptools/_vendor/importlib_resources/_common.py +0 -207
  2966. venv/Lib/site-packages/setuptools/_vendor/importlib_resources/_compat.py +0 -108
  2967. venv/Lib/site-packages/setuptools/_vendor/importlib_resources/_itertools.py +0 -35
  2968. venv/Lib/site-packages/setuptools/_vendor/importlib_resources/_legacy.py +0 -120
  2969. venv/Lib/site-packages/setuptools/_vendor/importlib_resources/abc.py +0 -170
  2970. venv/Lib/site-packages/setuptools/_vendor/importlib_resources/readers.py +0 -120
  2971. venv/Lib/site-packages/setuptools/_vendor/importlib_resources/simple.py +0 -106
  2972. venv/Lib/site-packages/setuptools/_vendor/jaraco/__init__.py +0 -0
  2973. venv/Lib/site-packages/setuptools/_vendor/jaraco/context.py +0 -288
  2974. venv/Lib/site-packages/setuptools/_vendor/jaraco/functools.py +0 -525
  2975. venv/Lib/site-packages/setuptools/_vendor/jaraco/text/__init__.py +0 -599
  2976. venv/Lib/site-packages/setuptools/_vendor/more_itertools/__init__.py +0 -4
  2977. venv/Lib/site-packages/setuptools/_vendor/more_itertools/more.py +0 -3824
  2978. venv/Lib/site-packages/setuptools/_vendor/more_itertools/recipes.py +0 -620
  2979. venv/Lib/site-packages/setuptools/_vendor/ordered_set.py +0 -488
  2980. venv/Lib/site-packages/setuptools/_vendor/packaging/__init__.py +0 -15
  2981. venv/Lib/site-packages/setuptools/_vendor/packaging/_elffile.py +0 -108
  2982. venv/Lib/site-packages/setuptools/_vendor/packaging/_manylinux.py +0 -238
  2983. venv/Lib/site-packages/setuptools/_vendor/packaging/_musllinux.py +0 -80
  2984. venv/Lib/site-packages/setuptools/_vendor/packaging/_parser.py +0 -328
  2985. venv/Lib/site-packages/setuptools/_vendor/packaging/_structures.py +0 -61
  2986. venv/Lib/site-packages/setuptools/_vendor/packaging/_tokenizer.py +0 -188
  2987. venv/Lib/site-packages/setuptools/_vendor/packaging/markers.py +0 -245
  2988. venv/Lib/site-packages/setuptools/_vendor/packaging/requirements.py +0 -95
  2989. venv/Lib/site-packages/setuptools/_vendor/packaging/specifiers.py +0 -1005
  2990. venv/Lib/site-packages/setuptools/_vendor/packaging/tags.py +0 -546
  2991. venv/Lib/site-packages/setuptools/_vendor/packaging/utils.py +0 -141
  2992. venv/Lib/site-packages/setuptools/_vendor/packaging/version.py +0 -563
  2993. venv/Lib/site-packages/setuptools/_vendor/tomli/__init__.py +0 -11
  2994. venv/Lib/site-packages/setuptools/_vendor/tomli/_parser.py +0 -691
  2995. venv/Lib/site-packages/setuptools/_vendor/tomli/_re.py +0 -107
  2996. venv/Lib/site-packages/setuptools/_vendor/tomli/_types.py +0 -10
  2997. venv/Lib/site-packages/setuptools/_vendor/typing_extensions.py +0 -2296
  2998. venv/Lib/site-packages/setuptools/_vendor/zipp.py +0 -329
  2999. venv/Lib/site-packages/setuptools/archive_util.py +0 -213
  3000. venv/Lib/site-packages/setuptools/build_meta.py +0 -512
  3001. venv/Lib/site-packages/setuptools/command/__init__.py +0 -12
  3002. venv/Lib/site-packages/setuptools/command/alias.py +0 -78
  3003. venv/Lib/site-packages/setuptools/command/bdist_egg.py +0 -456
  3004. venv/Lib/site-packages/setuptools/command/bdist_rpm.py +0 -40
  3005. venv/Lib/site-packages/setuptools/command/build.py +0 -146
  3006. venv/Lib/site-packages/setuptools/command/build_clib.py +0 -101
  3007. venv/Lib/site-packages/setuptools/command/build_ext.py +0 -383
  3008. venv/Lib/site-packages/setuptools/command/build_py.py +0 -368
  3009. venv/Lib/site-packages/setuptools/command/develop.py +0 -194
  3010. venv/Lib/site-packages/setuptools/command/dist_info.py +0 -118
  3011. venv/Lib/site-packages/setuptools/command/easy_install.py +0 -2312
  3012. venv/Lib/site-packages/setuptools/command/editable_wheel.py +0 -856
  3013. venv/Lib/site-packages/setuptools/command/egg_info.py +0 -791
  3014. venv/Lib/site-packages/setuptools/command/install.py +0 -139
  3015. venv/Lib/site-packages/setuptools/command/install_egg_info.py +0 -60
  3016. venv/Lib/site-packages/setuptools/command/install_lib.py +0 -122
  3017. venv/Lib/site-packages/setuptools/command/install_scripts.py +0 -73
  3018. venv/Lib/site-packages/setuptools/command/py36compat.py +0 -134
  3019. venv/Lib/site-packages/setuptools/command/register.py +0 -18
  3020. venv/Lib/site-packages/setuptools/command/rotate.py +0 -64
  3021. venv/Lib/site-packages/setuptools/command/saveopts.py +0 -22
  3022. venv/Lib/site-packages/setuptools/command/sdist.py +0 -210
  3023. venv/Lib/site-packages/setuptools/command/setopt.py +0 -149
  3024. venv/Lib/site-packages/setuptools/command/test.py +0 -251
  3025. venv/Lib/site-packages/setuptools/command/upload.py +0 -17
  3026. venv/Lib/site-packages/setuptools/command/upload_docs.py +0 -212
  3027. venv/Lib/site-packages/setuptools/config/__init__.py +0 -35
  3028. venv/Lib/site-packages/setuptools/config/_apply_pyprojecttoml.py +0 -384
  3029. venv/Lib/site-packages/setuptools/config/_validate_pyproject/__init__.py +0 -34
  3030. venv/Lib/site-packages/setuptools/config/_validate_pyproject/error_reporting.py +0 -318
  3031. venv/Lib/site-packages/setuptools/config/_validate_pyproject/extra_validations.py +0 -36
  3032. venv/Lib/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_exceptions.py +0 -51
  3033. venv/Lib/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_validations.py +0 -1053
  3034. venv/Lib/site-packages/setuptools/config/_validate_pyproject/formats.py +0 -275
  3035. venv/Lib/site-packages/setuptools/config/expand.py +0 -462
  3036. venv/Lib/site-packages/setuptools/config/pyprojecttoml.py +0 -498
  3037. venv/Lib/site-packages/setuptools/config/setupcfg.py +0 -768
  3038. venv/Lib/site-packages/setuptools/dep_util.py +0 -25
  3039. venv/Lib/site-packages/setuptools/depends.py +0 -176
  3040. venv/Lib/site-packages/setuptools/discovery.py +0 -611
  3041. venv/Lib/site-packages/setuptools/dist.py +0 -1226
  3042. venv/Lib/site-packages/setuptools/errors.py +0 -58
  3043. venv/Lib/site-packages/setuptools/extension.py +0 -148
  3044. venv/Lib/site-packages/setuptools/extern/__init__.py +0 -83
  3045. venv/Lib/site-packages/setuptools/glob.py +0 -167
  3046. venv/Lib/site-packages/setuptools/installer.py +0 -142
  3047. venv/Lib/site-packages/setuptools/launch.py +0 -36
  3048. venv/Lib/site-packages/setuptools/logging.py +0 -37
  3049. venv/Lib/site-packages/setuptools/monkey.py +0 -159
  3050. venv/Lib/site-packages/setuptools/msvc.py +0 -1686
  3051. venv/Lib/site-packages/setuptools/namespaces.py +0 -107
  3052. venv/Lib/site-packages/setuptools/package_index.py +0 -1162
  3053. venv/Lib/site-packages/setuptools/py34compat.py +0 -13
  3054. venv/Lib/site-packages/setuptools/sandbox.py +0 -530
  3055. venv/Lib/site-packages/setuptools/unicode_utils.py +0 -42
  3056. venv/Lib/site-packages/setuptools/version.py +0 -6
  3057. venv/Lib/site-packages/setuptools/wheel.py +0 -231
  3058. venv/Lib/site-packages/setuptools/windows_support.py +0 -29
  3059. venv/Lib/site-packages/shiboken6/__init__.py +0 -27
  3060. venv/Lib/site-packages/shiboken6/_config.py +0 -11
  3061. venv/Lib/site-packages/shiboken6/_git_shiboken_module_version.py +0 -19
  3062. venv/Lib/site-packages/six.py +0 -998
  3063. venv/Lib/site-packages/tomli/__init__.py +0 -11
  3064. venv/Lib/site-packages/tomli/_parser.py +0 -691
  3065. venv/Lib/site-packages/tomli/_re.py +0 -107
  3066. venv/Lib/site-packages/tomli/_types.py +0 -10
  3067. venv/Lib/site-packages/twine/__init__.py +0 -43
  3068. venv/Lib/site-packages/twine/__main__.py +0 -51
  3069. venv/Lib/site-packages/twine/auth.py +0 -101
  3070. venv/Lib/site-packages/twine/cli.py +0 -123
  3071. venv/Lib/site-packages/twine/commands/__init__.py +0 -53
  3072. venv/Lib/site-packages/twine/commands/check.py +0 -183
  3073. venv/Lib/site-packages/twine/commands/register.py +0 -86
  3074. venv/Lib/site-packages/twine/commands/upload.py +0 -198
  3075. venv/Lib/site-packages/twine/exceptions.py +0 -124
  3076. venv/Lib/site-packages/twine/package.py +0 -316
  3077. venv/Lib/site-packages/twine/repository.py +0 -250
  3078. venv/Lib/site-packages/twine/settings.py +0 -335
  3079. venv/Lib/site-packages/twine/utils.py +0 -324
  3080. venv/Lib/site-packages/twine/wheel.py +0 -91
  3081. venv/Lib/site-packages/twine/wininst.py +0 -61
  3082. venv/Lib/site-packages/typing_extensions.py +0 -2209
  3083. venv/Lib/site-packages/urllib3/__init__.py +0 -102
  3084. venv/Lib/site-packages/urllib3/_collections.py +0 -337
  3085. venv/Lib/site-packages/urllib3/_version.py +0 -2
  3086. venv/Lib/site-packages/urllib3/connection.py +0 -567
  3087. venv/Lib/site-packages/urllib3/connectionpool.py +0 -1110
  3088. venv/Lib/site-packages/urllib3/contrib/__init__.py +0 -0
  3089. venv/Lib/site-packages/urllib3/contrib/_appengine_environ.py +0 -36
  3090. venv/Lib/site-packages/urllib3/contrib/_securetransport/__init__.py +0 -0
  3091. venv/Lib/site-packages/urllib3/contrib/_securetransport/bindings.py +0 -519
  3092. venv/Lib/site-packages/urllib3/contrib/_securetransport/low_level.py +0 -397
  3093. venv/Lib/site-packages/urllib3/contrib/appengine.py +0 -314
  3094. venv/Lib/site-packages/urllib3/contrib/ntlmpool.py +0 -130
  3095. venv/Lib/site-packages/urllib3/contrib/pyopenssl.py +0 -518
  3096. venv/Lib/site-packages/urllib3/contrib/securetransport.py +0 -921
  3097. venv/Lib/site-packages/urllib3/contrib/socks.py +0 -216
  3098. venv/Lib/site-packages/urllib3/exceptions.py +0 -323
  3099. venv/Lib/site-packages/urllib3/fields.py +0 -274
  3100. venv/Lib/site-packages/urllib3/filepost.py +0 -98
  3101. venv/Lib/site-packages/urllib3/packages/__init__.py +0 -0
  3102. venv/Lib/site-packages/urllib3/packages/backports/__init__.py +0 -0
  3103. venv/Lib/site-packages/urllib3/packages/backports/makefile.py +0 -51
  3104. venv/Lib/site-packages/urllib3/packages/six.py +0 -1076
  3105. venv/Lib/site-packages/urllib3/poolmanager.py +0 -537
  3106. venv/Lib/site-packages/urllib3/request.py +0 -170
  3107. venv/Lib/site-packages/urllib3/response.py +0 -885
  3108. venv/Lib/site-packages/urllib3/util/__init__.py +0 -49
  3109. venv/Lib/site-packages/urllib3/util/connection.py +0 -149
  3110. venv/Lib/site-packages/urllib3/util/proxy.py +0 -57
  3111. venv/Lib/site-packages/urllib3/util/queue.py +0 -22
  3112. venv/Lib/site-packages/urllib3/util/request.py +0 -146
  3113. venv/Lib/site-packages/urllib3/util/response.py +0 -107
  3114. venv/Lib/site-packages/urllib3/util/retry.py +0 -620
  3115. venv/Lib/site-packages/urllib3/util/ssl_.py +0 -495
  3116. venv/Lib/site-packages/urllib3/util/ssl_match_hostname.py +0 -159
  3117. venv/Lib/site-packages/urllib3/util/ssltransport.py +0 -221
  3118. venv/Lib/site-packages/urllib3/util/timeout.py +0 -268
  3119. venv/Lib/site-packages/urllib3/util/url.py +0 -435
  3120. venv/Lib/site-packages/urllib3/util/wait.py +0 -152
  3121. venv/Lib/site-packages/webencodings/__init__.py +0 -342
  3122. venv/Lib/site-packages/webencodings/labels.py +0 -231
  3123. venv/Lib/site-packages/webencodings/mklabels.py +0 -59
  3124. venv/Lib/site-packages/webencodings/tests.py +0 -153
  3125. venv/Lib/site-packages/webencodings/x_user_defined.py +0 -325
  3126. venv/Lib/site-packages/wheel/__init__.py +0 -3
  3127. venv/Lib/site-packages/wheel/__main__.py +0 -23
  3128. venv/Lib/site-packages/wheel/_setuptools_logging.py +0 -26
  3129. venv/Lib/site-packages/wheel/bdist_wheel.py +0 -550
  3130. venv/Lib/site-packages/wheel/cli/__init__.py +0 -96
  3131. venv/Lib/site-packages/wheel/cli/convert.py +0 -273
  3132. venv/Lib/site-packages/wheel/cli/pack.py +0 -90
  3133. venv/Lib/site-packages/wheel/cli/unpack.py +0 -23
  3134. venv/Lib/site-packages/wheel/macosx_libfile.py +0 -471
  3135. venv/Lib/site-packages/wheel/metadata.py +0 -109
  3136. venv/Lib/site-packages/wheel/util.py +0 -26
  3137. venv/Lib/site-packages/wheel/vendored/__init__.py +0 -0
  3138. venv/Lib/site-packages/wheel/vendored/packaging/__init__.py +0 -0
  3139. venv/Lib/site-packages/wheel/vendored/packaging/_manylinux.py +0 -303
  3140. venv/Lib/site-packages/wheel/vendored/packaging/_musllinux.py +0 -138
  3141. venv/Lib/site-packages/wheel/vendored/packaging/tags.py +0 -478
  3142. venv/Lib/site-packages/wheel/wheelfile.py +0 -191
  3143. venv/Lib/site-packages/win32ctypes/__init__.py +0 -8
  3144. venv/Lib/site-packages/win32ctypes/core/__init__.py +0 -67
  3145. venv/Lib/site-packages/win32ctypes/core/_winerrors.py +0 -9
  3146. venv/Lib/site-packages/win32ctypes/core/cffi/__init__.py +0 -0
  3147. venv/Lib/site-packages/win32ctypes/core/cffi/_authentication.py +0 -162
  3148. venv/Lib/site-packages/win32ctypes/core/cffi/_common.py +0 -27
  3149. venv/Lib/site-packages/win32ctypes/core/cffi/_dll.py +0 -33
  3150. venv/Lib/site-packages/win32ctypes/core/cffi/_nl_support.py +0 -20
  3151. venv/Lib/site-packages/win32ctypes/core/cffi/_resource.py +0 -134
  3152. venv/Lib/site-packages/win32ctypes/core/cffi/_system_information.py +0 -34
  3153. venv/Lib/site-packages/win32ctypes/core/cffi/_time.py +0 -20
  3154. venv/Lib/site-packages/win32ctypes/core/cffi/_util.py +0 -108
  3155. venv/Lib/site-packages/win32ctypes/core/compat.py +0 -31
  3156. venv/Lib/site-packages/win32ctypes/core/ctypes/__init__.py +0 -0
  3157. venv/Lib/site-packages/win32ctypes/core/ctypes/_authentication.py +0 -116
  3158. venv/Lib/site-packages/win32ctypes/core/ctypes/_common.py +0 -62
  3159. venv/Lib/site-packages/win32ctypes/core/ctypes/_dll.py +0 -23
  3160. venv/Lib/site-packages/win32ctypes/core/ctypes/_nl_support.py +0 -14
  3161. venv/Lib/site-packages/win32ctypes/core/ctypes/_resource.py +0 -148
  3162. venv/Lib/site-packages/win32ctypes/core/ctypes/_system_information.py +0 -38
  3163. venv/Lib/site-packages/win32ctypes/core/ctypes/_time.py +0 -17
  3164. venv/Lib/site-packages/win32ctypes/core/ctypes/_util.py +0 -81
  3165. venv/Lib/site-packages/win32ctypes/pywin32/__init__.py +0 -14
  3166. venv/Lib/site-packages/win32ctypes/pywin32/pywintypes.py +0 -37
  3167. venv/Lib/site-packages/win32ctypes/pywin32/win32api.py +0 -297
  3168. venv/Lib/site-packages/win32ctypes/pywin32/win32cred.py +0 -94
  3169. venv/Lib/site-packages/win32ctypes/pywintypes.py +0 -13
  3170. venv/Lib/site-packages/win32ctypes/tests/__init__.py +0 -20
  3171. venv/Lib/site-packages/win32ctypes/tests/compat.py +0 -84
  3172. venv/Lib/site-packages/win32ctypes/tests/test_win32api.py +0 -284
  3173. venv/Lib/site-packages/win32ctypes/tests/test_win32cred.py +0 -159
  3174. venv/Lib/site-packages/win32ctypes/version.py +0 -1
  3175. venv/Lib/site-packages/win32ctypes/win32api.py +0 -13
  3176. venv/Lib/site-packages/win32ctypes/win32cred.py +0 -13
  3177. venv/Lib/site-packages/zipp/__init__.py +0 -386
  3178. venv/Lib/site-packages/zipp/py310compat.py +0 -12
  3179. venv/Scripts/activate_this.py +0 -32
  3180. venv/Scripts/rst2html.py +0 -23
  3181. venv/Scripts/rst2html4.py +0 -26
  3182. venv/Scripts/rst2html5.py +0 -34
  3183. venv/Scripts/rst2latex.py +0 -27
  3184. venv/Scripts/rst2man.py +0 -28
  3185. venv/Scripts/rst2odt.py +0 -27
  3186. venv/Scripts/rst2odt_prepstyles.py +0 -65
  3187. venv/Scripts/rst2pseudoxml.py +0 -23
  3188. venv/Scripts/rst2s5.py +0 -24
  3189. venv/Scripts/rst2xetex.py +0 -28
  3190. venv/Scripts/rst2xml.py +0 -23
  3191. venv/Scripts/rstpep2html.py +0 -25
  3192. {venv/Lib/site-packages/PySide6/scripts → je_editor/pyside_ui/menu}/__init__.py +0 -0
  3193. {venv/Lib/site-packages/bleach/_vendor → je_editor/pyside_ui/ui_setting}/__init__.py +0 -0
  3194. {je_editor-0.0.57.dist-info → je_editor-0.0.59.dist-info}/WHEEL +0 -0
@@ -1,3824 +0,0 @@
1
- import warnings
2
-
3
- from collections import Counter, defaultdict, deque, abc
4
- from collections.abc import Sequence
5
- from functools import partial, reduce, wraps
6
- from heapq import merge, heapify, heapreplace, heappop
7
- from itertools import (
8
- chain,
9
- compress,
10
- count,
11
- cycle,
12
- dropwhile,
13
- groupby,
14
- islice,
15
- repeat,
16
- starmap,
17
- takewhile,
18
- tee,
19
- zip_longest,
20
- )
21
- from math import exp, factorial, floor, log
22
- from queue import Empty, Queue
23
- from random import random, randrange, uniform
24
- from operator import itemgetter, mul, sub, gt, lt
25
- from sys import hexversion, maxsize
26
- from time import monotonic
27
-
28
- from .recipes import (
29
- consume,
30
- flatten,
31
- pairwise,
32
- powerset,
33
- take,
34
- unique_everseen,
35
- )
36
-
37
- __all__ = [
38
- 'AbortThread',
39
- 'adjacent',
40
- 'always_iterable',
41
- 'always_reversible',
42
- 'bucket',
43
- 'callback_iter',
44
- 'chunked',
45
- 'circular_shifts',
46
- 'collapse',
47
- 'collate',
48
- 'consecutive_groups',
49
- 'consumer',
50
- 'countable',
51
- 'count_cycle',
52
- 'mark_ends',
53
- 'difference',
54
- 'distinct_combinations',
55
- 'distinct_permutations',
56
- 'distribute',
57
- 'divide',
58
- 'exactly_n',
59
- 'filter_except',
60
- 'first',
61
- 'groupby_transform',
62
- 'ilen',
63
- 'interleave_longest',
64
- 'interleave',
65
- 'intersperse',
66
- 'islice_extended',
67
- 'iterate',
68
- 'ichunked',
69
- 'is_sorted',
70
- 'last',
71
- 'locate',
72
- 'lstrip',
73
- 'make_decorator',
74
- 'map_except',
75
- 'map_reduce',
76
- 'nth_or_last',
77
- 'nth_permutation',
78
- 'nth_product',
79
- 'numeric_range',
80
- 'one',
81
- 'only',
82
- 'padded',
83
- 'partitions',
84
- 'set_partitions',
85
- 'peekable',
86
- 'repeat_last',
87
- 'replace',
88
- 'rlocate',
89
- 'rstrip',
90
- 'run_length',
91
- 'sample',
92
- 'seekable',
93
- 'SequenceView',
94
- 'side_effect',
95
- 'sliced',
96
- 'sort_together',
97
- 'split_at',
98
- 'split_after',
99
- 'split_before',
100
- 'split_when',
101
- 'split_into',
102
- 'spy',
103
- 'stagger',
104
- 'strip',
105
- 'substrings',
106
- 'substrings_indexes',
107
- 'time_limited',
108
- 'unique_to_each',
109
- 'unzip',
110
- 'windowed',
111
- 'with_iter',
112
- 'UnequalIterablesError',
113
- 'zip_equal',
114
- 'zip_offset',
115
- 'windowed_complete',
116
- 'all_unique',
117
- 'value_chain',
118
- 'product_index',
119
- 'combination_index',
120
- 'permutation_index',
121
- ]
122
-
123
- _marker = object()
124
-
125
-
126
- def chunked(iterable, n, strict=False):
127
- """Break *iterable* into lists of length *n*:
128
-
129
- >>> list(chunked([1, 2, 3, 4, 5, 6], 3))
130
- [[1, 2, 3], [4, 5, 6]]
131
-
132
- By the default, the last yielded list will have fewer than *n* elements
133
- if the length of *iterable* is not divisible by *n*:
134
-
135
- >>> list(chunked([1, 2, 3, 4, 5, 6, 7, 8], 3))
136
- [[1, 2, 3], [4, 5, 6], [7, 8]]
137
-
138
- To use a fill-in value instead, see the :func:`grouper` recipe.
139
-
140
- If the length of *iterable* is not divisible by *n* and *strict* is
141
- ``True``, then ``ValueError`` will be raised before the last
142
- list is yielded.
143
-
144
- """
145
- iterator = iter(partial(take, n, iter(iterable)), [])
146
- if strict:
147
-
148
- def ret():
149
- for chunk in iterator:
150
- if len(chunk) != n:
151
- raise ValueError('iterable is not divisible by n.')
152
- yield chunk
153
-
154
- return iter(ret())
155
- else:
156
- return iterator
157
-
158
-
159
- def first(iterable, default=_marker):
160
- """Return the first item of *iterable*, or *default* if *iterable* is
161
- empty.
162
-
163
- >>> first([0, 1, 2, 3])
164
- 0
165
- >>> first([], 'some default')
166
- 'some default'
167
-
168
- If *default* is not provided and there are no items in the iterable,
169
- raise ``ValueError``.
170
-
171
- :func:`first` is useful when you have a generator of expensive-to-retrieve
172
- values and want any arbitrary one. It is marginally shorter than
173
- ``next(iter(iterable), default)``.
174
-
175
- """
176
- try:
177
- return next(iter(iterable))
178
- except StopIteration as e:
179
- if default is _marker:
180
- raise ValueError(
181
- 'first() was called on an empty iterable, and no '
182
- 'default value was provided.'
183
- ) from e
184
- return default
185
-
186
-
187
- def last(iterable, default=_marker):
188
- """Return the last item of *iterable*, or *default* if *iterable* is
189
- empty.
190
-
191
- >>> last([0, 1, 2, 3])
192
- 3
193
- >>> last([], 'some default')
194
- 'some default'
195
-
196
- If *default* is not provided and there are no items in the iterable,
197
- raise ``ValueError``.
198
- """
199
- try:
200
- if isinstance(iterable, Sequence):
201
- return iterable[-1]
202
- # Work around https://bugs.python.org/issue38525
203
- elif hasattr(iterable, '__reversed__') and (hexversion != 0x030800F0):
204
- return next(reversed(iterable))
205
- else:
206
- return deque(iterable, maxlen=1)[-1]
207
- except (IndexError, TypeError, StopIteration):
208
- if default is _marker:
209
- raise ValueError(
210
- 'last() was called on an empty iterable, and no default was '
211
- 'provided.'
212
- )
213
- return default
214
-
215
-
216
- def nth_or_last(iterable, n, default=_marker):
217
- """Return the nth or the last item of *iterable*,
218
- or *default* if *iterable* is empty.
219
-
220
- >>> nth_or_last([0, 1, 2, 3], 2)
221
- 2
222
- >>> nth_or_last([0, 1], 2)
223
- 1
224
- >>> nth_or_last([], 0, 'some default')
225
- 'some default'
226
-
227
- If *default* is not provided and there are no items in the iterable,
228
- raise ``ValueError``.
229
- """
230
- return last(islice(iterable, n + 1), default=default)
231
-
232
-
233
- class peekable:
234
- """Wrap an iterator to allow lookahead and prepending elements.
235
-
236
- Call :meth:`peek` on the result to get the value that will be returned
237
- by :func:`next`. This won't advance the iterator:
238
-
239
- >>> p = peekable(['a', 'b'])
240
- >>> p.peek()
241
- 'a'
242
- >>> next(p)
243
- 'a'
244
-
245
- Pass :meth:`peek` a default value to return that instead of raising
246
- ``StopIteration`` when the iterator is exhausted.
247
-
248
- >>> p = peekable([])
249
- >>> p.peek('hi')
250
- 'hi'
251
-
252
- peekables also offer a :meth:`prepend` method, which "inserts" items
253
- at the head of the iterable:
254
-
255
- >>> p = peekable([1, 2, 3])
256
- >>> p.prepend(10, 11, 12)
257
- >>> next(p)
258
- 10
259
- >>> p.peek()
260
- 11
261
- >>> list(p)
262
- [11, 12, 1, 2, 3]
263
-
264
- peekables can be indexed. Index 0 is the item that will be returned by
265
- :func:`next`, index 1 is the item after that, and so on:
266
- The values up to the given index will be cached.
267
-
268
- >>> p = peekable(['a', 'b', 'c', 'd'])
269
- >>> p[0]
270
- 'a'
271
- >>> p[1]
272
- 'b'
273
- >>> next(p)
274
- 'a'
275
-
276
- Negative indexes are supported, but be aware that they will cache the
277
- remaining items in the source iterator, which may require significant
278
- storage.
279
-
280
- To check whether a peekable is exhausted, check its truth value:
281
-
282
- >>> p = peekable(['a', 'b'])
283
- >>> if p: # peekable has items
284
- ... list(p)
285
- ['a', 'b']
286
- >>> if not p: # peekable is exhausted
287
- ... list(p)
288
- []
289
-
290
- """
291
-
292
- def __init__(self, iterable):
293
- self._it = iter(iterable)
294
- self._cache = deque()
295
-
296
- def __iter__(self):
297
- return self
298
-
299
- def __bool__(self):
300
- try:
301
- self.peek()
302
- except StopIteration:
303
- return False
304
- return True
305
-
306
- def peek(self, default=_marker):
307
- """Return the item that will be next returned from ``next()``.
308
-
309
- Return ``default`` if there are no items left. If ``default`` is not
310
- provided, raise ``StopIteration``.
311
-
312
- """
313
- if not self._cache:
314
- try:
315
- self._cache.append(next(self._it))
316
- except StopIteration:
317
- if default is _marker:
318
- raise
319
- return default
320
- return self._cache[0]
321
-
322
- def prepend(self, *items):
323
- """Stack up items to be the next ones returned from ``next()`` or
324
- ``self.peek()``. The items will be returned in
325
- first in, first out order::
326
-
327
- >>> p = peekable([1, 2, 3])
328
- >>> p.prepend(10, 11, 12)
329
- >>> next(p)
330
- 10
331
- >>> list(p)
332
- [11, 12, 1, 2, 3]
333
-
334
- It is possible, by prepending items, to "resurrect" a peekable that
335
- previously raised ``StopIteration``.
336
-
337
- >>> p = peekable([])
338
- >>> next(p)
339
- Traceback (most recent call last):
340
- ...
341
- StopIteration
342
- >>> p.prepend(1)
343
- >>> next(p)
344
- 1
345
- >>> next(p)
346
- Traceback (most recent call last):
347
- ...
348
- StopIteration
349
-
350
- """
351
- self._cache.extendleft(reversed(items))
352
-
353
- def __next__(self):
354
- if self._cache:
355
- return self._cache.popleft()
356
-
357
- return next(self._it)
358
-
359
- def _get_slice(self, index):
360
- # Normalize the slice's arguments
361
- step = 1 if (index.step is None) else index.step
362
- if step > 0:
363
- start = 0 if (index.start is None) else index.start
364
- stop = maxsize if (index.stop is None) else index.stop
365
- elif step < 0:
366
- start = -1 if (index.start is None) else index.start
367
- stop = (-maxsize - 1) if (index.stop is None) else index.stop
368
- else:
369
- raise ValueError('slice step cannot be zero')
370
-
371
- # If either the start or stop index is negative, we'll need to cache
372
- # the rest of the iterable in order to slice from the right side.
373
- if (start < 0) or (stop < 0):
374
- self._cache.extend(self._it)
375
- # Otherwise we'll need to find the rightmost index and cache to that
376
- # point.
377
- else:
378
- n = min(max(start, stop) + 1, maxsize)
379
- cache_len = len(self._cache)
380
- if n >= cache_len:
381
- self._cache.extend(islice(self._it, n - cache_len))
382
-
383
- return list(self._cache)[index]
384
-
385
- def __getitem__(self, index):
386
- if isinstance(index, slice):
387
- return self._get_slice(index)
388
-
389
- cache_len = len(self._cache)
390
- if index < 0:
391
- self._cache.extend(self._it)
392
- elif index >= cache_len:
393
- self._cache.extend(islice(self._it, index + 1 - cache_len))
394
-
395
- return self._cache[index]
396
-
397
-
398
- def collate(*iterables, **kwargs):
399
- """Return a sorted merge of the items from each of several already-sorted
400
- *iterables*.
401
-
402
- >>> list(collate('ACDZ', 'AZ', 'JKL'))
403
- ['A', 'A', 'C', 'D', 'J', 'K', 'L', 'Z', 'Z']
404
-
405
- Works lazily, keeping only the next value from each iterable in memory. Use
406
- :func:`collate` to, for example, perform a n-way mergesort of items that
407
- don't fit in memory.
408
-
409
- If a *key* function is specified, the iterables will be sorted according
410
- to its result:
411
-
412
- >>> key = lambda s: int(s) # Sort by numeric value, not by string
413
- >>> list(collate(['1', '10'], ['2', '11'], key=key))
414
- ['1', '2', '10', '11']
415
-
416
-
417
- If the *iterables* are sorted in descending order, set *reverse* to
418
- ``True``:
419
-
420
- >>> list(collate([5, 3, 1], [4, 2, 0], reverse=True))
421
- [5, 4, 3, 2, 1, 0]
422
-
423
- If the elements of the passed-in iterables are out of order, you might get
424
- unexpected results.
425
-
426
- On Python 3.5+, this function is an alias for :func:`heapq.merge`.
427
-
428
- """
429
- warnings.warn(
430
- "collate is no longer part of more_itertools, use heapq.merge",
431
- DeprecationWarning,
432
- )
433
- return merge(*iterables, **kwargs)
434
-
435
-
436
- def consumer(func):
437
- """Decorator that automatically advances a PEP-342-style "reverse iterator"
438
- to its first yield point so you don't have to call ``next()`` on it
439
- manually.
440
-
441
- >>> @consumer
442
- ... def tally():
443
- ... i = 0
444
- ... while True:
445
- ... print('Thing number %s is %s.' % (i, (yield)))
446
- ... i += 1
447
- ...
448
- >>> t = tally()
449
- >>> t.send('red')
450
- Thing number 0 is red.
451
- >>> t.send('fish')
452
- Thing number 1 is fish.
453
-
454
- Without the decorator, you would have to call ``next(t)`` before
455
- ``t.send()`` could be used.
456
-
457
- """
458
-
459
- @wraps(func)
460
- def wrapper(*args, **kwargs):
461
- gen = func(*args, **kwargs)
462
- next(gen)
463
- return gen
464
-
465
- return wrapper
466
-
467
-
468
- def ilen(iterable):
469
- """Return the number of items in *iterable*.
470
-
471
- >>> ilen(x for x in range(1000000) if x % 3 == 0)
472
- 333334
473
-
474
- This consumes the iterable, so handle with care.
475
-
476
- """
477
- # This approach was selected because benchmarks showed it's likely the
478
- # fastest of the known implementations at the time of writing.
479
- # See GitHub tracker: #236, #230.
480
- counter = count()
481
- deque(zip(iterable, counter), maxlen=0)
482
- return next(counter)
483
-
484
-
485
- def iterate(func, start):
486
- """Return ``start``, ``func(start)``, ``func(func(start))``, ...
487
-
488
- >>> from itertools import islice
489
- >>> list(islice(iterate(lambda x: 2*x, 1), 10))
490
- [1, 2, 4, 8, 16, 32, 64, 128, 256, 512]
491
-
492
- """
493
- while True:
494
- yield start
495
- start = func(start)
496
-
497
-
498
- def with_iter(context_manager):
499
- """Wrap an iterable in a ``with`` statement, so it closes once exhausted.
500
-
501
- For example, this will close the file when the iterator is exhausted::
502
-
503
- upper_lines = (line.upper() for line in with_iter(open('foo')))
504
-
505
- Any context manager which returns an iterable is a candidate for
506
- ``with_iter``.
507
-
508
- """
509
- with context_manager as iterable:
510
- yield from iterable
511
-
512
-
513
- def one(iterable, too_short=None, too_long=None):
514
- """Return the first item from *iterable*, which is expected to contain only
515
- that item. Raise an exception if *iterable* is empty or has more than one
516
- item.
517
-
518
- :func:`one` is useful for ensuring that an iterable contains only one item.
519
- For example, it can be used to retrieve the result of a database query
520
- that is expected to return a single row.
521
-
522
- If *iterable* is empty, ``ValueError`` will be raised. You may specify a
523
- different exception with the *too_short* keyword:
524
-
525
- >>> it = []
526
- >>> one(it) # doctest: +IGNORE_EXCEPTION_DETAIL
527
- Traceback (most recent call last):
528
- ...
529
- ValueError: too many items in iterable (expected 1)'
530
- >>> too_short = IndexError('too few items')
531
- >>> one(it, too_short=too_short) # doctest: +IGNORE_EXCEPTION_DETAIL
532
- Traceback (most recent call last):
533
- ...
534
- IndexError: too few items
535
-
536
- Similarly, if *iterable* contains more than one item, ``ValueError`` will
537
- be raised. You may specify a different exception with the *too_long*
538
- keyword:
539
-
540
- >>> it = ['too', 'many']
541
- >>> one(it) # doctest: +IGNORE_EXCEPTION_DETAIL
542
- Traceback (most recent call last):
543
- ...
544
- ValueError: Expected exactly one item in iterable, but got 'too',
545
- 'many', and perhaps more.
546
- >>> too_long = RuntimeError
547
- >>> one(it, too_long=too_long) # doctest: +IGNORE_EXCEPTION_DETAIL
548
- Traceback (most recent call last):
549
- ...
550
- RuntimeError
551
-
552
- Note that :func:`one` attempts to advance *iterable* twice to ensure there
553
- is only one item. See :func:`spy` or :func:`peekable` to check iterable
554
- contents less destructively.
555
-
556
- """
557
- it = iter(iterable)
558
-
559
- try:
560
- first_value = next(it)
561
- except StopIteration as e:
562
- raise (
563
- too_short or ValueError('too few items in iterable (expected 1)')
564
- ) from e
565
-
566
- try:
567
- second_value = next(it)
568
- except StopIteration:
569
- pass
570
- else:
571
- msg = (
572
- 'Expected exactly one item in iterable, but got {!r}, {!r}, '
573
- 'and perhaps more.'.format(first_value, second_value)
574
- )
575
- raise too_long or ValueError(msg)
576
-
577
- return first_value
578
-
579
-
580
- def distinct_permutations(iterable, r=None):
581
- """Yield successive distinct permutations of the elements in *iterable*.
582
-
583
- >>> sorted(distinct_permutations([1, 0, 1]))
584
- [(0, 1, 1), (1, 0, 1), (1, 1, 0)]
585
-
586
- Equivalent to ``set(permutations(iterable))``, except duplicates are not
587
- generated and thrown away. For larger input sequences this is much more
588
- efficient.
589
-
590
- Duplicate permutations arise when there are duplicated elements in the
591
- input iterable. The number of items returned is
592
- `n! / (x_1! * x_2! * ... * x_n!)`, where `n` is the total number of
593
- items input, and each `x_i` is the count of a distinct item in the input
594
- sequence.
595
-
596
- If *r* is given, only the *r*-length permutations are yielded.
597
-
598
- >>> sorted(distinct_permutations([1, 0, 1], r=2))
599
- [(0, 1), (1, 0), (1, 1)]
600
- >>> sorted(distinct_permutations(range(3), r=2))
601
- [(0, 1), (0, 2), (1, 0), (1, 2), (2, 0), (2, 1)]
602
-
603
- """
604
- # Algorithm: https://w.wiki/Qai
605
- def _full(A):
606
- while True:
607
- # Yield the permutation we have
608
- yield tuple(A)
609
-
610
- # Find the largest index i such that A[i] < A[i + 1]
611
- for i in range(size - 2, -1, -1):
612
- if A[i] < A[i + 1]:
613
- break
614
- # If no such index exists, this permutation is the last one
615
- else:
616
- return
617
-
618
- # Find the largest index j greater than j such that A[i] < A[j]
619
- for j in range(size - 1, i, -1):
620
- if A[i] < A[j]:
621
- break
622
-
623
- # Swap the value of A[i] with that of A[j], then reverse the
624
- # sequence from A[i + 1] to form the new permutation
625
- A[i], A[j] = A[j], A[i]
626
- A[i + 1 :] = A[: i - size : -1] # A[i + 1:][::-1]
627
-
628
- # Algorithm: modified from the above
629
- def _partial(A, r):
630
- # Split A into the first r items and the last r items
631
- head, tail = A[:r], A[r:]
632
- right_head_indexes = range(r - 1, -1, -1)
633
- left_tail_indexes = range(len(tail))
634
-
635
- while True:
636
- # Yield the permutation we have
637
- yield tuple(head)
638
-
639
- # Starting from the right, find the first index of the head with
640
- # value smaller than the maximum value of the tail - call it i.
641
- pivot = tail[-1]
642
- for i in right_head_indexes:
643
- if head[i] < pivot:
644
- break
645
- pivot = head[i]
646
- else:
647
- return
648
-
649
- # Starting from the left, find the first value of the tail
650
- # with a value greater than head[i] and swap.
651
- for j in left_tail_indexes:
652
- if tail[j] > head[i]:
653
- head[i], tail[j] = tail[j], head[i]
654
- break
655
- # If we didn't find one, start from the right and find the first
656
- # index of the head with a value greater than head[i] and swap.
657
- else:
658
- for j in right_head_indexes:
659
- if head[j] > head[i]:
660
- head[i], head[j] = head[j], head[i]
661
- break
662
-
663
- # Reverse head[i + 1:] and swap it with tail[:r - (i + 1)]
664
- tail += head[: i - r : -1] # head[i + 1:][::-1]
665
- i += 1
666
- head[i:], tail[:] = tail[: r - i], tail[r - i :]
667
-
668
- items = sorted(iterable)
669
-
670
- size = len(items)
671
- if r is None:
672
- r = size
673
-
674
- if 0 < r <= size:
675
- return _full(items) if (r == size) else _partial(items, r)
676
-
677
- return iter(() if r else ((),))
678
-
679
-
680
- def intersperse(e, iterable, n=1):
681
- """Intersperse filler element *e* among the items in *iterable*, leaving
682
- *n* items between each filler element.
683
-
684
- >>> list(intersperse('!', [1, 2, 3, 4, 5]))
685
- [1, '!', 2, '!', 3, '!', 4, '!', 5]
686
-
687
- >>> list(intersperse(None, [1, 2, 3, 4, 5], n=2))
688
- [1, 2, None, 3, 4, None, 5]
689
-
690
- """
691
- if n == 0:
692
- raise ValueError('n must be > 0')
693
- elif n == 1:
694
- # interleave(repeat(e), iterable) -> e, x_0, e, e, x_1, e, x_2...
695
- # islice(..., 1, None) -> x_0, e, e, x_1, e, x_2...
696
- return islice(interleave(repeat(e), iterable), 1, None)
697
- else:
698
- # interleave(filler, chunks) -> [e], [x_0, x_1], [e], [x_2, x_3]...
699
- # islice(..., 1, None) -> [x_0, x_1], [e], [x_2, x_3]...
700
- # flatten(...) -> x_0, x_1, e, x_2, x_3...
701
- filler = repeat([e])
702
- chunks = chunked(iterable, n)
703
- return flatten(islice(interleave(filler, chunks), 1, None))
704
-
705
-
706
- def unique_to_each(*iterables):
707
- """Return the elements from each of the input iterables that aren't in the
708
- other input iterables.
709
-
710
- For example, suppose you have a set of packages, each with a set of
711
- dependencies::
712
-
713
- {'pkg_1': {'A', 'B'}, 'pkg_2': {'B', 'C'}, 'pkg_3': {'B', 'D'}}
714
-
715
- If you remove one package, which dependencies can also be removed?
716
-
717
- If ``pkg_1`` is removed, then ``A`` is no longer necessary - it is not
718
- associated with ``pkg_2`` or ``pkg_3``. Similarly, ``C`` is only needed for
719
- ``pkg_2``, and ``D`` is only needed for ``pkg_3``::
720
-
721
- >>> unique_to_each({'A', 'B'}, {'B', 'C'}, {'B', 'D'})
722
- [['A'], ['C'], ['D']]
723
-
724
- If there are duplicates in one input iterable that aren't in the others
725
- they will be duplicated in the output. Input order is preserved::
726
-
727
- >>> unique_to_each("mississippi", "missouri")
728
- [['p', 'p'], ['o', 'u', 'r']]
729
-
730
- It is assumed that the elements of each iterable are hashable.
731
-
732
- """
733
- pool = [list(it) for it in iterables]
734
- counts = Counter(chain.from_iterable(map(set, pool)))
735
- uniques = {element for element in counts if counts[element] == 1}
736
- return [list(filter(uniques.__contains__, it)) for it in pool]
737
-
738
-
739
- def windowed(seq, n, fillvalue=None, step=1):
740
- """Return a sliding window of width *n* over the given iterable.
741
-
742
- >>> all_windows = windowed([1, 2, 3, 4, 5], 3)
743
- >>> list(all_windows)
744
- [(1, 2, 3), (2, 3, 4), (3, 4, 5)]
745
-
746
- When the window is larger than the iterable, *fillvalue* is used in place
747
- of missing values:
748
-
749
- >>> list(windowed([1, 2, 3], 4))
750
- [(1, 2, 3, None)]
751
-
752
- Each window will advance in increments of *step*:
753
-
754
- >>> list(windowed([1, 2, 3, 4, 5, 6], 3, fillvalue='!', step=2))
755
- [(1, 2, 3), (3, 4, 5), (5, 6, '!')]
756
-
757
- To slide into the iterable's items, use :func:`chain` to add filler items
758
- to the left:
759
-
760
- >>> iterable = [1, 2, 3, 4]
761
- >>> n = 3
762
- >>> padding = [None] * (n - 1)
763
- >>> list(windowed(chain(padding, iterable), 3))
764
- [(None, None, 1), (None, 1, 2), (1, 2, 3), (2, 3, 4)]
765
- """
766
- if n < 0:
767
- raise ValueError('n must be >= 0')
768
- if n == 0:
769
- yield tuple()
770
- return
771
- if step < 1:
772
- raise ValueError('step must be >= 1')
773
-
774
- window = deque(maxlen=n)
775
- i = n
776
- for _ in map(window.append, seq):
777
- i -= 1
778
- if not i:
779
- i = step
780
- yield tuple(window)
781
-
782
- size = len(window)
783
- if size < n:
784
- yield tuple(chain(window, repeat(fillvalue, n - size)))
785
- elif 0 < i < min(step, n):
786
- window += (fillvalue,) * i
787
- yield tuple(window)
788
-
789
-
790
- def substrings(iterable):
791
- """Yield all of the substrings of *iterable*.
792
-
793
- >>> [''.join(s) for s in substrings('more')]
794
- ['m', 'o', 'r', 'e', 'mo', 'or', 're', 'mor', 'ore', 'more']
795
-
796
- Note that non-string iterables can also be subdivided.
797
-
798
- >>> list(substrings([0, 1, 2]))
799
- [(0,), (1,), (2,), (0, 1), (1, 2), (0, 1, 2)]
800
-
801
- """
802
- # The length-1 substrings
803
- seq = []
804
- for item in iter(iterable):
805
- seq.append(item)
806
- yield (item,)
807
- seq = tuple(seq)
808
- item_count = len(seq)
809
-
810
- # And the rest
811
- for n in range(2, item_count + 1):
812
- for i in range(item_count - n + 1):
813
- yield seq[i : i + n]
814
-
815
-
816
- def substrings_indexes(seq, reverse=False):
817
- """Yield all substrings and their positions in *seq*
818
-
819
- The items yielded will be a tuple of the form ``(substr, i, j)``, where
820
- ``substr == seq[i:j]``.
821
-
822
- This function only works for iterables that support slicing, such as
823
- ``str`` objects.
824
-
825
- >>> for item in substrings_indexes('more'):
826
- ... print(item)
827
- ('m', 0, 1)
828
- ('o', 1, 2)
829
- ('r', 2, 3)
830
- ('e', 3, 4)
831
- ('mo', 0, 2)
832
- ('or', 1, 3)
833
- ('re', 2, 4)
834
- ('mor', 0, 3)
835
- ('ore', 1, 4)
836
- ('more', 0, 4)
837
-
838
- Set *reverse* to ``True`` to yield the same items in the opposite order.
839
-
840
-
841
- """
842
- r = range(1, len(seq) + 1)
843
- if reverse:
844
- r = reversed(r)
845
- return (
846
- (seq[i : i + L], i, i + L) for L in r for i in range(len(seq) - L + 1)
847
- )
848
-
849
-
850
- class bucket:
851
- """Wrap *iterable* and return an object that buckets it iterable into
852
- child iterables based on a *key* function.
853
-
854
- >>> iterable = ['a1', 'b1', 'c1', 'a2', 'b2', 'c2', 'b3']
855
- >>> s = bucket(iterable, key=lambda x: x[0]) # Bucket by 1st character
856
- >>> sorted(list(s)) # Get the keys
857
- ['a', 'b', 'c']
858
- >>> a_iterable = s['a']
859
- >>> next(a_iterable)
860
- 'a1'
861
- >>> next(a_iterable)
862
- 'a2'
863
- >>> list(s['b'])
864
- ['b1', 'b2', 'b3']
865
-
866
- The original iterable will be advanced and its items will be cached until
867
- they are used by the child iterables. This may require significant storage.
868
-
869
- By default, attempting to select a bucket to which no items belong will
870
- exhaust the iterable and cache all values.
871
- If you specify a *validator* function, selected buckets will instead be
872
- checked against it.
873
-
874
- >>> from itertools import count
875
- >>> it = count(1, 2) # Infinite sequence of odd numbers
876
- >>> key = lambda x: x % 10 # Bucket by last digit
877
- >>> validator = lambda x: x in {1, 3, 5, 7, 9} # Odd digits only
878
- >>> s = bucket(it, key=key, validator=validator)
879
- >>> 2 in s
880
- False
881
- >>> list(s[2])
882
- []
883
-
884
- """
885
-
886
- def __init__(self, iterable, key, validator=None):
887
- self._it = iter(iterable)
888
- self._key = key
889
- self._cache = defaultdict(deque)
890
- self._validator = validator or (lambda x: True)
891
-
892
- def __contains__(self, value):
893
- if not self._validator(value):
894
- return False
895
-
896
- try:
897
- item = next(self[value])
898
- except StopIteration:
899
- return False
900
- else:
901
- self._cache[value].appendleft(item)
902
-
903
- return True
904
-
905
- def _get_values(self, value):
906
- """
907
- Helper to yield items from the parent iterator that match *value*.
908
- Items that don't match are stored in the local cache as they
909
- are encountered.
910
- """
911
- while True:
912
- # If we've cached some items that match the target value, emit
913
- # the first one and evict it from the cache.
914
- if self._cache[value]:
915
- yield self._cache[value].popleft()
916
- # Otherwise we need to advance the parent iterator to search for
917
- # a matching item, caching the rest.
918
- else:
919
- while True:
920
- try:
921
- item = next(self._it)
922
- except StopIteration:
923
- return
924
- item_value = self._key(item)
925
- if item_value == value:
926
- yield item
927
- break
928
- elif self._validator(item_value):
929
- self._cache[item_value].append(item)
930
-
931
- def __iter__(self):
932
- for item in self._it:
933
- item_value = self._key(item)
934
- if self._validator(item_value):
935
- self._cache[item_value].append(item)
936
-
937
- yield from self._cache.keys()
938
-
939
- def __getitem__(self, value):
940
- if not self._validator(value):
941
- return iter(())
942
-
943
- return self._get_values(value)
944
-
945
-
946
- def spy(iterable, n=1):
947
- """Return a 2-tuple with a list containing the first *n* elements of
948
- *iterable*, and an iterator with the same items as *iterable*.
949
- This allows you to "look ahead" at the items in the iterable without
950
- advancing it.
951
-
952
- There is one item in the list by default:
953
-
954
- >>> iterable = 'abcdefg'
955
- >>> head, iterable = spy(iterable)
956
- >>> head
957
- ['a']
958
- >>> list(iterable)
959
- ['a', 'b', 'c', 'd', 'e', 'f', 'g']
960
-
961
- You may use unpacking to retrieve items instead of lists:
962
-
963
- >>> (head,), iterable = spy('abcdefg')
964
- >>> head
965
- 'a'
966
- >>> (first, second), iterable = spy('abcdefg', 2)
967
- >>> first
968
- 'a'
969
- >>> second
970
- 'b'
971
-
972
- The number of items requested can be larger than the number of items in
973
- the iterable:
974
-
975
- >>> iterable = [1, 2, 3, 4, 5]
976
- >>> head, iterable = spy(iterable, 10)
977
- >>> head
978
- [1, 2, 3, 4, 5]
979
- >>> list(iterable)
980
- [1, 2, 3, 4, 5]
981
-
982
- """
983
- it = iter(iterable)
984
- head = take(n, it)
985
-
986
- return head.copy(), chain(head, it)
987
-
988
-
989
- def interleave(*iterables):
990
- """Return a new iterable yielding from each iterable in turn,
991
- until the shortest is exhausted.
992
-
993
- >>> list(interleave([1, 2, 3], [4, 5], [6, 7, 8]))
994
- [1, 4, 6, 2, 5, 7]
995
-
996
- For a version that doesn't terminate after the shortest iterable is
997
- exhausted, see :func:`interleave_longest`.
998
-
999
- """
1000
- return chain.from_iterable(zip(*iterables))
1001
-
1002
-
1003
- def interleave_longest(*iterables):
1004
- """Return a new iterable yielding from each iterable in turn,
1005
- skipping any that are exhausted.
1006
-
1007
- >>> list(interleave_longest([1, 2, 3], [4, 5], [6, 7, 8]))
1008
- [1, 4, 6, 2, 5, 7, 3, 8]
1009
-
1010
- This function produces the same output as :func:`roundrobin`, but may
1011
- perform better for some inputs (in particular when the number of iterables
1012
- is large).
1013
-
1014
- """
1015
- i = chain.from_iterable(zip_longest(*iterables, fillvalue=_marker))
1016
- return (x for x in i if x is not _marker)
1017
-
1018
-
1019
- def collapse(iterable, base_type=None, levels=None):
1020
- """Flatten an iterable with multiple levels of nesting (e.g., a list of
1021
- lists of tuples) into non-iterable types.
1022
-
1023
- >>> iterable = [(1, 2), ([3, 4], [[5], [6]])]
1024
- >>> list(collapse(iterable))
1025
- [1, 2, 3, 4, 5, 6]
1026
-
1027
- Binary and text strings are not considered iterable and
1028
- will not be collapsed.
1029
-
1030
- To avoid collapsing other types, specify *base_type*:
1031
-
1032
- >>> iterable = ['ab', ('cd', 'ef'), ['gh', 'ij']]
1033
- >>> list(collapse(iterable, base_type=tuple))
1034
- ['ab', ('cd', 'ef'), 'gh', 'ij']
1035
-
1036
- Specify *levels* to stop flattening after a certain level:
1037
-
1038
- >>> iterable = [('a', ['b']), ('c', ['d'])]
1039
- >>> list(collapse(iterable)) # Fully flattened
1040
- ['a', 'b', 'c', 'd']
1041
- >>> list(collapse(iterable, levels=1)) # Only one level flattened
1042
- ['a', ['b'], 'c', ['d']]
1043
-
1044
- """
1045
-
1046
- def walk(node, level):
1047
- if (
1048
- ((levels is not None) and (level > levels))
1049
- or isinstance(node, (str, bytes))
1050
- or ((base_type is not None) and isinstance(node, base_type))
1051
- ):
1052
- yield node
1053
- return
1054
-
1055
- try:
1056
- tree = iter(node)
1057
- except TypeError:
1058
- yield node
1059
- return
1060
- else:
1061
- for child in tree:
1062
- yield from walk(child, level + 1)
1063
-
1064
- yield from walk(iterable, 0)
1065
-
1066
-
1067
- def side_effect(func, iterable, chunk_size=None, before=None, after=None):
1068
- """Invoke *func* on each item in *iterable* (or on each *chunk_size* group
1069
- of items) before yielding the item.
1070
-
1071
- `func` must be a function that takes a single argument. Its return value
1072
- will be discarded.
1073
-
1074
- *before* and *after* are optional functions that take no arguments. They
1075
- will be executed before iteration starts and after it ends, respectively.
1076
-
1077
- `side_effect` can be used for logging, updating progress bars, or anything
1078
- that is not functionally "pure."
1079
-
1080
- Emitting a status message:
1081
-
1082
- >>> from more_itertools import consume
1083
- >>> func = lambda item: print('Received {}'.format(item))
1084
- >>> consume(side_effect(func, range(2)))
1085
- Received 0
1086
- Received 1
1087
-
1088
- Operating on chunks of items:
1089
-
1090
- >>> pair_sums = []
1091
- >>> func = lambda chunk: pair_sums.append(sum(chunk))
1092
- >>> list(side_effect(func, [0, 1, 2, 3, 4, 5], 2))
1093
- [0, 1, 2, 3, 4, 5]
1094
- >>> list(pair_sums)
1095
- [1, 5, 9]
1096
-
1097
- Writing to a file-like object:
1098
-
1099
- >>> from io import StringIO
1100
- >>> from more_itertools import consume
1101
- >>> f = StringIO()
1102
- >>> func = lambda x: print(x, file=f)
1103
- >>> before = lambda: print(u'HEADER', file=f)
1104
- >>> after = f.close
1105
- >>> it = [u'a', u'b', u'c']
1106
- >>> consume(side_effect(func, it, before=before, after=after))
1107
- >>> f.closed
1108
- True
1109
-
1110
- """
1111
- try:
1112
- if before is not None:
1113
- before()
1114
-
1115
- if chunk_size is None:
1116
- for item in iterable:
1117
- func(item)
1118
- yield item
1119
- else:
1120
- for chunk in chunked(iterable, chunk_size):
1121
- func(chunk)
1122
- yield from chunk
1123
- finally:
1124
- if after is not None:
1125
- after()
1126
-
1127
-
1128
- def sliced(seq, n, strict=False):
1129
- """Yield slices of length *n* from the sequence *seq*.
1130
-
1131
- >>> list(sliced((1, 2, 3, 4, 5, 6), 3))
1132
- [(1, 2, 3), (4, 5, 6)]
1133
-
1134
- By the default, the last yielded slice will have fewer than *n* elements
1135
- if the length of *seq* is not divisible by *n*:
1136
-
1137
- >>> list(sliced((1, 2, 3, 4, 5, 6, 7, 8), 3))
1138
- [(1, 2, 3), (4, 5, 6), (7, 8)]
1139
-
1140
- If the length of *seq* is not divisible by *n* and *strict* is
1141
- ``True``, then ``ValueError`` will be raised before the last
1142
- slice is yielded.
1143
-
1144
- This function will only work for iterables that support slicing.
1145
- For non-sliceable iterables, see :func:`chunked`.
1146
-
1147
- """
1148
- iterator = takewhile(len, (seq[i : i + n] for i in count(0, n)))
1149
- if strict:
1150
-
1151
- def ret():
1152
- for _slice in iterator:
1153
- if len(_slice) != n:
1154
- raise ValueError("seq is not divisible by n.")
1155
- yield _slice
1156
-
1157
- return iter(ret())
1158
- else:
1159
- return iterator
1160
-
1161
-
1162
- def split_at(iterable, pred, maxsplit=-1, keep_separator=False):
1163
- """Yield lists of items from *iterable*, where each list is delimited by
1164
- an item where callable *pred* returns ``True``.
1165
-
1166
- >>> list(split_at('abcdcba', lambda x: x == 'b'))
1167
- [['a'], ['c', 'd', 'c'], ['a']]
1168
-
1169
- >>> list(split_at(range(10), lambda n: n % 2 == 1))
1170
- [[0], [2], [4], [6], [8], []]
1171
-
1172
- At most *maxsplit* splits are done. If *maxsplit* is not specified or -1,
1173
- then there is no limit on the number of splits:
1174
-
1175
- >>> list(split_at(range(10), lambda n: n % 2 == 1, maxsplit=2))
1176
- [[0], [2], [4, 5, 6, 7, 8, 9]]
1177
-
1178
- By default, the delimiting items are not included in the output.
1179
- The include them, set *keep_separator* to ``True``.
1180
-
1181
- >>> list(split_at('abcdcba', lambda x: x == 'b', keep_separator=True))
1182
- [['a'], ['b'], ['c', 'd', 'c'], ['b'], ['a']]
1183
-
1184
- """
1185
- if maxsplit == 0:
1186
- yield list(iterable)
1187
- return
1188
-
1189
- buf = []
1190
- it = iter(iterable)
1191
- for item in it:
1192
- if pred(item):
1193
- yield buf
1194
- if keep_separator:
1195
- yield [item]
1196
- if maxsplit == 1:
1197
- yield list(it)
1198
- return
1199
- buf = []
1200
- maxsplit -= 1
1201
- else:
1202
- buf.append(item)
1203
- yield buf
1204
-
1205
-
1206
- def split_before(iterable, pred, maxsplit=-1):
1207
- """Yield lists of items from *iterable*, where each list ends just before
1208
- an item for which callable *pred* returns ``True``:
1209
-
1210
- >>> list(split_before('OneTwo', lambda s: s.isupper()))
1211
- [['O', 'n', 'e'], ['T', 'w', 'o']]
1212
-
1213
- >>> list(split_before(range(10), lambda n: n % 3 == 0))
1214
- [[0, 1, 2], [3, 4, 5], [6, 7, 8], [9]]
1215
-
1216
- At most *maxsplit* splits are done. If *maxsplit* is not specified or -1,
1217
- then there is no limit on the number of splits:
1218
-
1219
- >>> list(split_before(range(10), lambda n: n % 3 == 0, maxsplit=2))
1220
- [[0, 1, 2], [3, 4, 5], [6, 7, 8, 9]]
1221
- """
1222
- if maxsplit == 0:
1223
- yield list(iterable)
1224
- return
1225
-
1226
- buf = []
1227
- it = iter(iterable)
1228
- for item in it:
1229
- if pred(item) and buf:
1230
- yield buf
1231
- if maxsplit == 1:
1232
- yield [item] + list(it)
1233
- return
1234
- buf = []
1235
- maxsplit -= 1
1236
- buf.append(item)
1237
- if buf:
1238
- yield buf
1239
-
1240
-
1241
- def split_after(iterable, pred, maxsplit=-1):
1242
- """Yield lists of items from *iterable*, where each list ends with an
1243
- item where callable *pred* returns ``True``:
1244
-
1245
- >>> list(split_after('one1two2', lambda s: s.isdigit()))
1246
- [['o', 'n', 'e', '1'], ['t', 'w', 'o', '2']]
1247
-
1248
- >>> list(split_after(range(10), lambda n: n % 3 == 0))
1249
- [[0], [1, 2, 3], [4, 5, 6], [7, 8, 9]]
1250
-
1251
- At most *maxsplit* splits are done. If *maxsplit* is not specified or -1,
1252
- then there is no limit on the number of splits:
1253
-
1254
- >>> list(split_after(range(10), lambda n: n % 3 == 0, maxsplit=2))
1255
- [[0], [1, 2, 3], [4, 5, 6, 7, 8, 9]]
1256
-
1257
- """
1258
- if maxsplit == 0:
1259
- yield list(iterable)
1260
- return
1261
-
1262
- buf = []
1263
- it = iter(iterable)
1264
- for item in it:
1265
- buf.append(item)
1266
- if pred(item) and buf:
1267
- yield buf
1268
- if maxsplit == 1:
1269
- yield list(it)
1270
- return
1271
- buf = []
1272
- maxsplit -= 1
1273
- if buf:
1274
- yield buf
1275
-
1276
-
1277
- def split_when(iterable, pred, maxsplit=-1):
1278
- """Split *iterable* into pieces based on the output of *pred*.
1279
- *pred* should be a function that takes successive pairs of items and
1280
- returns ``True`` if the iterable should be split in between them.
1281
-
1282
- For example, to find runs of increasing numbers, split the iterable when
1283
- element ``i`` is larger than element ``i + 1``:
1284
-
1285
- >>> list(split_when([1, 2, 3, 3, 2, 5, 2, 4, 2], lambda x, y: x > y))
1286
- [[1, 2, 3, 3], [2, 5], [2, 4], [2]]
1287
-
1288
- At most *maxsplit* splits are done. If *maxsplit* is not specified or -1,
1289
- then there is no limit on the number of splits:
1290
-
1291
- >>> list(split_when([1, 2, 3, 3, 2, 5, 2, 4, 2],
1292
- ... lambda x, y: x > y, maxsplit=2))
1293
- [[1, 2, 3, 3], [2, 5], [2, 4, 2]]
1294
-
1295
- """
1296
- if maxsplit == 0:
1297
- yield list(iterable)
1298
- return
1299
-
1300
- it = iter(iterable)
1301
- try:
1302
- cur_item = next(it)
1303
- except StopIteration:
1304
- return
1305
-
1306
- buf = [cur_item]
1307
- for next_item in it:
1308
- if pred(cur_item, next_item):
1309
- yield buf
1310
- if maxsplit == 1:
1311
- yield [next_item] + list(it)
1312
- return
1313
- buf = []
1314
- maxsplit -= 1
1315
-
1316
- buf.append(next_item)
1317
- cur_item = next_item
1318
-
1319
- yield buf
1320
-
1321
-
1322
- def split_into(iterable, sizes):
1323
- """Yield a list of sequential items from *iterable* of length 'n' for each
1324
- integer 'n' in *sizes*.
1325
-
1326
- >>> list(split_into([1,2,3,4,5,6], [1,2,3]))
1327
- [[1], [2, 3], [4, 5, 6]]
1328
-
1329
- If the sum of *sizes* is smaller than the length of *iterable*, then the
1330
- remaining items of *iterable* will not be returned.
1331
-
1332
- >>> list(split_into([1,2,3,4,5,6], [2,3]))
1333
- [[1, 2], [3, 4, 5]]
1334
-
1335
- If the sum of *sizes* is larger than the length of *iterable*, fewer items
1336
- will be returned in the iteration that overruns *iterable* and further
1337
- lists will be empty:
1338
-
1339
- >>> list(split_into([1,2,3,4], [1,2,3,4]))
1340
- [[1], [2, 3], [4], []]
1341
-
1342
- When a ``None`` object is encountered in *sizes*, the returned list will
1343
- contain items up to the end of *iterable* the same way that itertools.slice
1344
- does:
1345
-
1346
- >>> list(split_into([1,2,3,4,5,6,7,8,9,0], [2,3,None]))
1347
- [[1, 2], [3, 4, 5], [6, 7, 8, 9, 0]]
1348
-
1349
- :func:`split_into` can be useful for grouping a series of items where the
1350
- sizes of the groups are not uniform. An example would be where in a row
1351
- from a table, multiple columns represent elements of the same feature
1352
- (e.g. a point represented by x,y,z) but, the format is not the same for
1353
- all columns.
1354
- """
1355
- # convert the iterable argument into an iterator so its contents can
1356
- # be consumed by islice in case it is a generator
1357
- it = iter(iterable)
1358
-
1359
- for size in sizes:
1360
- if size is None:
1361
- yield list(it)
1362
- return
1363
- else:
1364
- yield list(islice(it, size))
1365
-
1366
-
1367
- def padded(iterable, fillvalue=None, n=None, next_multiple=False):
1368
- """Yield the elements from *iterable*, followed by *fillvalue*, such that
1369
- at least *n* items are emitted.
1370
-
1371
- >>> list(padded([1, 2, 3], '?', 5))
1372
- [1, 2, 3, '?', '?']
1373
-
1374
- If *next_multiple* is ``True``, *fillvalue* will be emitted until the
1375
- number of items emitted is a multiple of *n*::
1376
-
1377
- >>> list(padded([1, 2, 3, 4], n=3, next_multiple=True))
1378
- [1, 2, 3, 4, None, None]
1379
-
1380
- If *n* is ``None``, *fillvalue* will be emitted indefinitely.
1381
-
1382
- """
1383
- it = iter(iterable)
1384
- if n is None:
1385
- yield from chain(it, repeat(fillvalue))
1386
- elif n < 1:
1387
- raise ValueError('n must be at least 1')
1388
- else:
1389
- item_count = 0
1390
- for item in it:
1391
- yield item
1392
- item_count += 1
1393
-
1394
- remaining = (n - item_count) % n if next_multiple else n - item_count
1395
- for _ in range(remaining):
1396
- yield fillvalue
1397
-
1398
-
1399
- def repeat_last(iterable, default=None):
1400
- """After the *iterable* is exhausted, keep yielding its last element.
1401
-
1402
- >>> list(islice(repeat_last(range(3)), 5))
1403
- [0, 1, 2, 2, 2]
1404
-
1405
- If the iterable is empty, yield *default* forever::
1406
-
1407
- >>> list(islice(repeat_last(range(0), 42), 5))
1408
- [42, 42, 42, 42, 42]
1409
-
1410
- """
1411
- item = _marker
1412
- for item in iterable:
1413
- yield item
1414
- final = default if item is _marker else item
1415
- yield from repeat(final)
1416
-
1417
-
1418
- def distribute(n, iterable):
1419
- """Distribute the items from *iterable* among *n* smaller iterables.
1420
-
1421
- >>> group_1, group_2 = distribute(2, [1, 2, 3, 4, 5, 6])
1422
- >>> list(group_1)
1423
- [1, 3, 5]
1424
- >>> list(group_2)
1425
- [2, 4, 6]
1426
-
1427
- If the length of *iterable* is not evenly divisible by *n*, then the
1428
- length of the returned iterables will not be identical:
1429
-
1430
- >>> children = distribute(3, [1, 2, 3, 4, 5, 6, 7])
1431
- >>> [list(c) for c in children]
1432
- [[1, 4, 7], [2, 5], [3, 6]]
1433
-
1434
- If the length of *iterable* is smaller than *n*, then the last returned
1435
- iterables will be empty:
1436
-
1437
- >>> children = distribute(5, [1, 2, 3])
1438
- >>> [list(c) for c in children]
1439
- [[1], [2], [3], [], []]
1440
-
1441
- This function uses :func:`itertools.tee` and may require significant
1442
- storage. If you need the order items in the smaller iterables to match the
1443
- original iterable, see :func:`divide`.
1444
-
1445
- """
1446
- if n < 1:
1447
- raise ValueError('n must be at least 1')
1448
-
1449
- children = tee(iterable, n)
1450
- return [islice(it, index, None, n) for index, it in enumerate(children)]
1451
-
1452
-
1453
- def stagger(iterable, offsets=(-1, 0, 1), longest=False, fillvalue=None):
1454
- """Yield tuples whose elements are offset from *iterable*.
1455
- The amount by which the `i`-th item in each tuple is offset is given by
1456
- the `i`-th item in *offsets*.
1457
-
1458
- >>> list(stagger([0, 1, 2, 3]))
1459
- [(None, 0, 1), (0, 1, 2), (1, 2, 3)]
1460
- >>> list(stagger(range(8), offsets=(0, 2, 4)))
1461
- [(0, 2, 4), (1, 3, 5), (2, 4, 6), (3, 5, 7)]
1462
-
1463
- By default, the sequence will end when the final element of a tuple is the
1464
- last item in the iterable. To continue until the first element of a tuple
1465
- is the last item in the iterable, set *longest* to ``True``::
1466
-
1467
- >>> list(stagger([0, 1, 2, 3], longest=True))
1468
- [(None, 0, 1), (0, 1, 2), (1, 2, 3), (2, 3, None), (3, None, None)]
1469
-
1470
- By default, ``None`` will be used to replace offsets beyond the end of the
1471
- sequence. Specify *fillvalue* to use some other value.
1472
-
1473
- """
1474
- children = tee(iterable, len(offsets))
1475
-
1476
- return zip_offset(
1477
- *children, offsets=offsets, longest=longest, fillvalue=fillvalue
1478
- )
1479
-
1480
-
1481
- class UnequalIterablesError(ValueError):
1482
- def __init__(self, details=None):
1483
- msg = 'Iterables have different lengths'
1484
- if details is not None:
1485
- msg += (': index 0 has length {}; index {} has length {}').format(
1486
- *details
1487
- )
1488
-
1489
- super().__init__(msg)
1490
-
1491
-
1492
- def _zip_equal_generator(iterables):
1493
- for combo in zip_longest(*iterables, fillvalue=_marker):
1494
- for val in combo:
1495
- if val is _marker:
1496
- raise UnequalIterablesError()
1497
- yield combo
1498
-
1499
-
1500
- def zip_equal(*iterables):
1501
- """``zip`` the input *iterables* together, but raise
1502
- ``UnequalIterablesError`` if they aren't all the same length.
1503
-
1504
- >>> it_1 = range(3)
1505
- >>> it_2 = iter('abc')
1506
- >>> list(zip_equal(it_1, it_2))
1507
- [(0, 'a'), (1, 'b'), (2, 'c')]
1508
-
1509
- >>> it_1 = range(3)
1510
- >>> it_2 = iter('abcd')
1511
- >>> list(zip_equal(it_1, it_2)) # doctest: +IGNORE_EXCEPTION_DETAIL
1512
- Traceback (most recent call last):
1513
- ...
1514
- more_itertools.more.UnequalIterablesError: Iterables have different
1515
- lengths
1516
-
1517
- """
1518
- if hexversion >= 0x30A00A6:
1519
- warnings.warn(
1520
- (
1521
- 'zip_equal will be removed in a future version of '
1522
- 'more-itertools. Use the builtin zip function with '
1523
- 'strict=True instead.'
1524
- ),
1525
- DeprecationWarning,
1526
- )
1527
- # Check whether the iterables are all the same size.
1528
- try:
1529
- first_size = len(iterables[0])
1530
- for i, it in enumerate(iterables[1:], 1):
1531
- size = len(it)
1532
- if size != first_size:
1533
- break
1534
- else:
1535
- # If we didn't break out, we can use the built-in zip.
1536
- return zip(*iterables)
1537
-
1538
- # If we did break out, there was a mismatch.
1539
- raise UnequalIterablesError(details=(first_size, i, size))
1540
- # If any one of the iterables didn't have a length, start reading
1541
- # them until one runs out.
1542
- except TypeError:
1543
- return _zip_equal_generator(iterables)
1544
-
1545
-
1546
- def zip_offset(*iterables, offsets, longest=False, fillvalue=None):
1547
- """``zip`` the input *iterables* together, but offset the `i`-th iterable
1548
- by the `i`-th item in *offsets*.
1549
-
1550
- >>> list(zip_offset('0123', 'abcdef', offsets=(0, 1)))
1551
- [('0', 'b'), ('1', 'c'), ('2', 'd'), ('3', 'e')]
1552
-
1553
- This can be used as a lightweight alternative to SciPy or pandas to analyze
1554
- data sets in which some series have a lead or lag relationship.
1555
-
1556
- By default, the sequence will end when the shortest iterable is exhausted.
1557
- To continue until the longest iterable is exhausted, set *longest* to
1558
- ``True``.
1559
-
1560
- >>> list(zip_offset('0123', 'abcdef', offsets=(0, 1), longest=True))
1561
- [('0', 'b'), ('1', 'c'), ('2', 'd'), ('3', 'e'), (None, 'f')]
1562
-
1563
- By default, ``None`` will be used to replace offsets beyond the end of the
1564
- sequence. Specify *fillvalue* to use some other value.
1565
-
1566
- """
1567
- if len(iterables) != len(offsets):
1568
- raise ValueError("Number of iterables and offsets didn't match")
1569
-
1570
- staggered = []
1571
- for it, n in zip(iterables, offsets):
1572
- if n < 0:
1573
- staggered.append(chain(repeat(fillvalue, -n), it))
1574
- elif n > 0:
1575
- staggered.append(islice(it, n, None))
1576
- else:
1577
- staggered.append(it)
1578
-
1579
- if longest:
1580
- return zip_longest(*staggered, fillvalue=fillvalue)
1581
-
1582
- return zip(*staggered)
1583
-
1584
-
1585
- def sort_together(iterables, key_list=(0,), key=None, reverse=False):
1586
- """Return the input iterables sorted together, with *key_list* as the
1587
- priority for sorting. All iterables are trimmed to the length of the
1588
- shortest one.
1589
-
1590
- This can be used like the sorting function in a spreadsheet. If each
1591
- iterable represents a column of data, the key list determines which
1592
- columns are used for sorting.
1593
-
1594
- By default, all iterables are sorted using the ``0``-th iterable::
1595
-
1596
- >>> iterables = [(4, 3, 2, 1), ('a', 'b', 'c', 'd')]
1597
- >>> sort_together(iterables)
1598
- [(1, 2, 3, 4), ('d', 'c', 'b', 'a')]
1599
-
1600
- Set a different key list to sort according to another iterable.
1601
- Specifying multiple keys dictates how ties are broken::
1602
-
1603
- >>> iterables = [(3, 1, 2), (0, 1, 0), ('c', 'b', 'a')]
1604
- >>> sort_together(iterables, key_list=(1, 2))
1605
- [(2, 3, 1), (0, 0, 1), ('a', 'c', 'b')]
1606
-
1607
- To sort by a function of the elements of the iterable, pass a *key*
1608
- function. Its arguments are the elements of the iterables corresponding to
1609
- the key list::
1610
-
1611
- >>> names = ('a', 'b', 'c')
1612
- >>> lengths = (1, 2, 3)
1613
- >>> widths = (5, 2, 1)
1614
- >>> def area(length, width):
1615
- ... return length * width
1616
- >>> sort_together([names, lengths, widths], key_list=(1, 2), key=area)
1617
- [('c', 'b', 'a'), (3, 2, 1), (1, 2, 5)]
1618
-
1619
- Set *reverse* to ``True`` to sort in descending order.
1620
-
1621
- >>> sort_together([(1, 2, 3), ('c', 'b', 'a')], reverse=True)
1622
- [(3, 2, 1), ('a', 'b', 'c')]
1623
-
1624
- """
1625
- if key is None:
1626
- # if there is no key function, the key argument to sorted is an
1627
- # itemgetter
1628
- key_argument = itemgetter(*key_list)
1629
- else:
1630
- # if there is a key function, call it with the items at the offsets
1631
- # specified by the key function as arguments
1632
- key_list = list(key_list)
1633
- if len(key_list) == 1:
1634
- # if key_list contains a single item, pass the item at that offset
1635
- # as the only argument to the key function
1636
- key_offset = key_list[0]
1637
- key_argument = lambda zipped_items: key(zipped_items[key_offset])
1638
- else:
1639
- # if key_list contains multiple items, use itemgetter to return a
1640
- # tuple of items, which we pass as *args to the key function
1641
- get_key_items = itemgetter(*key_list)
1642
- key_argument = lambda zipped_items: key(
1643
- *get_key_items(zipped_items)
1644
- )
1645
-
1646
- return list(
1647
- zip(*sorted(zip(*iterables), key=key_argument, reverse=reverse))
1648
- )
1649
-
1650
-
1651
- def unzip(iterable):
1652
- """The inverse of :func:`zip`, this function disaggregates the elements
1653
- of the zipped *iterable*.
1654
-
1655
- The ``i``-th iterable contains the ``i``-th element from each element
1656
- of the zipped iterable. The first element is used to to determine the
1657
- length of the remaining elements.
1658
-
1659
- >>> iterable = [('a', 1), ('b', 2), ('c', 3), ('d', 4)]
1660
- >>> letters, numbers = unzip(iterable)
1661
- >>> list(letters)
1662
- ['a', 'b', 'c', 'd']
1663
- >>> list(numbers)
1664
- [1, 2, 3, 4]
1665
-
1666
- This is similar to using ``zip(*iterable)``, but it avoids reading
1667
- *iterable* into memory. Note, however, that this function uses
1668
- :func:`itertools.tee` and thus may require significant storage.
1669
-
1670
- """
1671
- head, iterable = spy(iter(iterable))
1672
- if not head:
1673
- # empty iterable, e.g. zip([], [], [])
1674
- return ()
1675
- # spy returns a one-length iterable as head
1676
- head = head[0]
1677
- iterables = tee(iterable, len(head))
1678
-
1679
- def itemgetter(i):
1680
- def getter(obj):
1681
- try:
1682
- return obj[i]
1683
- except IndexError:
1684
- # basically if we have an iterable like
1685
- # iter([(1, 2, 3), (4, 5), (6,)])
1686
- # the second unzipped iterable would fail at the third tuple
1687
- # since it would try to access tup[1]
1688
- # same with the third unzipped iterable and the second tuple
1689
- # to support these "improperly zipped" iterables,
1690
- # we create a custom itemgetter
1691
- # which just stops the unzipped iterables
1692
- # at first length mismatch
1693
- raise StopIteration
1694
-
1695
- return getter
1696
-
1697
- return tuple(map(itemgetter(i), it) for i, it in enumerate(iterables))
1698
-
1699
-
1700
- def divide(n, iterable):
1701
- """Divide the elements from *iterable* into *n* parts, maintaining
1702
- order.
1703
-
1704
- >>> group_1, group_2 = divide(2, [1, 2, 3, 4, 5, 6])
1705
- >>> list(group_1)
1706
- [1, 2, 3]
1707
- >>> list(group_2)
1708
- [4, 5, 6]
1709
-
1710
- If the length of *iterable* is not evenly divisible by *n*, then the
1711
- length of the returned iterables will not be identical:
1712
-
1713
- >>> children = divide(3, [1, 2, 3, 4, 5, 6, 7])
1714
- >>> [list(c) for c in children]
1715
- [[1, 2, 3], [4, 5], [6, 7]]
1716
-
1717
- If the length of the iterable is smaller than n, then the last returned
1718
- iterables will be empty:
1719
-
1720
- >>> children = divide(5, [1, 2, 3])
1721
- >>> [list(c) for c in children]
1722
- [[1], [2], [3], [], []]
1723
-
1724
- This function will exhaust the iterable before returning and may require
1725
- significant storage. If order is not important, see :func:`distribute`,
1726
- which does not first pull the iterable into memory.
1727
-
1728
- """
1729
- if n < 1:
1730
- raise ValueError('n must be at least 1')
1731
-
1732
- try:
1733
- iterable[:0]
1734
- except TypeError:
1735
- seq = tuple(iterable)
1736
- else:
1737
- seq = iterable
1738
-
1739
- q, r = divmod(len(seq), n)
1740
-
1741
- ret = []
1742
- stop = 0
1743
- for i in range(1, n + 1):
1744
- start = stop
1745
- stop += q + 1 if i <= r else q
1746
- ret.append(iter(seq[start:stop]))
1747
-
1748
- return ret
1749
-
1750
-
1751
- def always_iterable(obj, base_type=(str, bytes)):
1752
- """If *obj* is iterable, return an iterator over its items::
1753
-
1754
- >>> obj = (1, 2, 3)
1755
- >>> list(always_iterable(obj))
1756
- [1, 2, 3]
1757
-
1758
- If *obj* is not iterable, return a one-item iterable containing *obj*::
1759
-
1760
- >>> obj = 1
1761
- >>> list(always_iterable(obj))
1762
- [1]
1763
-
1764
- If *obj* is ``None``, return an empty iterable:
1765
-
1766
- >>> obj = None
1767
- >>> list(always_iterable(None))
1768
- []
1769
-
1770
- By default, binary and text strings are not considered iterable::
1771
-
1772
- >>> obj = 'foo'
1773
- >>> list(always_iterable(obj))
1774
- ['foo']
1775
-
1776
- If *base_type* is set, objects for which ``isinstance(obj, base_type)``
1777
- returns ``True`` won't be considered iterable.
1778
-
1779
- >>> obj = {'a': 1}
1780
- >>> list(always_iterable(obj)) # Iterate over the dict's keys
1781
- ['a']
1782
- >>> list(always_iterable(obj, base_type=dict)) # Treat dicts as a unit
1783
- [{'a': 1}]
1784
-
1785
- Set *base_type* to ``None`` to avoid any special handling and treat objects
1786
- Python considers iterable as iterable:
1787
-
1788
- >>> obj = 'foo'
1789
- >>> list(always_iterable(obj, base_type=None))
1790
- ['f', 'o', 'o']
1791
- """
1792
- if obj is None:
1793
- return iter(())
1794
-
1795
- if (base_type is not None) and isinstance(obj, base_type):
1796
- return iter((obj,))
1797
-
1798
- try:
1799
- return iter(obj)
1800
- except TypeError:
1801
- return iter((obj,))
1802
-
1803
-
1804
- def adjacent(predicate, iterable, distance=1):
1805
- """Return an iterable over `(bool, item)` tuples where the `item` is
1806
- drawn from *iterable* and the `bool` indicates whether
1807
- that item satisfies the *predicate* or is adjacent to an item that does.
1808
-
1809
- For example, to find whether items are adjacent to a ``3``::
1810
-
1811
- >>> list(adjacent(lambda x: x == 3, range(6)))
1812
- [(False, 0), (False, 1), (True, 2), (True, 3), (True, 4), (False, 5)]
1813
-
1814
- Set *distance* to change what counts as adjacent. For example, to find
1815
- whether items are two places away from a ``3``:
1816
-
1817
- >>> list(adjacent(lambda x: x == 3, range(6), distance=2))
1818
- [(False, 0), (True, 1), (True, 2), (True, 3), (True, 4), (True, 5)]
1819
-
1820
- This is useful for contextualizing the results of a search function.
1821
- For example, a code comparison tool might want to identify lines that
1822
- have changed, but also surrounding lines to give the viewer of the diff
1823
- context.
1824
-
1825
- The predicate function will only be called once for each item in the
1826
- iterable.
1827
-
1828
- See also :func:`groupby_transform`, which can be used with this function
1829
- to group ranges of items with the same `bool` value.
1830
-
1831
- """
1832
- # Allow distance=0 mainly for testing that it reproduces results with map()
1833
- if distance < 0:
1834
- raise ValueError('distance must be at least 0')
1835
-
1836
- i1, i2 = tee(iterable)
1837
- padding = [False] * distance
1838
- selected = chain(padding, map(predicate, i1), padding)
1839
- adjacent_to_selected = map(any, windowed(selected, 2 * distance + 1))
1840
- return zip(adjacent_to_selected, i2)
1841
-
1842
-
1843
- def groupby_transform(iterable, keyfunc=None, valuefunc=None, reducefunc=None):
1844
- """An extension of :func:`itertools.groupby` that can apply transformations
1845
- to the grouped data.
1846
-
1847
- * *keyfunc* is a function computing a key value for each item in *iterable*
1848
- * *valuefunc* is a function that transforms the individual items from
1849
- *iterable* after grouping
1850
- * *reducefunc* is a function that transforms each group of items
1851
-
1852
- >>> iterable = 'aAAbBBcCC'
1853
- >>> keyfunc = lambda k: k.upper()
1854
- >>> valuefunc = lambda v: v.lower()
1855
- >>> reducefunc = lambda g: ''.join(g)
1856
- >>> list(groupby_transform(iterable, keyfunc, valuefunc, reducefunc))
1857
- [('A', 'aaa'), ('B', 'bbb'), ('C', 'ccc')]
1858
-
1859
- Each optional argument defaults to an identity function if not specified.
1860
-
1861
- :func:`groupby_transform` is useful when grouping elements of an iterable
1862
- using a separate iterable as the key. To do this, :func:`zip` the iterables
1863
- and pass a *keyfunc* that extracts the first element and a *valuefunc*
1864
- that extracts the second element::
1865
-
1866
- >>> from operator import itemgetter
1867
- >>> keys = [0, 0, 1, 1, 1, 2, 2, 2, 3]
1868
- >>> values = 'abcdefghi'
1869
- >>> iterable = zip(keys, values)
1870
- >>> grouper = groupby_transform(iterable, itemgetter(0), itemgetter(1))
1871
- >>> [(k, ''.join(g)) for k, g in grouper]
1872
- [(0, 'ab'), (1, 'cde'), (2, 'fgh'), (3, 'i')]
1873
-
1874
- Note that the order of items in the iterable is significant.
1875
- Only adjacent items are grouped together, so if you don't want any
1876
- duplicate groups, you should sort the iterable by the key function.
1877
-
1878
- """
1879
- ret = groupby(iterable, keyfunc)
1880
- if valuefunc:
1881
- ret = ((k, map(valuefunc, g)) for k, g in ret)
1882
- if reducefunc:
1883
- ret = ((k, reducefunc(g)) for k, g in ret)
1884
-
1885
- return ret
1886
-
1887
-
1888
- class numeric_range(abc.Sequence, abc.Hashable):
1889
- """An extension of the built-in ``range()`` function whose arguments can
1890
- be any orderable numeric type.
1891
-
1892
- With only *stop* specified, *start* defaults to ``0`` and *step*
1893
- defaults to ``1``. The output items will match the type of *stop*:
1894
-
1895
- >>> list(numeric_range(3.5))
1896
- [0.0, 1.0, 2.0, 3.0]
1897
-
1898
- With only *start* and *stop* specified, *step* defaults to ``1``. The
1899
- output items will match the type of *start*:
1900
-
1901
- >>> from decimal import Decimal
1902
- >>> start = Decimal('2.1')
1903
- >>> stop = Decimal('5.1')
1904
- >>> list(numeric_range(start, stop))
1905
- [Decimal('2.1'), Decimal('3.1'), Decimal('4.1')]
1906
-
1907
- With *start*, *stop*, and *step* specified the output items will match
1908
- the type of ``start + step``:
1909
-
1910
- >>> from fractions import Fraction
1911
- >>> start = Fraction(1, 2) # Start at 1/2
1912
- >>> stop = Fraction(5, 2) # End at 5/2
1913
- >>> step = Fraction(1, 2) # Count by 1/2
1914
- >>> list(numeric_range(start, stop, step))
1915
- [Fraction(1, 2), Fraction(1, 1), Fraction(3, 2), Fraction(2, 1)]
1916
-
1917
- If *step* is zero, ``ValueError`` is raised. Negative steps are supported:
1918
-
1919
- >>> list(numeric_range(3, -1, -1.0))
1920
- [3.0, 2.0, 1.0, 0.0]
1921
-
1922
- Be aware of the limitations of floating point numbers; the representation
1923
- of the yielded numbers may be surprising.
1924
-
1925
- ``datetime.datetime`` objects can be used for *start* and *stop*, if *step*
1926
- is a ``datetime.timedelta`` object:
1927
-
1928
- >>> import datetime
1929
- >>> start = datetime.datetime(2019, 1, 1)
1930
- >>> stop = datetime.datetime(2019, 1, 3)
1931
- >>> step = datetime.timedelta(days=1)
1932
- >>> items = iter(numeric_range(start, stop, step))
1933
- >>> next(items)
1934
- datetime.datetime(2019, 1, 1, 0, 0)
1935
- >>> next(items)
1936
- datetime.datetime(2019, 1, 2, 0, 0)
1937
-
1938
- """
1939
-
1940
- _EMPTY_HASH = hash(range(0, 0))
1941
-
1942
- def __init__(self, *args):
1943
- argc = len(args)
1944
- if argc == 1:
1945
- (self._stop,) = args
1946
- self._start = type(self._stop)(0)
1947
- self._step = type(self._stop - self._start)(1)
1948
- elif argc == 2:
1949
- self._start, self._stop = args
1950
- self._step = type(self._stop - self._start)(1)
1951
- elif argc == 3:
1952
- self._start, self._stop, self._step = args
1953
- elif argc == 0:
1954
- raise TypeError(
1955
- 'numeric_range expected at least '
1956
- '1 argument, got {}'.format(argc)
1957
- )
1958
- else:
1959
- raise TypeError(
1960
- 'numeric_range expected at most '
1961
- '3 arguments, got {}'.format(argc)
1962
- )
1963
-
1964
- self._zero = type(self._step)(0)
1965
- if self._step == self._zero:
1966
- raise ValueError('numeric_range() arg 3 must not be zero')
1967
- self._growing = self._step > self._zero
1968
- self._init_len()
1969
-
1970
- def __bool__(self):
1971
- if self._growing:
1972
- return self._start < self._stop
1973
- else:
1974
- return self._start > self._stop
1975
-
1976
- def __contains__(self, elem):
1977
- if self._growing:
1978
- if self._start <= elem < self._stop:
1979
- return (elem - self._start) % self._step == self._zero
1980
- else:
1981
- if self._start >= elem > self._stop:
1982
- return (self._start - elem) % (-self._step) == self._zero
1983
-
1984
- return False
1985
-
1986
- def __eq__(self, other):
1987
- if isinstance(other, numeric_range):
1988
- empty_self = not bool(self)
1989
- empty_other = not bool(other)
1990
- if empty_self or empty_other:
1991
- return empty_self and empty_other # True if both empty
1992
- else:
1993
- return (
1994
- self._start == other._start
1995
- and self._step == other._step
1996
- and self._get_by_index(-1) == other._get_by_index(-1)
1997
- )
1998
- else:
1999
- return False
2000
-
2001
- def __getitem__(self, key):
2002
- if isinstance(key, int):
2003
- return self._get_by_index(key)
2004
- elif isinstance(key, slice):
2005
- step = self._step if key.step is None else key.step * self._step
2006
-
2007
- if key.start is None or key.start <= -self._len:
2008
- start = self._start
2009
- elif key.start >= self._len:
2010
- start = self._stop
2011
- else: # -self._len < key.start < self._len
2012
- start = self._get_by_index(key.start)
2013
-
2014
- if key.stop is None or key.stop >= self._len:
2015
- stop = self._stop
2016
- elif key.stop <= -self._len:
2017
- stop = self._start
2018
- else: # -self._len < key.stop < self._len
2019
- stop = self._get_by_index(key.stop)
2020
-
2021
- return numeric_range(start, stop, step)
2022
- else:
2023
- raise TypeError(
2024
- 'numeric range indices must be '
2025
- 'integers or slices, not {}'.format(type(key).__name__)
2026
- )
2027
-
2028
- def __hash__(self):
2029
- if self:
2030
- return hash((self._start, self._get_by_index(-1), self._step))
2031
- else:
2032
- return self._EMPTY_HASH
2033
-
2034
- def __iter__(self):
2035
- values = (self._start + (n * self._step) for n in count())
2036
- if self._growing:
2037
- return takewhile(partial(gt, self._stop), values)
2038
- else:
2039
- return takewhile(partial(lt, self._stop), values)
2040
-
2041
- def __len__(self):
2042
- return self._len
2043
-
2044
- def _init_len(self):
2045
- if self._growing:
2046
- start = self._start
2047
- stop = self._stop
2048
- step = self._step
2049
- else:
2050
- start = self._stop
2051
- stop = self._start
2052
- step = -self._step
2053
- distance = stop - start
2054
- if distance <= self._zero:
2055
- self._len = 0
2056
- else: # distance > 0 and step > 0: regular euclidean division
2057
- q, r = divmod(distance, step)
2058
- self._len = int(q) + int(r != self._zero)
2059
-
2060
- def __reduce__(self):
2061
- return numeric_range, (self._start, self._stop, self._step)
2062
-
2063
- def __repr__(self):
2064
- if self._step == 1:
2065
- return "numeric_range({}, {})".format(
2066
- repr(self._start), repr(self._stop)
2067
- )
2068
- else:
2069
- return "numeric_range({}, {}, {})".format(
2070
- repr(self._start), repr(self._stop), repr(self._step)
2071
- )
2072
-
2073
- def __reversed__(self):
2074
- return iter(
2075
- numeric_range(
2076
- self._get_by_index(-1), self._start - self._step, -self._step
2077
- )
2078
- )
2079
-
2080
- def count(self, value):
2081
- return int(value in self)
2082
-
2083
- def index(self, value):
2084
- if self._growing:
2085
- if self._start <= value < self._stop:
2086
- q, r = divmod(value - self._start, self._step)
2087
- if r == self._zero:
2088
- return int(q)
2089
- else:
2090
- if self._start >= value > self._stop:
2091
- q, r = divmod(self._start - value, -self._step)
2092
- if r == self._zero:
2093
- return int(q)
2094
-
2095
- raise ValueError("{} is not in numeric range".format(value))
2096
-
2097
- def _get_by_index(self, i):
2098
- if i < 0:
2099
- i += self._len
2100
- if i < 0 or i >= self._len:
2101
- raise IndexError("numeric range object index out of range")
2102
- return self._start + i * self._step
2103
-
2104
-
2105
- def count_cycle(iterable, n=None):
2106
- """Cycle through the items from *iterable* up to *n* times, yielding
2107
- the number of completed cycles along with each item. If *n* is omitted the
2108
- process repeats indefinitely.
2109
-
2110
- >>> list(count_cycle('AB', 3))
2111
- [(0, 'A'), (0, 'B'), (1, 'A'), (1, 'B'), (2, 'A'), (2, 'B')]
2112
-
2113
- """
2114
- iterable = tuple(iterable)
2115
- if not iterable:
2116
- return iter(())
2117
- counter = count() if n is None else range(n)
2118
- return ((i, item) for i in counter for item in iterable)
2119
-
2120
-
2121
- def mark_ends(iterable):
2122
- """Yield 3-tuples of the form ``(is_first, is_last, item)``.
2123
-
2124
- >>> list(mark_ends('ABC'))
2125
- [(True, False, 'A'), (False, False, 'B'), (False, True, 'C')]
2126
-
2127
- Use this when looping over an iterable to take special action on its first
2128
- and/or last items:
2129
-
2130
- >>> iterable = ['Header', 100, 200, 'Footer']
2131
- >>> total = 0
2132
- >>> for is_first, is_last, item in mark_ends(iterable):
2133
- ... if is_first:
2134
- ... continue # Skip the header
2135
- ... if is_last:
2136
- ... continue # Skip the footer
2137
- ... total += item
2138
- >>> print(total)
2139
- 300
2140
- """
2141
- it = iter(iterable)
2142
-
2143
- try:
2144
- b = next(it)
2145
- except StopIteration:
2146
- return
2147
-
2148
- try:
2149
- for i in count():
2150
- a = b
2151
- b = next(it)
2152
- yield i == 0, False, a
2153
-
2154
- except StopIteration:
2155
- yield i == 0, True, a
2156
-
2157
-
2158
- def locate(iterable, pred=bool, window_size=None):
2159
- """Yield the index of each item in *iterable* for which *pred* returns
2160
- ``True``.
2161
-
2162
- *pred* defaults to :func:`bool`, which will select truthy items:
2163
-
2164
- >>> list(locate([0, 1, 1, 0, 1, 0, 0]))
2165
- [1, 2, 4]
2166
-
2167
- Set *pred* to a custom function to, e.g., find the indexes for a particular
2168
- item.
2169
-
2170
- >>> list(locate(['a', 'b', 'c', 'b'], lambda x: x == 'b'))
2171
- [1, 3]
2172
-
2173
- If *window_size* is given, then the *pred* function will be called with
2174
- that many items. This enables searching for sub-sequences:
2175
-
2176
- >>> iterable = [0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3]
2177
- >>> pred = lambda *args: args == (1, 2, 3)
2178
- >>> list(locate(iterable, pred=pred, window_size=3))
2179
- [1, 5, 9]
2180
-
2181
- Use with :func:`seekable` to find indexes and then retrieve the associated
2182
- items:
2183
-
2184
- >>> from itertools import count
2185
- >>> from more_itertools import seekable
2186
- >>> source = (3 * n + 1 if (n % 2) else n // 2 for n in count())
2187
- >>> it = seekable(source)
2188
- >>> pred = lambda x: x > 100
2189
- >>> indexes = locate(it, pred=pred)
2190
- >>> i = next(indexes)
2191
- >>> it.seek(i)
2192
- >>> next(it)
2193
- 106
2194
-
2195
- """
2196
- if window_size is None:
2197
- return compress(count(), map(pred, iterable))
2198
-
2199
- if window_size < 1:
2200
- raise ValueError('window size must be at least 1')
2201
-
2202
- it = windowed(iterable, window_size, fillvalue=_marker)
2203
- return compress(count(), starmap(pred, it))
2204
-
2205
-
2206
- def lstrip(iterable, pred):
2207
- """Yield the items from *iterable*, but strip any from the beginning
2208
- for which *pred* returns ``True``.
2209
-
2210
- For example, to remove a set of items from the start of an iterable:
2211
-
2212
- >>> iterable = (None, False, None, 1, 2, None, 3, False, None)
2213
- >>> pred = lambda x: x in {None, False, ''}
2214
- >>> list(lstrip(iterable, pred))
2215
- [1, 2, None, 3, False, None]
2216
-
2217
- This function is analogous to to :func:`str.lstrip`, and is essentially
2218
- an wrapper for :func:`itertools.dropwhile`.
2219
-
2220
- """
2221
- return dropwhile(pred, iterable)
2222
-
2223
-
2224
- def rstrip(iterable, pred):
2225
- """Yield the items from *iterable*, but strip any from the end
2226
- for which *pred* returns ``True``.
2227
-
2228
- For example, to remove a set of items from the end of an iterable:
2229
-
2230
- >>> iterable = (None, False, None, 1, 2, None, 3, False, None)
2231
- >>> pred = lambda x: x in {None, False, ''}
2232
- >>> list(rstrip(iterable, pred))
2233
- [None, False, None, 1, 2, None, 3]
2234
-
2235
- This function is analogous to :func:`str.rstrip`.
2236
-
2237
- """
2238
- cache = []
2239
- cache_append = cache.append
2240
- cache_clear = cache.clear
2241
- for x in iterable:
2242
- if pred(x):
2243
- cache_append(x)
2244
- else:
2245
- yield from cache
2246
- cache_clear()
2247
- yield x
2248
-
2249
-
2250
- def strip(iterable, pred):
2251
- """Yield the items from *iterable*, but strip any from the
2252
- beginning and end for which *pred* returns ``True``.
2253
-
2254
- For example, to remove a set of items from both ends of an iterable:
2255
-
2256
- >>> iterable = (None, False, None, 1, 2, None, 3, False, None)
2257
- >>> pred = lambda x: x in {None, False, ''}
2258
- >>> list(strip(iterable, pred))
2259
- [1, 2, None, 3]
2260
-
2261
- This function is analogous to :func:`str.strip`.
2262
-
2263
- """
2264
- return rstrip(lstrip(iterable, pred), pred)
2265
-
2266
-
2267
- class islice_extended:
2268
- """An extension of :func:`itertools.islice` that supports negative values
2269
- for *stop*, *start*, and *step*.
2270
-
2271
- >>> iterable = iter('abcdefgh')
2272
- >>> list(islice_extended(iterable, -4, -1))
2273
- ['e', 'f', 'g']
2274
-
2275
- Slices with negative values require some caching of *iterable*, but this
2276
- function takes care to minimize the amount of memory required.
2277
-
2278
- For example, you can use a negative step with an infinite iterator:
2279
-
2280
- >>> from itertools import count
2281
- >>> list(islice_extended(count(), 110, 99, -2))
2282
- [110, 108, 106, 104, 102, 100]
2283
-
2284
- You can also use slice notation directly:
2285
-
2286
- >>> iterable = map(str, count())
2287
- >>> it = islice_extended(iterable)[10:20:2]
2288
- >>> list(it)
2289
- ['10', '12', '14', '16', '18']
2290
-
2291
- """
2292
-
2293
- def __init__(self, iterable, *args):
2294
- it = iter(iterable)
2295
- if args:
2296
- self._iterable = _islice_helper(it, slice(*args))
2297
- else:
2298
- self._iterable = it
2299
-
2300
- def __iter__(self):
2301
- return self
2302
-
2303
- def __next__(self):
2304
- return next(self._iterable)
2305
-
2306
- def __getitem__(self, key):
2307
- if isinstance(key, slice):
2308
- return islice_extended(_islice_helper(self._iterable, key))
2309
-
2310
- raise TypeError('islice_extended.__getitem__ argument must be a slice')
2311
-
2312
-
2313
- def _islice_helper(it, s):
2314
- start = s.start
2315
- stop = s.stop
2316
- if s.step == 0:
2317
- raise ValueError('step argument must be a non-zero integer or None.')
2318
- step = s.step or 1
2319
-
2320
- if step > 0:
2321
- start = 0 if (start is None) else start
2322
-
2323
- if start < 0:
2324
- # Consume all but the last -start items
2325
- cache = deque(enumerate(it, 1), maxlen=-start)
2326
- len_iter = cache[-1][0] if cache else 0
2327
-
2328
- # Adjust start to be positive
2329
- i = max(len_iter + start, 0)
2330
-
2331
- # Adjust stop to be positive
2332
- if stop is None:
2333
- j = len_iter
2334
- elif stop >= 0:
2335
- j = min(stop, len_iter)
2336
- else:
2337
- j = max(len_iter + stop, 0)
2338
-
2339
- # Slice the cache
2340
- n = j - i
2341
- if n <= 0:
2342
- return
2343
-
2344
- for index, item in islice(cache, 0, n, step):
2345
- yield item
2346
- elif (stop is not None) and (stop < 0):
2347
- # Advance to the start position
2348
- next(islice(it, start, start), None)
2349
-
2350
- # When stop is negative, we have to carry -stop items while
2351
- # iterating
2352
- cache = deque(islice(it, -stop), maxlen=-stop)
2353
-
2354
- for index, item in enumerate(it):
2355
- cached_item = cache.popleft()
2356
- if index % step == 0:
2357
- yield cached_item
2358
- cache.append(item)
2359
- else:
2360
- # When both start and stop are positive we have the normal case
2361
- yield from islice(it, start, stop, step)
2362
- else:
2363
- start = -1 if (start is None) else start
2364
-
2365
- if (stop is not None) and (stop < 0):
2366
- # Consume all but the last items
2367
- n = -stop - 1
2368
- cache = deque(enumerate(it, 1), maxlen=n)
2369
- len_iter = cache[-1][0] if cache else 0
2370
-
2371
- # If start and stop are both negative they are comparable and
2372
- # we can just slice. Otherwise we can adjust start to be negative
2373
- # and then slice.
2374
- if start < 0:
2375
- i, j = start, stop
2376
- else:
2377
- i, j = min(start - len_iter, -1), None
2378
-
2379
- for index, item in list(cache)[i:j:step]:
2380
- yield item
2381
- else:
2382
- # Advance to the stop position
2383
- if stop is not None:
2384
- m = stop + 1
2385
- next(islice(it, m, m), None)
2386
-
2387
- # stop is positive, so if start is negative they are not comparable
2388
- # and we need the rest of the items.
2389
- if start < 0:
2390
- i = start
2391
- n = None
2392
- # stop is None and start is positive, so we just need items up to
2393
- # the start index.
2394
- elif stop is None:
2395
- i = None
2396
- n = start + 1
2397
- # Both stop and start are positive, so they are comparable.
2398
- else:
2399
- i = None
2400
- n = start - stop
2401
- if n <= 0:
2402
- return
2403
-
2404
- cache = list(islice(it, n))
2405
-
2406
- yield from cache[i::step]
2407
-
2408
-
2409
- def always_reversible(iterable):
2410
- """An extension of :func:`reversed` that supports all iterables, not
2411
- just those which implement the ``Reversible`` or ``Sequence`` protocols.
2412
-
2413
- >>> print(*always_reversible(x for x in range(3)))
2414
- 2 1 0
2415
-
2416
- If the iterable is already reversible, this function returns the
2417
- result of :func:`reversed()`. If the iterable is not reversible,
2418
- this function will cache the remaining items in the iterable and
2419
- yield them in reverse order, which may require significant storage.
2420
- """
2421
- try:
2422
- return reversed(iterable)
2423
- except TypeError:
2424
- return reversed(list(iterable))
2425
-
2426
-
2427
- def consecutive_groups(iterable, ordering=lambda x: x):
2428
- """Yield groups of consecutive items using :func:`itertools.groupby`.
2429
- The *ordering* function determines whether two items are adjacent by
2430
- returning their position.
2431
-
2432
- By default, the ordering function is the identity function. This is
2433
- suitable for finding runs of numbers:
2434
-
2435
- >>> iterable = [1, 10, 11, 12, 20, 30, 31, 32, 33, 40]
2436
- >>> for group in consecutive_groups(iterable):
2437
- ... print(list(group))
2438
- [1]
2439
- [10, 11, 12]
2440
- [20]
2441
- [30, 31, 32, 33]
2442
- [40]
2443
-
2444
- For finding runs of adjacent letters, try using the :meth:`index` method
2445
- of a string of letters:
2446
-
2447
- >>> from string import ascii_lowercase
2448
- >>> iterable = 'abcdfgilmnop'
2449
- >>> ordering = ascii_lowercase.index
2450
- >>> for group in consecutive_groups(iterable, ordering):
2451
- ... print(list(group))
2452
- ['a', 'b', 'c', 'd']
2453
- ['f', 'g']
2454
- ['i']
2455
- ['l', 'm', 'n', 'o', 'p']
2456
-
2457
- Each group of consecutive items is an iterator that shares it source with
2458
- *iterable*. When an an output group is advanced, the previous group is
2459
- no longer available unless its elements are copied (e.g., into a ``list``).
2460
-
2461
- >>> iterable = [1, 2, 11, 12, 21, 22]
2462
- >>> saved_groups = []
2463
- >>> for group in consecutive_groups(iterable):
2464
- ... saved_groups.append(list(group)) # Copy group elements
2465
- >>> saved_groups
2466
- [[1, 2], [11, 12], [21, 22]]
2467
-
2468
- """
2469
- for k, g in groupby(
2470
- enumerate(iterable), key=lambda x: x[0] - ordering(x[1])
2471
- ):
2472
- yield map(itemgetter(1), g)
2473
-
2474
-
2475
- def difference(iterable, func=sub, *, initial=None):
2476
- """This function is the inverse of :func:`itertools.accumulate`. By default
2477
- it will compute the first difference of *iterable* using
2478
- :func:`operator.sub`:
2479
-
2480
- >>> from itertools import accumulate
2481
- >>> iterable = accumulate([0, 1, 2, 3, 4]) # produces 0, 1, 3, 6, 10
2482
- >>> list(difference(iterable))
2483
- [0, 1, 2, 3, 4]
2484
-
2485
- *func* defaults to :func:`operator.sub`, but other functions can be
2486
- specified. They will be applied as follows::
2487
-
2488
- A, B, C, D, ... --> A, func(B, A), func(C, B), func(D, C), ...
2489
-
2490
- For example, to do progressive division:
2491
-
2492
- >>> iterable = [1, 2, 6, 24, 120]
2493
- >>> func = lambda x, y: x // y
2494
- >>> list(difference(iterable, func))
2495
- [1, 2, 3, 4, 5]
2496
-
2497
- If the *initial* keyword is set, the first element will be skipped when
2498
- computing successive differences.
2499
-
2500
- >>> it = [10, 11, 13, 16] # from accumulate([1, 2, 3], initial=10)
2501
- >>> list(difference(it, initial=10))
2502
- [1, 2, 3]
2503
-
2504
- """
2505
- a, b = tee(iterable)
2506
- try:
2507
- first = [next(b)]
2508
- except StopIteration:
2509
- return iter([])
2510
-
2511
- if initial is not None:
2512
- first = []
2513
-
2514
- return chain(first, starmap(func, zip(b, a)))
2515
-
2516
-
2517
- class SequenceView(Sequence):
2518
- """Return a read-only view of the sequence object *target*.
2519
-
2520
- :class:`SequenceView` objects are analogous to Python's built-in
2521
- "dictionary view" types. They provide a dynamic view of a sequence's items,
2522
- meaning that when the sequence updates, so does the view.
2523
-
2524
- >>> seq = ['0', '1', '2']
2525
- >>> view = SequenceView(seq)
2526
- >>> view
2527
- SequenceView(['0', '1', '2'])
2528
- >>> seq.append('3')
2529
- >>> view
2530
- SequenceView(['0', '1', '2', '3'])
2531
-
2532
- Sequence views support indexing, slicing, and length queries. They act
2533
- like the underlying sequence, except they don't allow assignment:
2534
-
2535
- >>> view[1]
2536
- '1'
2537
- >>> view[1:-1]
2538
- ['1', '2']
2539
- >>> len(view)
2540
- 4
2541
-
2542
- Sequence views are useful as an alternative to copying, as they don't
2543
- require (much) extra storage.
2544
-
2545
- """
2546
-
2547
- def __init__(self, target):
2548
- if not isinstance(target, Sequence):
2549
- raise TypeError
2550
- self._target = target
2551
-
2552
- def __getitem__(self, index):
2553
- return self._target[index]
2554
-
2555
- def __len__(self):
2556
- return len(self._target)
2557
-
2558
- def __repr__(self):
2559
- return '{}({})'.format(self.__class__.__name__, repr(self._target))
2560
-
2561
-
2562
- class seekable:
2563
- """Wrap an iterator to allow for seeking backward and forward. This
2564
- progressively caches the items in the source iterable so they can be
2565
- re-visited.
2566
-
2567
- Call :meth:`seek` with an index to seek to that position in the source
2568
- iterable.
2569
-
2570
- To "reset" an iterator, seek to ``0``:
2571
-
2572
- >>> from itertools import count
2573
- >>> it = seekable((str(n) for n in count()))
2574
- >>> next(it), next(it), next(it)
2575
- ('0', '1', '2')
2576
- >>> it.seek(0)
2577
- >>> next(it), next(it), next(it)
2578
- ('0', '1', '2')
2579
- >>> next(it)
2580
- '3'
2581
-
2582
- You can also seek forward:
2583
-
2584
- >>> it = seekable((str(n) for n in range(20)))
2585
- >>> it.seek(10)
2586
- >>> next(it)
2587
- '10'
2588
- >>> it.seek(20) # Seeking past the end of the source isn't a problem
2589
- >>> list(it)
2590
- []
2591
- >>> it.seek(0) # Resetting works even after hitting the end
2592
- >>> next(it), next(it), next(it)
2593
- ('0', '1', '2')
2594
-
2595
- Call :meth:`peek` to look ahead one item without advancing the iterator:
2596
-
2597
- >>> it = seekable('1234')
2598
- >>> it.peek()
2599
- '1'
2600
- >>> list(it)
2601
- ['1', '2', '3', '4']
2602
- >>> it.peek(default='empty')
2603
- 'empty'
2604
-
2605
- Before the iterator is at its end, calling :func:`bool` on it will return
2606
- ``True``. After it will return ``False``:
2607
-
2608
- >>> it = seekable('5678')
2609
- >>> bool(it)
2610
- True
2611
- >>> list(it)
2612
- ['5', '6', '7', '8']
2613
- >>> bool(it)
2614
- False
2615
-
2616
- You may view the contents of the cache with the :meth:`elements` method.
2617
- That returns a :class:`SequenceView`, a view that updates automatically:
2618
-
2619
- >>> it = seekable((str(n) for n in range(10)))
2620
- >>> next(it), next(it), next(it)
2621
- ('0', '1', '2')
2622
- >>> elements = it.elements()
2623
- >>> elements
2624
- SequenceView(['0', '1', '2'])
2625
- >>> next(it)
2626
- '3'
2627
- >>> elements
2628
- SequenceView(['0', '1', '2', '3'])
2629
-
2630
- By default, the cache grows as the source iterable progresses, so beware of
2631
- wrapping very large or infinite iterables. Supply *maxlen* to limit the
2632
- size of the cache (this of course limits how far back you can seek).
2633
-
2634
- >>> from itertools import count
2635
- >>> it = seekable((str(n) for n in count()), maxlen=2)
2636
- >>> next(it), next(it), next(it), next(it)
2637
- ('0', '1', '2', '3')
2638
- >>> list(it.elements())
2639
- ['2', '3']
2640
- >>> it.seek(0)
2641
- >>> next(it), next(it), next(it), next(it)
2642
- ('2', '3', '4', '5')
2643
- >>> next(it)
2644
- '6'
2645
-
2646
- """
2647
-
2648
- def __init__(self, iterable, maxlen=None):
2649
- self._source = iter(iterable)
2650
- if maxlen is None:
2651
- self._cache = []
2652
- else:
2653
- self._cache = deque([], maxlen)
2654
- self._index = None
2655
-
2656
- def __iter__(self):
2657
- return self
2658
-
2659
- def __next__(self):
2660
- if self._index is not None:
2661
- try:
2662
- item = self._cache[self._index]
2663
- except IndexError:
2664
- self._index = None
2665
- else:
2666
- self._index += 1
2667
- return item
2668
-
2669
- item = next(self._source)
2670
- self._cache.append(item)
2671
- return item
2672
-
2673
- def __bool__(self):
2674
- try:
2675
- self.peek()
2676
- except StopIteration:
2677
- return False
2678
- return True
2679
-
2680
- def peek(self, default=_marker):
2681
- try:
2682
- peeked = next(self)
2683
- except StopIteration:
2684
- if default is _marker:
2685
- raise
2686
- return default
2687
- if self._index is None:
2688
- self._index = len(self._cache)
2689
- self._index -= 1
2690
- return peeked
2691
-
2692
- def elements(self):
2693
- return SequenceView(self._cache)
2694
-
2695
- def seek(self, index):
2696
- self._index = index
2697
- remainder = index - len(self._cache)
2698
- if remainder > 0:
2699
- consume(self, remainder)
2700
-
2701
-
2702
- class run_length:
2703
- """
2704
- :func:`run_length.encode` compresses an iterable with run-length encoding.
2705
- It yields groups of repeated items with the count of how many times they
2706
- were repeated:
2707
-
2708
- >>> uncompressed = 'abbcccdddd'
2709
- >>> list(run_length.encode(uncompressed))
2710
- [('a', 1), ('b', 2), ('c', 3), ('d', 4)]
2711
-
2712
- :func:`run_length.decode` decompresses an iterable that was previously
2713
- compressed with run-length encoding. It yields the items of the
2714
- decompressed iterable:
2715
-
2716
- >>> compressed = [('a', 1), ('b', 2), ('c', 3), ('d', 4)]
2717
- >>> list(run_length.decode(compressed))
2718
- ['a', 'b', 'b', 'c', 'c', 'c', 'd', 'd', 'd', 'd']
2719
-
2720
- """
2721
-
2722
- @staticmethod
2723
- def encode(iterable):
2724
- return ((k, ilen(g)) for k, g in groupby(iterable))
2725
-
2726
- @staticmethod
2727
- def decode(iterable):
2728
- return chain.from_iterable(repeat(k, n) for k, n in iterable)
2729
-
2730
-
2731
- def exactly_n(iterable, n, predicate=bool):
2732
- """Return ``True`` if exactly ``n`` items in the iterable are ``True``
2733
- according to the *predicate* function.
2734
-
2735
- >>> exactly_n([True, True, False], 2)
2736
- True
2737
- >>> exactly_n([True, True, False], 1)
2738
- False
2739
- >>> exactly_n([0, 1, 2, 3, 4, 5], 3, lambda x: x < 3)
2740
- True
2741
-
2742
- The iterable will be advanced until ``n + 1`` truthy items are encountered,
2743
- so avoid calling it on infinite iterables.
2744
-
2745
- """
2746
- return len(take(n + 1, filter(predicate, iterable))) == n
2747
-
2748
-
2749
- def circular_shifts(iterable):
2750
- """Return a list of circular shifts of *iterable*.
2751
-
2752
- >>> circular_shifts(range(4))
2753
- [(0, 1, 2, 3), (1, 2, 3, 0), (2, 3, 0, 1), (3, 0, 1, 2)]
2754
- """
2755
- lst = list(iterable)
2756
- return take(len(lst), windowed(cycle(lst), len(lst)))
2757
-
2758
-
2759
- def make_decorator(wrapping_func, result_index=0):
2760
- """Return a decorator version of *wrapping_func*, which is a function that
2761
- modifies an iterable. *result_index* is the position in that function's
2762
- signature where the iterable goes.
2763
-
2764
- This lets you use itertools on the "production end," i.e. at function
2765
- definition. This can augment what the function returns without changing the
2766
- function's code.
2767
-
2768
- For example, to produce a decorator version of :func:`chunked`:
2769
-
2770
- >>> from more_itertools import chunked
2771
- >>> chunker = make_decorator(chunked, result_index=0)
2772
- >>> @chunker(3)
2773
- ... def iter_range(n):
2774
- ... return iter(range(n))
2775
- ...
2776
- >>> list(iter_range(9))
2777
- [[0, 1, 2], [3, 4, 5], [6, 7, 8]]
2778
-
2779
- To only allow truthy items to be returned:
2780
-
2781
- >>> truth_serum = make_decorator(filter, result_index=1)
2782
- >>> @truth_serum(bool)
2783
- ... def boolean_test():
2784
- ... return [0, 1, '', ' ', False, True]
2785
- ...
2786
- >>> list(boolean_test())
2787
- [1, ' ', True]
2788
-
2789
- The :func:`peekable` and :func:`seekable` wrappers make for practical
2790
- decorators:
2791
-
2792
- >>> from more_itertools import peekable
2793
- >>> peekable_function = make_decorator(peekable)
2794
- >>> @peekable_function()
2795
- ... def str_range(*args):
2796
- ... return (str(x) for x in range(*args))
2797
- ...
2798
- >>> it = str_range(1, 20, 2)
2799
- >>> next(it), next(it), next(it)
2800
- ('1', '3', '5')
2801
- >>> it.peek()
2802
- '7'
2803
- >>> next(it)
2804
- '7'
2805
-
2806
- """
2807
- # See https://sites.google.com/site/bbayles/index/decorator_factory for
2808
- # notes on how this works.
2809
- def decorator(*wrapping_args, **wrapping_kwargs):
2810
- def outer_wrapper(f):
2811
- def inner_wrapper(*args, **kwargs):
2812
- result = f(*args, **kwargs)
2813
- wrapping_args_ = list(wrapping_args)
2814
- wrapping_args_.insert(result_index, result)
2815
- return wrapping_func(*wrapping_args_, **wrapping_kwargs)
2816
-
2817
- return inner_wrapper
2818
-
2819
- return outer_wrapper
2820
-
2821
- return decorator
2822
-
2823
-
2824
- def map_reduce(iterable, keyfunc, valuefunc=None, reducefunc=None):
2825
- """Return a dictionary that maps the items in *iterable* to categories
2826
- defined by *keyfunc*, transforms them with *valuefunc*, and
2827
- then summarizes them by category with *reducefunc*.
2828
-
2829
- *valuefunc* defaults to the identity function if it is unspecified.
2830
- If *reducefunc* is unspecified, no summarization takes place:
2831
-
2832
- >>> keyfunc = lambda x: x.upper()
2833
- >>> result = map_reduce('abbccc', keyfunc)
2834
- >>> sorted(result.items())
2835
- [('A', ['a']), ('B', ['b', 'b']), ('C', ['c', 'c', 'c'])]
2836
-
2837
- Specifying *valuefunc* transforms the categorized items:
2838
-
2839
- >>> keyfunc = lambda x: x.upper()
2840
- >>> valuefunc = lambda x: 1
2841
- >>> result = map_reduce('abbccc', keyfunc, valuefunc)
2842
- >>> sorted(result.items())
2843
- [('A', [1]), ('B', [1, 1]), ('C', [1, 1, 1])]
2844
-
2845
- Specifying *reducefunc* summarizes the categorized items:
2846
-
2847
- >>> keyfunc = lambda x: x.upper()
2848
- >>> valuefunc = lambda x: 1
2849
- >>> reducefunc = sum
2850
- >>> result = map_reduce('abbccc', keyfunc, valuefunc, reducefunc)
2851
- >>> sorted(result.items())
2852
- [('A', 1), ('B', 2), ('C', 3)]
2853
-
2854
- You may want to filter the input iterable before applying the map/reduce
2855
- procedure:
2856
-
2857
- >>> all_items = range(30)
2858
- >>> items = [x for x in all_items if 10 <= x <= 20] # Filter
2859
- >>> keyfunc = lambda x: x % 2 # Evens map to 0; odds to 1
2860
- >>> categories = map_reduce(items, keyfunc=keyfunc)
2861
- >>> sorted(categories.items())
2862
- [(0, [10, 12, 14, 16, 18, 20]), (1, [11, 13, 15, 17, 19])]
2863
- >>> summaries = map_reduce(items, keyfunc=keyfunc, reducefunc=sum)
2864
- >>> sorted(summaries.items())
2865
- [(0, 90), (1, 75)]
2866
-
2867
- Note that all items in the iterable are gathered into a list before the
2868
- summarization step, which may require significant storage.
2869
-
2870
- The returned object is a :obj:`collections.defaultdict` with the
2871
- ``default_factory`` set to ``None``, such that it behaves like a normal
2872
- dictionary.
2873
-
2874
- """
2875
- valuefunc = (lambda x: x) if (valuefunc is None) else valuefunc
2876
-
2877
- ret = defaultdict(list)
2878
- for item in iterable:
2879
- key = keyfunc(item)
2880
- value = valuefunc(item)
2881
- ret[key].append(value)
2882
-
2883
- if reducefunc is not None:
2884
- for key, value_list in ret.items():
2885
- ret[key] = reducefunc(value_list)
2886
-
2887
- ret.default_factory = None
2888
- return ret
2889
-
2890
-
2891
- def rlocate(iterable, pred=bool, window_size=None):
2892
- """Yield the index of each item in *iterable* for which *pred* returns
2893
- ``True``, starting from the right and moving left.
2894
-
2895
- *pred* defaults to :func:`bool`, which will select truthy items:
2896
-
2897
- >>> list(rlocate([0, 1, 1, 0, 1, 0, 0])) # Truthy at 1, 2, and 4
2898
- [4, 2, 1]
2899
-
2900
- Set *pred* to a custom function to, e.g., find the indexes for a particular
2901
- item:
2902
-
2903
- >>> iterable = iter('abcb')
2904
- >>> pred = lambda x: x == 'b'
2905
- >>> list(rlocate(iterable, pred))
2906
- [3, 1]
2907
-
2908
- If *window_size* is given, then the *pred* function will be called with
2909
- that many items. This enables searching for sub-sequences:
2910
-
2911
- >>> iterable = [0, 1, 2, 3, 0, 1, 2, 3, 0, 1, 2, 3]
2912
- >>> pred = lambda *args: args == (1, 2, 3)
2913
- >>> list(rlocate(iterable, pred=pred, window_size=3))
2914
- [9, 5, 1]
2915
-
2916
- Beware, this function won't return anything for infinite iterables.
2917
- If *iterable* is reversible, ``rlocate`` will reverse it and search from
2918
- the right. Otherwise, it will search from the left and return the results
2919
- in reverse order.
2920
-
2921
- See :func:`locate` to for other example applications.
2922
-
2923
- """
2924
- if window_size is None:
2925
- try:
2926
- len_iter = len(iterable)
2927
- return (len_iter - i - 1 for i in locate(reversed(iterable), pred))
2928
- except TypeError:
2929
- pass
2930
-
2931
- return reversed(list(locate(iterable, pred, window_size)))
2932
-
2933
-
2934
- def replace(iterable, pred, substitutes, count=None, window_size=1):
2935
- """Yield the items from *iterable*, replacing the items for which *pred*
2936
- returns ``True`` with the items from the iterable *substitutes*.
2937
-
2938
- >>> iterable = [1, 1, 0, 1, 1, 0, 1, 1]
2939
- >>> pred = lambda x: x == 0
2940
- >>> substitutes = (2, 3)
2941
- >>> list(replace(iterable, pred, substitutes))
2942
- [1, 1, 2, 3, 1, 1, 2, 3, 1, 1]
2943
-
2944
- If *count* is given, the number of replacements will be limited:
2945
-
2946
- >>> iterable = [1, 1, 0, 1, 1, 0, 1, 1, 0]
2947
- >>> pred = lambda x: x == 0
2948
- >>> substitutes = [None]
2949
- >>> list(replace(iterable, pred, substitutes, count=2))
2950
- [1, 1, None, 1, 1, None, 1, 1, 0]
2951
-
2952
- Use *window_size* to control the number of items passed as arguments to
2953
- *pred*. This allows for locating and replacing subsequences.
2954
-
2955
- >>> iterable = [0, 1, 2, 5, 0, 1, 2, 5]
2956
- >>> window_size = 3
2957
- >>> pred = lambda *args: args == (0, 1, 2) # 3 items passed to pred
2958
- >>> substitutes = [3, 4] # Splice in these items
2959
- >>> list(replace(iterable, pred, substitutes, window_size=window_size))
2960
- [3, 4, 5, 3, 4, 5]
2961
-
2962
- """
2963
- if window_size < 1:
2964
- raise ValueError('window_size must be at least 1')
2965
-
2966
- # Save the substitutes iterable, since it's used more than once
2967
- substitutes = tuple(substitutes)
2968
-
2969
- # Add padding such that the number of windows matches the length of the
2970
- # iterable
2971
- it = chain(iterable, [_marker] * (window_size - 1))
2972
- windows = windowed(it, window_size)
2973
-
2974
- n = 0
2975
- for w in windows:
2976
- # If the current window matches our predicate (and we haven't hit
2977
- # our maximum number of replacements), splice in the substitutes
2978
- # and then consume the following windows that overlap with this one.
2979
- # For example, if the iterable is (0, 1, 2, 3, 4...)
2980
- # and the window size is 2, we have (0, 1), (1, 2), (2, 3)...
2981
- # If the predicate matches on (0, 1), we need to zap (0, 1) and (1, 2)
2982
- if pred(*w):
2983
- if (count is None) or (n < count):
2984
- n += 1
2985
- yield from substitutes
2986
- consume(windows, window_size - 1)
2987
- continue
2988
-
2989
- # If there was no match (or we've reached the replacement limit),
2990
- # yield the first item from the window.
2991
- if w and (w[0] is not _marker):
2992
- yield w[0]
2993
-
2994
-
2995
- def partitions(iterable):
2996
- """Yield all possible order-preserving partitions of *iterable*.
2997
-
2998
- >>> iterable = 'abc'
2999
- >>> for part in partitions(iterable):
3000
- ... print([''.join(p) for p in part])
3001
- ['abc']
3002
- ['a', 'bc']
3003
- ['ab', 'c']
3004
- ['a', 'b', 'c']
3005
-
3006
- This is unrelated to :func:`partition`.
3007
-
3008
- """
3009
- sequence = list(iterable)
3010
- n = len(sequence)
3011
- for i in powerset(range(1, n)):
3012
- yield [sequence[i:j] for i, j in zip((0,) + i, i + (n,))]
3013
-
3014
-
3015
- def set_partitions(iterable, k=None):
3016
- """
3017
- Yield the set partitions of *iterable* into *k* parts. Set partitions are
3018
- not order-preserving.
3019
-
3020
- >>> iterable = 'abc'
3021
- >>> for part in set_partitions(iterable, 2):
3022
- ... print([''.join(p) for p in part])
3023
- ['a', 'bc']
3024
- ['ab', 'c']
3025
- ['b', 'ac']
3026
-
3027
-
3028
- If *k* is not given, every set partition is generated.
3029
-
3030
- >>> iterable = 'abc'
3031
- >>> for part in set_partitions(iterable):
3032
- ... print([''.join(p) for p in part])
3033
- ['abc']
3034
- ['a', 'bc']
3035
- ['ab', 'c']
3036
- ['b', 'ac']
3037
- ['a', 'b', 'c']
3038
-
3039
- """
3040
- L = list(iterable)
3041
- n = len(L)
3042
- if k is not None:
3043
- if k < 1:
3044
- raise ValueError(
3045
- "Can't partition in a negative or zero number of groups"
3046
- )
3047
- elif k > n:
3048
- return
3049
-
3050
- def set_partitions_helper(L, k):
3051
- n = len(L)
3052
- if k == 1:
3053
- yield [L]
3054
- elif n == k:
3055
- yield [[s] for s in L]
3056
- else:
3057
- e, *M = L
3058
- for p in set_partitions_helper(M, k - 1):
3059
- yield [[e], *p]
3060
- for p in set_partitions_helper(M, k):
3061
- for i in range(len(p)):
3062
- yield p[:i] + [[e] + p[i]] + p[i + 1 :]
3063
-
3064
- if k is None:
3065
- for k in range(1, n + 1):
3066
- yield from set_partitions_helper(L, k)
3067
- else:
3068
- yield from set_partitions_helper(L, k)
3069
-
3070
-
3071
- class time_limited:
3072
- """
3073
- Yield items from *iterable* until *limit_seconds* have passed.
3074
- If the time limit expires before all items have been yielded, the
3075
- ``timed_out`` parameter will be set to ``True``.
3076
-
3077
- >>> from time import sleep
3078
- >>> def generator():
3079
- ... yield 1
3080
- ... yield 2
3081
- ... sleep(0.2)
3082
- ... yield 3
3083
- >>> iterable = time_limited(0.1, generator())
3084
- >>> list(iterable)
3085
- [1, 2]
3086
- >>> iterable.timed_out
3087
- True
3088
-
3089
- Note that the time is checked before each item is yielded, and iteration
3090
- stops if the time elapsed is greater than *limit_seconds*. If your time
3091
- limit is 1 second, but it takes 2 seconds to generate the first item from
3092
- the iterable, the function will run for 2 seconds and not yield anything.
3093
-
3094
- """
3095
-
3096
- def __init__(self, limit_seconds, iterable):
3097
- if limit_seconds < 0:
3098
- raise ValueError('limit_seconds must be positive')
3099
- self.limit_seconds = limit_seconds
3100
- self._iterable = iter(iterable)
3101
- self._start_time = monotonic()
3102
- self.timed_out = False
3103
-
3104
- def __iter__(self):
3105
- return self
3106
-
3107
- def __next__(self):
3108
- item = next(self._iterable)
3109
- if monotonic() - self._start_time > self.limit_seconds:
3110
- self.timed_out = True
3111
- raise StopIteration
3112
-
3113
- return item
3114
-
3115
-
3116
- def only(iterable, default=None, too_long=None):
3117
- """If *iterable* has only one item, return it.
3118
- If it has zero items, return *default*.
3119
- If it has more than one item, raise the exception given by *too_long*,
3120
- which is ``ValueError`` by default.
3121
-
3122
- >>> only([], default='missing')
3123
- 'missing'
3124
- >>> only([1])
3125
- 1
3126
- >>> only([1, 2]) # doctest: +IGNORE_EXCEPTION_DETAIL
3127
- Traceback (most recent call last):
3128
- ...
3129
- ValueError: Expected exactly one item in iterable, but got 1, 2,
3130
- and perhaps more.'
3131
- >>> only([1, 2], too_long=TypeError) # doctest: +IGNORE_EXCEPTION_DETAIL
3132
- Traceback (most recent call last):
3133
- ...
3134
- TypeError
3135
-
3136
- Note that :func:`only` attempts to advance *iterable* twice to ensure there
3137
- is only one item. See :func:`spy` or :func:`peekable` to check
3138
- iterable contents less destructively.
3139
- """
3140
- it = iter(iterable)
3141
- first_value = next(it, default)
3142
-
3143
- try:
3144
- second_value = next(it)
3145
- except StopIteration:
3146
- pass
3147
- else:
3148
- msg = (
3149
- 'Expected exactly one item in iterable, but got {!r}, {!r}, '
3150
- 'and perhaps more.'.format(first_value, second_value)
3151
- )
3152
- raise too_long or ValueError(msg)
3153
-
3154
- return first_value
3155
-
3156
-
3157
- def ichunked(iterable, n):
3158
- """Break *iterable* into sub-iterables with *n* elements each.
3159
- :func:`ichunked` is like :func:`chunked`, but it yields iterables
3160
- instead of lists.
3161
-
3162
- If the sub-iterables are read in order, the elements of *iterable*
3163
- won't be stored in memory.
3164
- If they are read out of order, :func:`itertools.tee` is used to cache
3165
- elements as necessary.
3166
-
3167
- >>> from itertools import count
3168
- >>> all_chunks = ichunked(count(), 4)
3169
- >>> c_1, c_2, c_3 = next(all_chunks), next(all_chunks), next(all_chunks)
3170
- >>> list(c_2) # c_1's elements have been cached; c_3's haven't been
3171
- [4, 5, 6, 7]
3172
- >>> list(c_1)
3173
- [0, 1, 2, 3]
3174
- >>> list(c_3)
3175
- [8, 9, 10, 11]
3176
-
3177
- """
3178
- source = iter(iterable)
3179
-
3180
- while True:
3181
- # Check to see whether we're at the end of the source iterable
3182
- item = next(source, _marker)
3183
- if item is _marker:
3184
- return
3185
-
3186
- # Clone the source and yield an n-length slice
3187
- source, it = tee(chain([item], source))
3188
- yield islice(it, n)
3189
-
3190
- # Advance the source iterable
3191
- consume(source, n)
3192
-
3193
-
3194
- def distinct_combinations(iterable, r):
3195
- """Yield the distinct combinations of *r* items taken from *iterable*.
3196
-
3197
- >>> list(distinct_combinations([0, 0, 1], 2))
3198
- [(0, 0), (0, 1)]
3199
-
3200
- Equivalent to ``set(combinations(iterable))``, except duplicates are not
3201
- generated and thrown away. For larger input sequences this is much more
3202
- efficient.
3203
-
3204
- """
3205
- if r < 0:
3206
- raise ValueError('r must be non-negative')
3207
- elif r == 0:
3208
- yield ()
3209
- return
3210
- pool = tuple(iterable)
3211
- generators = [unique_everseen(enumerate(pool), key=itemgetter(1))]
3212
- current_combo = [None] * r
3213
- level = 0
3214
- while generators:
3215
- try:
3216
- cur_idx, p = next(generators[-1])
3217
- except StopIteration:
3218
- generators.pop()
3219
- level -= 1
3220
- continue
3221
- current_combo[level] = p
3222
- if level + 1 == r:
3223
- yield tuple(current_combo)
3224
- else:
3225
- generators.append(
3226
- unique_everseen(
3227
- enumerate(pool[cur_idx + 1 :], cur_idx + 1),
3228
- key=itemgetter(1),
3229
- )
3230
- )
3231
- level += 1
3232
-
3233
-
3234
- def filter_except(validator, iterable, *exceptions):
3235
- """Yield the items from *iterable* for which the *validator* function does
3236
- not raise one of the specified *exceptions*.
3237
-
3238
- *validator* is called for each item in *iterable*.
3239
- It should be a function that accepts one argument and raises an exception
3240
- if that item is not valid.
3241
-
3242
- >>> iterable = ['1', '2', 'three', '4', None]
3243
- >>> list(filter_except(int, iterable, ValueError, TypeError))
3244
- ['1', '2', '4']
3245
-
3246
- If an exception other than one given by *exceptions* is raised by
3247
- *validator*, it is raised like normal.
3248
- """
3249
- for item in iterable:
3250
- try:
3251
- validator(item)
3252
- except exceptions:
3253
- pass
3254
- else:
3255
- yield item
3256
-
3257
-
3258
- def map_except(function, iterable, *exceptions):
3259
- """Transform each item from *iterable* with *function* and yield the
3260
- result, unless *function* raises one of the specified *exceptions*.
3261
-
3262
- *function* is called to transform each item in *iterable*.
3263
- It should be a accept one argument.
3264
-
3265
- >>> iterable = ['1', '2', 'three', '4', None]
3266
- >>> list(map_except(int, iterable, ValueError, TypeError))
3267
- [1, 2, 4]
3268
-
3269
- If an exception other than one given by *exceptions* is raised by
3270
- *function*, it is raised like normal.
3271
- """
3272
- for item in iterable:
3273
- try:
3274
- yield function(item)
3275
- except exceptions:
3276
- pass
3277
-
3278
-
3279
- def _sample_unweighted(iterable, k):
3280
- # Implementation of "Algorithm L" from the 1994 paper by Kim-Hung Li:
3281
- # "Reservoir-Sampling Algorithms of Time Complexity O(n(1+log(N/n)))".
3282
-
3283
- # Fill up the reservoir (collection of samples) with the first `k` samples
3284
- reservoir = take(k, iterable)
3285
-
3286
- # Generate random number that's the largest in a sample of k U(0,1) numbers
3287
- # Largest order statistic: https://en.wikipedia.org/wiki/Order_statistic
3288
- W = exp(log(random()) / k)
3289
-
3290
- # The number of elements to skip before changing the reservoir is a random
3291
- # number with a geometric distribution. Sample it using random() and logs.
3292
- next_index = k + floor(log(random()) / log(1 - W))
3293
-
3294
- for index, element in enumerate(iterable, k):
3295
-
3296
- if index == next_index:
3297
- reservoir[randrange(k)] = element
3298
- # The new W is the largest in a sample of k U(0, `old_W`) numbers
3299
- W *= exp(log(random()) / k)
3300
- next_index += floor(log(random()) / log(1 - W)) + 1
3301
-
3302
- return reservoir
3303
-
3304
-
3305
- def _sample_weighted(iterable, k, weights):
3306
- # Implementation of "A-ExpJ" from the 2006 paper by Efraimidis et al. :
3307
- # "Weighted random sampling with a reservoir".
3308
-
3309
- # Log-transform for numerical stability for weights that are small/large
3310
- weight_keys = (log(random()) / weight for weight in weights)
3311
-
3312
- # Fill up the reservoir (collection of samples) with the first `k`
3313
- # weight-keys and elements, then heapify the list.
3314
- reservoir = take(k, zip(weight_keys, iterable))
3315
- heapify(reservoir)
3316
-
3317
- # The number of jumps before changing the reservoir is a random variable
3318
- # with an exponential distribution. Sample it using random() and logs.
3319
- smallest_weight_key, _ = reservoir[0]
3320
- weights_to_skip = log(random()) / smallest_weight_key
3321
-
3322
- for weight, element in zip(weights, iterable):
3323
- if weight >= weights_to_skip:
3324
- # The notation here is consistent with the paper, but we store
3325
- # the weight-keys in log-space for better numerical stability.
3326
- smallest_weight_key, _ = reservoir[0]
3327
- t_w = exp(weight * smallest_weight_key)
3328
- r_2 = uniform(t_w, 1) # generate U(t_w, 1)
3329
- weight_key = log(r_2) / weight
3330
- heapreplace(reservoir, (weight_key, element))
3331
- smallest_weight_key, _ = reservoir[0]
3332
- weights_to_skip = log(random()) / smallest_weight_key
3333
- else:
3334
- weights_to_skip -= weight
3335
-
3336
- # Equivalent to [element for weight_key, element in sorted(reservoir)]
3337
- return [heappop(reservoir)[1] for _ in range(k)]
3338
-
3339
-
3340
- def sample(iterable, k, weights=None):
3341
- """Return a *k*-length list of elements chosen (without replacement)
3342
- from the *iterable*. Like :func:`random.sample`, but works on iterables
3343
- of unknown length.
3344
-
3345
- >>> iterable = range(100)
3346
- >>> sample(iterable, 5) # doctest: +SKIP
3347
- [81, 60, 96, 16, 4]
3348
-
3349
- An iterable with *weights* may also be given:
3350
-
3351
- >>> iterable = range(100)
3352
- >>> weights = (i * i + 1 for i in range(100))
3353
- >>> sampled = sample(iterable, 5, weights=weights) # doctest: +SKIP
3354
- [79, 67, 74, 66, 78]
3355
-
3356
- The algorithm can also be used to generate weighted random permutations.
3357
- The relative weight of each item determines the probability that it
3358
- appears late in the permutation.
3359
-
3360
- >>> data = "abcdefgh"
3361
- >>> weights = range(1, len(data) + 1)
3362
- >>> sample(data, k=len(data), weights=weights) # doctest: +SKIP
3363
- ['c', 'a', 'b', 'e', 'g', 'd', 'h', 'f']
3364
- """
3365
- if k == 0:
3366
- return []
3367
-
3368
- iterable = iter(iterable)
3369
- if weights is None:
3370
- return _sample_unweighted(iterable, k)
3371
- else:
3372
- weights = iter(weights)
3373
- return _sample_weighted(iterable, k, weights)
3374
-
3375
-
3376
- def is_sorted(iterable, key=None, reverse=False):
3377
- """Returns ``True`` if the items of iterable are in sorted order, and
3378
- ``False`` otherwise. *key* and *reverse* have the same meaning that they do
3379
- in the built-in :func:`sorted` function.
3380
-
3381
- >>> is_sorted(['1', '2', '3', '4', '5'], key=int)
3382
- True
3383
- >>> is_sorted([5, 4, 3, 1, 2], reverse=True)
3384
- False
3385
-
3386
- The function returns ``False`` after encountering the first out-of-order
3387
- item. If there are no out-of-order items, the iterable is exhausted.
3388
- """
3389
-
3390
- compare = lt if reverse else gt
3391
- it = iterable if (key is None) else map(key, iterable)
3392
- return not any(starmap(compare, pairwise(it)))
3393
-
3394
-
3395
- class AbortThread(BaseException):
3396
- pass
3397
-
3398
-
3399
- class callback_iter:
3400
- """Convert a function that uses callbacks to an iterator.
3401
-
3402
- Let *func* be a function that takes a `callback` keyword argument.
3403
- For example:
3404
-
3405
- >>> def func(callback=None):
3406
- ... for i, c in [(1, 'a'), (2, 'b'), (3, 'c')]:
3407
- ... if callback:
3408
- ... callback(i, c)
3409
- ... return 4
3410
-
3411
-
3412
- Use ``with callback_iter(func)`` to get an iterator over the parameters
3413
- that are delivered to the callback.
3414
-
3415
- >>> with callback_iter(func) as it:
3416
- ... for args, kwargs in it:
3417
- ... print(args)
3418
- (1, 'a')
3419
- (2, 'b')
3420
- (3, 'c')
3421
-
3422
- The function will be called in a background thread. The ``done`` property
3423
- indicates whether it has completed execution.
3424
-
3425
- >>> it.done
3426
- True
3427
-
3428
- If it completes successfully, its return value will be available
3429
- in the ``result`` property.
3430
-
3431
- >>> it.result
3432
- 4
3433
-
3434
- Notes:
3435
-
3436
- * If the function uses some keyword argument besides ``callback``, supply
3437
- *callback_kwd*.
3438
- * If it finished executing, but raised an exception, accessing the
3439
- ``result`` property will raise the same exception.
3440
- * If it hasn't finished executing, accessing the ``result``
3441
- property from within the ``with`` block will raise ``RuntimeError``.
3442
- * If it hasn't finished executing, accessing the ``result`` property from
3443
- outside the ``with`` block will raise a
3444
- ``more_itertools.AbortThread`` exception.
3445
- * Provide *wait_seconds* to adjust how frequently the it is polled for
3446
- output.
3447
-
3448
- """
3449
-
3450
- def __init__(self, func, callback_kwd='callback', wait_seconds=0.1):
3451
- self._func = func
3452
- self._callback_kwd = callback_kwd
3453
- self._aborted = False
3454
- self._future = None
3455
- self._wait_seconds = wait_seconds
3456
- self._executor = __import__("concurrent.futures").futures.ThreadPoolExecutor(max_workers=1)
3457
- self._iterator = self._reader()
3458
-
3459
- def __enter__(self):
3460
- return self
3461
-
3462
- def __exit__(self, exc_type, exc_value, traceback):
3463
- self._aborted = True
3464
- self._executor.shutdown()
3465
-
3466
- def __iter__(self):
3467
- return self
3468
-
3469
- def __next__(self):
3470
- return next(self._iterator)
3471
-
3472
- @property
3473
- def done(self):
3474
- if self._future is None:
3475
- return False
3476
- return self._future.done()
3477
-
3478
- @property
3479
- def result(self):
3480
- if not self.done:
3481
- raise RuntimeError('Function has not yet completed')
3482
-
3483
- return self._future.result()
3484
-
3485
- def _reader(self):
3486
- q = Queue()
3487
-
3488
- def callback(*args, **kwargs):
3489
- if self._aborted:
3490
- raise AbortThread('canceled by user')
3491
-
3492
- q.put((args, kwargs))
3493
-
3494
- self._future = self._executor.submit(
3495
- self._func, **{self._callback_kwd: callback}
3496
- )
3497
-
3498
- while True:
3499
- try:
3500
- item = q.get(timeout=self._wait_seconds)
3501
- except Empty:
3502
- pass
3503
- else:
3504
- q.task_done()
3505
- yield item
3506
-
3507
- if self._future.done():
3508
- break
3509
-
3510
- remaining = []
3511
- while True:
3512
- try:
3513
- item = q.get_nowait()
3514
- except Empty:
3515
- break
3516
- else:
3517
- q.task_done()
3518
- remaining.append(item)
3519
- q.join()
3520
- yield from remaining
3521
-
3522
-
3523
- def windowed_complete(iterable, n):
3524
- """
3525
- Yield ``(beginning, middle, end)`` tuples, where:
3526
-
3527
- * Each ``middle`` has *n* items from *iterable*
3528
- * Each ``beginning`` has the items before the ones in ``middle``
3529
- * Each ``end`` has the items after the ones in ``middle``
3530
-
3531
- >>> iterable = range(7)
3532
- >>> n = 3
3533
- >>> for beginning, middle, end in windowed_complete(iterable, n):
3534
- ... print(beginning, middle, end)
3535
- () (0, 1, 2) (3, 4, 5, 6)
3536
- (0,) (1, 2, 3) (4, 5, 6)
3537
- (0, 1) (2, 3, 4) (5, 6)
3538
- (0, 1, 2) (3, 4, 5) (6,)
3539
- (0, 1, 2, 3) (4, 5, 6) ()
3540
-
3541
- Note that *n* must be at least 0 and most equal to the length of
3542
- *iterable*.
3543
-
3544
- This function will exhaust the iterable and may require significant
3545
- storage.
3546
- """
3547
- if n < 0:
3548
- raise ValueError('n must be >= 0')
3549
-
3550
- seq = tuple(iterable)
3551
- size = len(seq)
3552
-
3553
- if n > size:
3554
- raise ValueError('n must be <= len(seq)')
3555
-
3556
- for i in range(size - n + 1):
3557
- beginning = seq[:i]
3558
- middle = seq[i : i + n]
3559
- end = seq[i + n :]
3560
- yield beginning, middle, end
3561
-
3562
-
3563
- def all_unique(iterable, key=None):
3564
- """
3565
- Returns ``True`` if all the elements of *iterable* are unique (no two
3566
- elements are equal).
3567
-
3568
- >>> all_unique('ABCB')
3569
- False
3570
-
3571
- If a *key* function is specified, it will be used to make comparisons.
3572
-
3573
- >>> all_unique('ABCb')
3574
- True
3575
- >>> all_unique('ABCb', str.lower)
3576
- False
3577
-
3578
- The function returns as soon as the first non-unique element is
3579
- encountered. Iterables with a mix of hashable and unhashable items can
3580
- be used, but the function will be slower for unhashable items.
3581
- """
3582
- seenset = set()
3583
- seenset_add = seenset.add
3584
- seenlist = []
3585
- seenlist_add = seenlist.append
3586
- for element in map(key, iterable) if key else iterable:
3587
- try:
3588
- if element in seenset:
3589
- return False
3590
- seenset_add(element)
3591
- except TypeError:
3592
- if element in seenlist:
3593
- return False
3594
- seenlist_add(element)
3595
- return True
3596
-
3597
-
3598
- def nth_product(index, *args):
3599
- """Equivalent to ``list(product(*args))[index]``.
3600
-
3601
- The products of *args* can be ordered lexicographically.
3602
- :func:`nth_product` computes the product at sort position *index* without
3603
- computing the previous products.
3604
-
3605
- >>> nth_product(8, range(2), range(2), range(2), range(2))
3606
- (1, 0, 0, 0)
3607
-
3608
- ``IndexError`` will be raised if the given *index* is invalid.
3609
- """
3610
- pools = list(map(tuple, reversed(args)))
3611
- ns = list(map(len, pools))
3612
-
3613
- c = reduce(mul, ns)
3614
-
3615
- if index < 0:
3616
- index += c
3617
-
3618
- if not 0 <= index < c:
3619
- raise IndexError
3620
-
3621
- result = []
3622
- for pool, n in zip(pools, ns):
3623
- result.append(pool[index % n])
3624
- index //= n
3625
-
3626
- return tuple(reversed(result))
3627
-
3628
-
3629
- def nth_permutation(iterable, r, index):
3630
- """Equivalent to ``list(permutations(iterable, r))[index]```
3631
-
3632
- The subsequences of *iterable* that are of length *r* where order is
3633
- important can be ordered lexicographically. :func:`nth_permutation`
3634
- computes the subsequence at sort position *index* directly, without
3635
- computing the previous subsequences.
3636
-
3637
- >>> nth_permutation('ghijk', 2, 5)
3638
- ('h', 'i')
3639
-
3640
- ``ValueError`` will be raised If *r* is negative or greater than the length
3641
- of *iterable*.
3642
- ``IndexError`` will be raised if the given *index* is invalid.
3643
- """
3644
- pool = list(iterable)
3645
- n = len(pool)
3646
-
3647
- if r is None or r == n:
3648
- r, c = n, factorial(n)
3649
- elif not 0 <= r < n:
3650
- raise ValueError
3651
- else:
3652
- c = factorial(n) // factorial(n - r)
3653
-
3654
- if index < 0:
3655
- index += c
3656
-
3657
- if not 0 <= index < c:
3658
- raise IndexError
3659
-
3660
- if c == 0:
3661
- return tuple()
3662
-
3663
- result = [0] * r
3664
- q = index * factorial(n) // c if r < n else index
3665
- for d in range(1, n + 1):
3666
- q, i = divmod(q, d)
3667
- if 0 <= n - d < r:
3668
- result[n - d] = i
3669
- if q == 0:
3670
- break
3671
-
3672
- return tuple(map(pool.pop, result))
3673
-
3674
-
3675
- def value_chain(*args):
3676
- """Yield all arguments passed to the function in the same order in which
3677
- they were passed. If an argument itself is iterable then iterate over its
3678
- values.
3679
-
3680
- >>> list(value_chain(1, 2, 3, [4, 5, 6]))
3681
- [1, 2, 3, 4, 5, 6]
3682
-
3683
- Binary and text strings are not considered iterable and are emitted
3684
- as-is:
3685
-
3686
- >>> list(value_chain('12', '34', ['56', '78']))
3687
- ['12', '34', '56', '78']
3688
-
3689
-
3690
- Multiple levels of nesting are not flattened.
3691
-
3692
- """
3693
- for value in args:
3694
- if isinstance(value, (str, bytes)):
3695
- yield value
3696
- continue
3697
- try:
3698
- yield from value
3699
- except TypeError:
3700
- yield value
3701
-
3702
-
3703
- def product_index(element, *args):
3704
- """Equivalent to ``list(product(*args)).index(element)``
3705
-
3706
- The products of *args* can be ordered lexicographically.
3707
- :func:`product_index` computes the first index of *element* without
3708
- computing the previous products.
3709
-
3710
- >>> product_index([8, 2], range(10), range(5))
3711
- 42
3712
-
3713
- ``ValueError`` will be raised if the given *element* isn't in the product
3714
- of *args*.
3715
- """
3716
- index = 0
3717
-
3718
- for x, pool in zip_longest(element, args, fillvalue=_marker):
3719
- if x is _marker or pool is _marker:
3720
- raise ValueError('element is not a product of args')
3721
-
3722
- pool = tuple(pool)
3723
- index = index * len(pool) + pool.index(x)
3724
-
3725
- return index
3726
-
3727
-
3728
- def combination_index(element, iterable):
3729
- """Equivalent to ``list(combinations(iterable, r)).index(element)``
3730
-
3731
- The subsequences of *iterable* that are of length *r* can be ordered
3732
- lexicographically. :func:`combination_index` computes the index of the
3733
- first *element*, without computing the previous combinations.
3734
-
3735
- >>> combination_index('adf', 'abcdefg')
3736
- 10
3737
-
3738
- ``ValueError`` will be raised if the given *element* isn't one of the
3739
- combinations of *iterable*.
3740
- """
3741
- element = enumerate(element)
3742
- k, y = next(element, (None, None))
3743
- if k is None:
3744
- return 0
3745
-
3746
- indexes = []
3747
- pool = enumerate(iterable)
3748
- for n, x in pool:
3749
- if x == y:
3750
- indexes.append(n)
3751
- tmp, y = next(element, (None, None))
3752
- if tmp is None:
3753
- break
3754
- else:
3755
- k = tmp
3756
- else:
3757
- raise ValueError('element is not a combination of iterable')
3758
-
3759
- n, _ = last(pool, default=(n, None))
3760
-
3761
- # Python versiosn below 3.8 don't have math.comb
3762
- index = 1
3763
- for i, j in enumerate(reversed(indexes), start=1):
3764
- j = n - j
3765
- if i <= j:
3766
- index += factorial(j) // (factorial(i) * factorial(j - i))
3767
-
3768
- return factorial(n + 1) // (factorial(k + 1) * factorial(n - k)) - index
3769
-
3770
-
3771
- def permutation_index(element, iterable):
3772
- """Equivalent to ``list(permutations(iterable, r)).index(element)```
3773
-
3774
- The subsequences of *iterable* that are of length *r* where order is
3775
- important can be ordered lexicographically. :func:`permutation_index`
3776
- computes the index of the first *element* directly, without computing
3777
- the previous permutations.
3778
-
3779
- >>> permutation_index([1, 3, 2], range(5))
3780
- 19
3781
-
3782
- ``ValueError`` will be raised if the given *element* isn't one of the
3783
- permutations of *iterable*.
3784
- """
3785
- index = 0
3786
- pool = list(iterable)
3787
- for i, x in zip(range(len(pool), -1, -1), element):
3788
- r = pool.index(x)
3789
- index = index * i + r
3790
- del pool[r]
3791
-
3792
- return index
3793
-
3794
-
3795
- class countable:
3796
- """Wrap *iterable* and keep a count of how many items have been consumed.
3797
-
3798
- The ``items_seen`` attribute starts at ``0`` and increments as the iterable
3799
- is consumed:
3800
-
3801
- >>> iterable = map(str, range(10))
3802
- >>> it = countable(iterable)
3803
- >>> it.items_seen
3804
- 0
3805
- >>> next(it), next(it)
3806
- ('0', '1')
3807
- >>> list(it)
3808
- ['2', '3', '4', '5', '6', '7', '8', '9']
3809
- >>> it.items_seen
3810
- 10
3811
- """
3812
-
3813
- def __init__(self, iterable):
3814
- self._it = iter(iterable)
3815
- self.items_seen = 0
3816
-
3817
- def __iter__(self):
3818
- return self
3819
-
3820
- def __next__(self):
3821
- item = next(self._it)
3822
- self.items_seen += 1
3823
-
3824
- return item