android-notify 1.60.1__py3-none-any.whl → 1.60.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of android-notify might be problematic. Click here for more details.

Files changed (1712) hide show
  1. android_notify/config.py +1 -1
  2. {android_notify-1.60.1.dist-info → android_notify-1.60.2.dist-info}/METADATA +7 -19
  3. android_notify-1.60.2.dist-info/RECORD +1719 -0
  4. android_notify-1.60.2.dist-info/entry_points.txt +2 -0
  5. {android_notify-1.60.1.dist-info → android_notify-1.60.2.dist-info}/top_level.txt +2 -0
  6. docs/examples/flet-working/src/core.py +221 -0
  7. docs/examples/flet-working/src/main.py +68 -0
  8. docs/tests/flet/adv/main.py +97 -0
  9. docs/tests/flet/adv/tests/__init__.py +0 -0
  10. docs/tests/flet/adv/tests/test_android_notify_full.py +199 -0
  11. docs/tests/flet/basic/src/core.py +221 -0
  12. docs/tests/flet/basic/src/main.py +112 -0
  13. docs/website/src/pages/data/laner_Sent.py +24 -0
  14. venv/Lib/site-packages/__editable___android_notify_1_60_0_finder.py +85 -0
  15. venv/Lib/site-packages/_distutils_hack/__init__.py +239 -0
  16. venv/Lib/site-packages/_distutils_hack/override.py +1 -0
  17. venv/Lib/site-packages/build/__init__.py +39 -0
  18. venv/Lib/site-packages/build/__main__.py +486 -0
  19. venv/Lib/site-packages/build/_builder.py +355 -0
  20. venv/Lib/site-packages/build/_compat/__init__.py +0 -0
  21. venv/Lib/site-packages/build/_compat/importlib.py +22 -0
  22. venv/Lib/site-packages/build/_compat/tarfile.py +31 -0
  23. venv/Lib/site-packages/build/_compat/tomllib.py +16 -0
  24. venv/Lib/site-packages/build/_ctx.py +99 -0
  25. venv/Lib/site-packages/build/_exceptions.py +65 -0
  26. venv/Lib/site-packages/build/_types.py +19 -0
  27. venv/Lib/site-packages/build/_util.py +63 -0
  28. venv/Lib/site-packages/build/env.py +393 -0
  29. venv/Lib/site-packages/build/py.typed +0 -0
  30. venv/Lib/site-packages/build/util.py +63 -0
  31. venv/Lib/site-packages/certifi/__init__.py +4 -0
  32. venv/Lib/site-packages/certifi/__main__.py +12 -0
  33. venv/Lib/site-packages/certifi/core.py +83 -0
  34. venv/Lib/site-packages/certifi/py.typed +0 -0
  35. venv/Lib/site-packages/charset_normalizer/__init__.py +48 -0
  36. venv/Lib/site-packages/charset_normalizer/__main__.py +6 -0
  37. venv/Lib/site-packages/charset_normalizer/api.py +669 -0
  38. venv/Lib/site-packages/charset_normalizer/cd.py +395 -0
  39. venv/Lib/site-packages/charset_normalizer/cli/__init__.py +8 -0
  40. venv/Lib/site-packages/charset_normalizer/cli/__main__.py +381 -0
  41. venv/Lib/site-packages/charset_normalizer/constant.py +2015 -0
  42. venv/Lib/site-packages/charset_normalizer/legacy.py +80 -0
  43. venv/Lib/site-packages/charset_normalizer/md.py +635 -0
  44. venv/Lib/site-packages/charset_normalizer/models.py +360 -0
  45. venv/Lib/site-packages/charset_normalizer/py.typed +0 -0
  46. venv/Lib/site-packages/charset_normalizer/utils.py +414 -0
  47. venv/Lib/site-packages/charset_normalizer/version.py +8 -0
  48. venv/Lib/site-packages/colorama/__init__.py +7 -0
  49. venv/Lib/site-packages/colorama/ansi.py +102 -0
  50. venv/Lib/site-packages/colorama/ansitowin32.py +277 -0
  51. venv/Lib/site-packages/colorama/initialise.py +121 -0
  52. venv/Lib/site-packages/colorama/tests/__init__.py +1 -0
  53. venv/Lib/site-packages/colorama/tests/ansi_test.py +76 -0
  54. venv/Lib/site-packages/colorama/tests/ansitowin32_test.py +294 -0
  55. venv/Lib/site-packages/colorama/tests/initialise_test.py +189 -0
  56. venv/Lib/site-packages/colorama/tests/isatty_test.py +57 -0
  57. venv/Lib/site-packages/colorama/tests/utils.py +49 -0
  58. venv/Lib/site-packages/colorama/tests/winterm_test.py +131 -0
  59. venv/Lib/site-packages/colorama/win32.py +180 -0
  60. venv/Lib/site-packages/colorama/winterm.py +195 -0
  61. venv/Lib/site-packages/docutils/__init__.py +341 -0
  62. venv/Lib/site-packages/docutils/__main__.py +103 -0
  63. venv/Lib/site-packages/docutils/core.py +855 -0
  64. venv/Lib/site-packages/docutils/examples.py +123 -0
  65. venv/Lib/site-packages/docutils/frontend.py +1178 -0
  66. venv/Lib/site-packages/docutils/io.py +718 -0
  67. venv/Lib/site-packages/docutils/languages/__init__.py +117 -0
  68. venv/Lib/site-packages/docutils/languages/af.py +58 -0
  69. venv/Lib/site-packages/docutils/languages/ar.py +60 -0
  70. venv/Lib/site-packages/docutils/languages/ca.py +65 -0
  71. venv/Lib/site-packages/docutils/languages/cs.py +60 -0
  72. venv/Lib/site-packages/docutils/languages/da.py +61 -0
  73. venv/Lib/site-packages/docutils/languages/de.py +58 -0
  74. venv/Lib/site-packages/docutils/languages/en.py +60 -0
  75. venv/Lib/site-packages/docutils/languages/eo.py +61 -0
  76. venv/Lib/site-packages/docutils/languages/es.py +58 -0
  77. venv/Lib/site-packages/docutils/languages/fa.py +60 -0
  78. venv/Lib/site-packages/docutils/languages/fi.py +60 -0
  79. venv/Lib/site-packages/docutils/languages/fr.py +58 -0
  80. venv/Lib/site-packages/docutils/languages/gl.py +62 -0
  81. venv/Lib/site-packages/docutils/languages/he.py +62 -0
  82. venv/Lib/site-packages/docutils/languages/it.py +58 -0
  83. venv/Lib/site-packages/docutils/languages/ja.py +60 -0
  84. venv/Lib/site-packages/docutils/languages/ka.py +58 -0
  85. venv/Lib/site-packages/docutils/languages/ko.py +60 -0
  86. venv/Lib/site-packages/docutils/languages/lt.py +60 -0
  87. venv/Lib/site-packages/docutils/languages/lv.py +59 -0
  88. venv/Lib/site-packages/docutils/languages/nl.py +60 -0
  89. venv/Lib/site-packages/docutils/languages/pl.py +60 -0
  90. venv/Lib/site-packages/docutils/languages/pt_br.py +60 -0
  91. venv/Lib/site-packages/docutils/languages/ru.py +58 -0
  92. venv/Lib/site-packages/docutils/languages/sk.py +58 -0
  93. venv/Lib/site-packages/docutils/languages/sv.py +59 -0
  94. venv/Lib/site-packages/docutils/languages/uk.py +58 -0
  95. venv/Lib/site-packages/docutils/languages/zh_cn.py +62 -0
  96. venv/Lib/site-packages/docutils/languages/zh_tw.py +61 -0
  97. venv/Lib/site-packages/docutils/nodes.py +3341 -0
  98. venv/Lib/site-packages/docutils/parsers/__init__.py +115 -0
  99. venv/Lib/site-packages/docutils/parsers/commonmark_wrapper.py +56 -0
  100. venv/Lib/site-packages/docutils/parsers/docutils_xml.py +194 -0
  101. venv/Lib/site-packages/docutils/parsers/null.py +24 -0
  102. venv/Lib/site-packages/docutils/parsers/recommonmark_wrapper.py +174 -0
  103. venv/Lib/site-packages/docutils/parsers/rst/__init__.py +414 -0
  104. venv/Lib/site-packages/docutils/parsers/rst/directives/__init__.py +480 -0
  105. venv/Lib/site-packages/docutils/parsers/rst/directives/admonitions.py +101 -0
  106. venv/Lib/site-packages/docutils/parsers/rst/directives/body.py +318 -0
  107. venv/Lib/site-packages/docutils/parsers/rst/directives/html.py +21 -0
  108. venv/Lib/site-packages/docutils/parsers/rst/directives/images.py +186 -0
  109. venv/Lib/site-packages/docutils/parsers/rst/directives/misc.py +690 -0
  110. venv/Lib/site-packages/docutils/parsers/rst/directives/parts.py +126 -0
  111. venv/Lib/site-packages/docutils/parsers/rst/directives/references.py +28 -0
  112. venv/Lib/site-packages/docutils/parsers/rst/directives/tables.py +523 -0
  113. venv/Lib/site-packages/docutils/parsers/rst/languages/__init__.py +63 -0
  114. venv/Lib/site-packages/docutils/parsers/rst/languages/af.py +107 -0
  115. venv/Lib/site-packages/docutils/parsers/rst/languages/ar.py +99 -0
  116. venv/Lib/site-packages/docutils/parsers/rst/languages/ca.py +130 -0
  117. venv/Lib/site-packages/docutils/parsers/rst/languages/cs.py +110 -0
  118. venv/Lib/site-packages/docutils/parsers/rst/languages/da.py +113 -0
  119. venv/Lib/site-packages/docutils/parsers/rst/languages/de.py +106 -0
  120. venv/Lib/site-packages/docutils/parsers/rst/languages/en.py +115 -0
  121. venv/Lib/site-packages/docutils/parsers/rst/languages/eo.py +118 -0
  122. venv/Lib/site-packages/docutils/parsers/rst/languages/es.py +121 -0
  123. venv/Lib/site-packages/docutils/parsers/rst/languages/fa.py +102 -0
  124. venv/Lib/site-packages/docutils/parsers/rst/languages/fi.py +98 -0
  125. venv/Lib/site-packages/docutils/parsers/rst/languages/fr.py +107 -0
  126. venv/Lib/site-packages/docutils/parsers/rst/languages/gl.py +106 -0
  127. venv/Lib/site-packages/docutils/parsers/rst/languages/he.py +110 -0
  128. venv/Lib/site-packages/docutils/parsers/rst/languages/it.py +98 -0
  129. venv/Lib/site-packages/docutils/parsers/rst/languages/ja.py +119 -0
  130. venv/Lib/site-packages/docutils/parsers/rst/languages/ka.py +89 -0
  131. venv/Lib/site-packages/docutils/parsers/rst/languages/ko.py +111 -0
  132. venv/Lib/site-packages/docutils/parsers/rst/languages/lt.py +109 -0
  133. venv/Lib/site-packages/docutils/parsers/rst/languages/lv.py +108 -0
  134. venv/Lib/site-packages/docutils/parsers/rst/languages/nl.py +113 -0
  135. venv/Lib/site-packages/docutils/parsers/rst/languages/pl.py +100 -0
  136. venv/Lib/site-packages/docutils/parsers/rst/languages/pt_br.py +109 -0
  137. venv/Lib/site-packages/docutils/parsers/rst/languages/ru.py +90 -0
  138. venv/Lib/site-packages/docutils/parsers/rst/languages/sk.py +96 -0
  139. venv/Lib/site-packages/docutils/parsers/rst/languages/sv.py +96 -0
  140. venv/Lib/site-packages/docutils/parsers/rst/languages/uk.py +91 -0
  141. venv/Lib/site-packages/docutils/parsers/rst/languages/zh_cn.py +104 -0
  142. venv/Lib/site-packages/docutils/parsers/rst/languages/zh_tw.py +109 -0
  143. venv/Lib/site-packages/docutils/parsers/rst/roles.py +450 -0
  144. venv/Lib/site-packages/docutils/parsers/rst/states.py +3255 -0
  145. venv/Lib/site-packages/docutils/parsers/rst/tableparser.py +540 -0
  146. venv/Lib/site-packages/docutils/readers/__init__.py +135 -0
  147. venv/Lib/site-packages/docutils/readers/doctree.py +50 -0
  148. venv/Lib/site-packages/docutils/readers/pep.py +55 -0
  149. venv/Lib/site-packages/docutils/readers/standalone.py +65 -0
  150. venv/Lib/site-packages/docutils/statemachine.py +1534 -0
  151. venv/Lib/site-packages/docutils/transforms/__init__.py +196 -0
  152. venv/Lib/site-packages/docutils/transforms/components.py +56 -0
  153. venv/Lib/site-packages/docutils/transforms/frontmatter.py +548 -0
  154. venv/Lib/site-packages/docutils/transforms/misc.py +151 -0
  155. venv/Lib/site-packages/docutils/transforms/parts.py +175 -0
  156. venv/Lib/site-packages/docutils/transforms/peps.py +315 -0
  157. venv/Lib/site-packages/docutils/transforms/references.py +990 -0
  158. venv/Lib/site-packages/docutils/transforms/universal.py +364 -0
  159. venv/Lib/site-packages/docutils/transforms/writer_aux.py +57 -0
  160. venv/Lib/site-packages/docutils/utils/__init__.py +853 -0
  161. venv/Lib/site-packages/docutils/utils/_roman_numerals.py +264 -0
  162. venv/Lib/site-packages/docutils/utils/_typing.py +39 -0
  163. venv/Lib/site-packages/docutils/utils/code_analyzer.py +140 -0
  164. venv/Lib/site-packages/docutils/utils/math/__init__.py +77 -0
  165. venv/Lib/site-packages/docutils/utils/math/latex2mathml.py +1252 -0
  166. venv/Lib/site-packages/docutils/utils/math/math2html.py +3166 -0
  167. venv/Lib/site-packages/docutils/utils/math/mathalphabet2unichar.py +892 -0
  168. venv/Lib/site-packages/docutils/utils/math/mathml_elements.py +482 -0
  169. venv/Lib/site-packages/docutils/utils/math/tex2mathml_extern.py +263 -0
  170. venv/Lib/site-packages/docutils/utils/math/tex2unichar.py +730 -0
  171. venv/Lib/site-packages/docutils/utils/math/unichar2tex.py +808 -0
  172. venv/Lib/site-packages/docutils/utils/punctuation_chars.py +123 -0
  173. venv/Lib/site-packages/docutils/utils/smartquotes.py +1006 -0
  174. venv/Lib/site-packages/docutils/utils/urischemes.py +138 -0
  175. venv/Lib/site-packages/docutils/writers/__init__.py +277 -0
  176. venv/Lib/site-packages/docutils/writers/_html_base.py +1885 -0
  177. venv/Lib/site-packages/docutils/writers/docutils_xml.py +191 -0
  178. venv/Lib/site-packages/docutils/writers/html4css1/__init__.py +964 -0
  179. venv/Lib/site-packages/docutils/writers/html5_polyglot/__init__.py +396 -0
  180. venv/Lib/site-packages/docutils/writers/latex2e/__init__.py +3419 -0
  181. venv/Lib/site-packages/docutils/writers/manpage.py +1353 -0
  182. venv/Lib/site-packages/docutils/writers/null.py +28 -0
  183. venv/Lib/site-packages/docutils/writers/odf_odt/__init__.py +3461 -0
  184. venv/Lib/site-packages/docutils/writers/odf_odt/prepstyles.py +80 -0
  185. venv/Lib/site-packages/docutils/writers/odf_odt/pygmentsformatter.py +106 -0
  186. venv/Lib/site-packages/docutils/writers/pep_html/__init__.py +102 -0
  187. venv/Lib/site-packages/docutils/writers/pseudoxml.py +41 -0
  188. venv/Lib/site-packages/docutils/writers/s5_html/__init__.py +354 -0
  189. venv/Lib/site-packages/docutils/writers/xetex/__init__.py +168 -0
  190. venv/Lib/site-packages/id/__init__.py +91 -0
  191. venv/Lib/site-packages/id/__main__.py +88 -0
  192. venv/Lib/site-packages/id/_internal/oidc/__init__.py +13 -0
  193. venv/Lib/site-packages/id/_internal/oidc/ambient.py +328 -0
  194. venv/Lib/site-packages/idna/__init__.py +45 -0
  195. venv/Lib/site-packages/idna/codec.py +122 -0
  196. venv/Lib/site-packages/idna/compat.py +15 -0
  197. venv/Lib/site-packages/idna/core.py +437 -0
  198. venv/Lib/site-packages/idna/idnadata.py +4309 -0
  199. venv/Lib/site-packages/idna/intranges.py +57 -0
  200. venv/Lib/site-packages/idna/package_data.py +1 -0
  201. venv/Lib/site-packages/idna/py.typed +0 -0
  202. venv/Lib/site-packages/idna/uts46data.py +8841 -0
  203. venv/Lib/site-packages/jaraco/classes/__init__.py +0 -0
  204. venv/Lib/site-packages/jaraco/classes/ancestry.py +76 -0
  205. venv/Lib/site-packages/jaraco/classes/meta.py +85 -0
  206. venv/Lib/site-packages/jaraco/classes/properties.py +241 -0
  207. venv/Lib/site-packages/jaraco/classes/py.typed +0 -0
  208. venv/Lib/site-packages/jaraco/context/__init__.py +356 -0
  209. venv/Lib/site-packages/jaraco/context/py.typed +0 -0
  210. venv/Lib/site-packages/jaraco/functools/__init__.py +714 -0
  211. venv/Lib/site-packages/jaraco/functools/__init__.pyi +123 -0
  212. venv/Lib/site-packages/jaraco/functools/py.typed +0 -0
  213. venv/Lib/site-packages/jnius/__init__.py +89 -0
  214. venv/Lib/site-packages/jnius/env.py +378 -0
  215. venv/Lib/site-packages/jnius/reflect.py +440 -0
  216. venv/Lib/site-packages/jnius/signatures.py +105 -0
  217. venv/Lib/site-packages/jnius_config.py +112 -0
  218. venv/Lib/site-packages/keyring/__init__.py +17 -0
  219. venv/Lib/site-packages/keyring/__main__.py +4 -0
  220. venv/Lib/site-packages/keyring/backend.py +300 -0
  221. venv/Lib/site-packages/keyring/backends/SecretService.py +120 -0
  222. venv/Lib/site-packages/keyring/backends/Windows.py +168 -0
  223. venv/Lib/site-packages/keyring/backends/__init__.py +0 -0
  224. venv/Lib/site-packages/keyring/backends/chainer.py +71 -0
  225. venv/Lib/site-packages/keyring/backends/fail.py +30 -0
  226. venv/Lib/site-packages/keyring/backends/kwallet.py +164 -0
  227. venv/Lib/site-packages/keyring/backends/libsecret.py +155 -0
  228. venv/Lib/site-packages/keyring/backends/macOS/__init__.py +85 -0
  229. venv/Lib/site-packages/keyring/backends/macOS/api.py +184 -0
  230. venv/Lib/site-packages/keyring/backends/null.py +20 -0
  231. venv/Lib/site-packages/keyring/cli.py +220 -0
  232. venv/Lib/site-packages/keyring/compat/__init__.py +7 -0
  233. venv/Lib/site-packages/keyring/compat/properties.py +169 -0
  234. venv/Lib/site-packages/keyring/compat/py312.py +9 -0
  235. venv/Lib/site-packages/keyring/compat/py38.py +9 -0
  236. venv/Lib/site-packages/keyring/completion.py +56 -0
  237. venv/Lib/site-packages/keyring/core.py +200 -0
  238. venv/Lib/site-packages/keyring/credentials.py +85 -0
  239. venv/Lib/site-packages/keyring/devpi_client.py +29 -0
  240. venv/Lib/site-packages/keyring/errors.py +67 -0
  241. venv/Lib/site-packages/keyring/http.py +39 -0
  242. venv/Lib/site-packages/keyring/py.typed +0 -0
  243. venv/Lib/site-packages/keyring/testing/__init__.py +0 -0
  244. venv/Lib/site-packages/keyring/testing/backend.py +200 -0
  245. venv/Lib/site-packages/keyring/testing/util.py +68 -0
  246. venv/Lib/site-packages/keyring/util/__init__.py +11 -0
  247. venv/Lib/site-packages/keyring/util/platform_.py +40 -0
  248. venv/Lib/site-packages/markdown_it/__init__.py +6 -0
  249. venv/Lib/site-packages/markdown_it/_compat.py +1 -0
  250. venv/Lib/site-packages/markdown_it/_punycode.py +67 -0
  251. venv/Lib/site-packages/markdown_it/cli/__init__.py +0 -0
  252. venv/Lib/site-packages/markdown_it/cli/parse.py +110 -0
  253. venv/Lib/site-packages/markdown_it/common/__init__.py +0 -0
  254. venv/Lib/site-packages/markdown_it/common/entities.py +5 -0
  255. venv/Lib/site-packages/markdown_it/common/html_blocks.py +69 -0
  256. venv/Lib/site-packages/markdown_it/common/html_re.py +39 -0
  257. venv/Lib/site-packages/markdown_it/common/normalize_url.py +81 -0
  258. venv/Lib/site-packages/markdown_it/common/utils.py +313 -0
  259. venv/Lib/site-packages/markdown_it/helpers/__init__.py +6 -0
  260. venv/Lib/site-packages/markdown_it/helpers/parse_link_destination.py +83 -0
  261. venv/Lib/site-packages/markdown_it/helpers/parse_link_label.py +44 -0
  262. venv/Lib/site-packages/markdown_it/helpers/parse_link_title.py +75 -0
  263. venv/Lib/site-packages/markdown_it/main.py +350 -0
  264. venv/Lib/site-packages/markdown_it/parser_block.py +113 -0
  265. venv/Lib/site-packages/markdown_it/parser_core.py +46 -0
  266. venv/Lib/site-packages/markdown_it/parser_inline.py +148 -0
  267. venv/Lib/site-packages/markdown_it/presets/__init__.py +28 -0
  268. venv/Lib/site-packages/markdown_it/presets/commonmark.py +75 -0
  269. venv/Lib/site-packages/markdown_it/presets/default.py +36 -0
  270. venv/Lib/site-packages/markdown_it/presets/zero.py +44 -0
  271. venv/Lib/site-packages/markdown_it/py.typed +1 -0
  272. venv/Lib/site-packages/markdown_it/renderer.py +336 -0
  273. venv/Lib/site-packages/markdown_it/ruler.py +275 -0
  274. venv/Lib/site-packages/markdown_it/rules_block/__init__.py +27 -0
  275. venv/Lib/site-packages/markdown_it/rules_block/blockquote.py +299 -0
  276. venv/Lib/site-packages/markdown_it/rules_block/code.py +36 -0
  277. venv/Lib/site-packages/markdown_it/rules_block/fence.py +101 -0
  278. venv/Lib/site-packages/markdown_it/rules_block/heading.py +69 -0
  279. venv/Lib/site-packages/markdown_it/rules_block/hr.py +56 -0
  280. venv/Lib/site-packages/markdown_it/rules_block/html_block.py +90 -0
  281. venv/Lib/site-packages/markdown_it/rules_block/lheading.py +86 -0
  282. venv/Lib/site-packages/markdown_it/rules_block/list.py +345 -0
  283. venv/Lib/site-packages/markdown_it/rules_block/paragraph.py +66 -0
  284. venv/Lib/site-packages/markdown_it/rules_block/reference.py +235 -0
  285. venv/Lib/site-packages/markdown_it/rules_block/state_block.py +261 -0
  286. venv/Lib/site-packages/markdown_it/rules_block/table.py +250 -0
  287. venv/Lib/site-packages/markdown_it/rules_core/__init__.py +19 -0
  288. venv/Lib/site-packages/markdown_it/rules_core/block.py +13 -0
  289. venv/Lib/site-packages/markdown_it/rules_core/inline.py +10 -0
  290. venv/Lib/site-packages/markdown_it/rules_core/linkify.py +149 -0
  291. venv/Lib/site-packages/markdown_it/rules_core/normalize.py +19 -0
  292. venv/Lib/site-packages/markdown_it/rules_core/replacements.py +127 -0
  293. venv/Lib/site-packages/markdown_it/rules_core/smartquotes.py +202 -0
  294. venv/Lib/site-packages/markdown_it/rules_core/state_core.py +25 -0
  295. venv/Lib/site-packages/markdown_it/rules_core/text_join.py +35 -0
  296. venv/Lib/site-packages/markdown_it/rules_inline/__init__.py +31 -0
  297. venv/Lib/site-packages/markdown_it/rules_inline/autolink.py +77 -0
  298. venv/Lib/site-packages/markdown_it/rules_inline/backticks.py +72 -0
  299. venv/Lib/site-packages/markdown_it/rules_inline/balance_pairs.py +138 -0
  300. venv/Lib/site-packages/markdown_it/rules_inline/emphasis.py +102 -0
  301. venv/Lib/site-packages/markdown_it/rules_inline/entity.py +53 -0
  302. venv/Lib/site-packages/markdown_it/rules_inline/escape.py +93 -0
  303. venv/Lib/site-packages/markdown_it/rules_inline/fragments_join.py +43 -0
  304. venv/Lib/site-packages/markdown_it/rules_inline/html_inline.py +43 -0
  305. venv/Lib/site-packages/markdown_it/rules_inline/image.py +148 -0
  306. venv/Lib/site-packages/markdown_it/rules_inline/link.py +149 -0
  307. venv/Lib/site-packages/markdown_it/rules_inline/linkify.py +62 -0
  308. venv/Lib/site-packages/markdown_it/rules_inline/newline.py +44 -0
  309. venv/Lib/site-packages/markdown_it/rules_inline/state_inline.py +165 -0
  310. venv/Lib/site-packages/markdown_it/rules_inline/strikethrough.py +127 -0
  311. venv/Lib/site-packages/markdown_it/rules_inline/text.py +62 -0
  312. venv/Lib/site-packages/markdown_it/token.py +178 -0
  313. venv/Lib/site-packages/markdown_it/tree.py +333 -0
  314. venv/Lib/site-packages/markdown_it/utils.py +186 -0
  315. venv/Lib/site-packages/mdurl/__init__.py +18 -0
  316. venv/Lib/site-packages/mdurl/_decode.py +104 -0
  317. venv/Lib/site-packages/mdurl/_encode.py +85 -0
  318. venv/Lib/site-packages/mdurl/_format.py +27 -0
  319. venv/Lib/site-packages/mdurl/_parse.py +304 -0
  320. venv/Lib/site-packages/mdurl/_url.py +14 -0
  321. venv/Lib/site-packages/mdurl/py.typed +1 -0
  322. venv/Lib/site-packages/more_itertools/__init__.py +6 -0
  323. venv/Lib/site-packages/more_itertools/__init__.pyi +2 -0
  324. venv/Lib/site-packages/more_itertools/more.py +5303 -0
  325. venv/Lib/site-packages/more_itertools/more.pyi +949 -0
  326. venv/Lib/site-packages/more_itertools/py.typed +0 -0
  327. venv/Lib/site-packages/more_itertools/recipes.py +1471 -0
  328. venv/Lib/site-packages/more_itertools/recipes.pyi +205 -0
  329. venv/Lib/site-packages/nh3/__init__.py +5 -0
  330. venv/Lib/site-packages/nh3/__init__.pyi +41 -0
  331. venv/Lib/site-packages/nh3/py.typed +0 -0
  332. venv/Lib/site-packages/packaging/__init__.py +15 -0
  333. venv/Lib/site-packages/packaging/_elffile.py +109 -0
  334. venv/Lib/site-packages/packaging/_manylinux.py +262 -0
  335. venv/Lib/site-packages/packaging/_musllinux.py +85 -0
  336. venv/Lib/site-packages/packaging/_parser.py +353 -0
  337. venv/Lib/site-packages/packaging/_structures.py +61 -0
  338. venv/Lib/site-packages/packaging/_tokenizer.py +195 -0
  339. venv/Lib/site-packages/packaging/licenses/__init__.py +145 -0
  340. venv/Lib/site-packages/packaging/licenses/_spdx.py +759 -0
  341. venv/Lib/site-packages/packaging/markers.py +362 -0
  342. venv/Lib/site-packages/packaging/metadata.py +862 -0
  343. venv/Lib/site-packages/packaging/py.typed +0 -0
  344. venv/Lib/site-packages/packaging/requirements.py +91 -0
  345. venv/Lib/site-packages/packaging/specifiers.py +1019 -0
  346. venv/Lib/site-packages/packaging/tags.py +656 -0
  347. venv/Lib/site-packages/packaging/utils.py +163 -0
  348. venv/Lib/site-packages/packaging/version.py +582 -0
  349. venv/Lib/site-packages/pip/__init__.py +13 -0
  350. venv/Lib/site-packages/pip/__main__.py +24 -0
  351. venv/Lib/site-packages/pip/__pip-runner__.py +50 -0
  352. venv/Lib/site-packages/pip/_internal/__init__.py +18 -0
  353. venv/Lib/site-packages/pip/_internal/build_env.py +417 -0
  354. venv/Lib/site-packages/pip/_internal/cache.py +291 -0
  355. venv/Lib/site-packages/pip/_internal/cli/__init__.py +3 -0
  356. venv/Lib/site-packages/pip/_internal/cli/autocompletion.py +184 -0
  357. venv/Lib/site-packages/pip/_internal/cli/base_command.py +244 -0
  358. venv/Lib/site-packages/pip/_internal/cli/cmdoptions.py +1110 -0
  359. venv/Lib/site-packages/pip/_internal/cli/command_context.py +28 -0
  360. venv/Lib/site-packages/pip/_internal/cli/index_command.py +175 -0
  361. venv/Lib/site-packages/pip/_internal/cli/main.py +80 -0
  362. venv/Lib/site-packages/pip/_internal/cli/main_parser.py +134 -0
  363. venv/Lib/site-packages/pip/_internal/cli/parser.py +298 -0
  364. venv/Lib/site-packages/pip/_internal/cli/progress_bars.py +151 -0
  365. venv/Lib/site-packages/pip/_internal/cli/req_command.py +371 -0
  366. venv/Lib/site-packages/pip/_internal/cli/spinners.py +235 -0
  367. venv/Lib/site-packages/pip/_internal/cli/status_codes.py +6 -0
  368. venv/Lib/site-packages/pip/_internal/commands/__init__.py +139 -0
  369. venv/Lib/site-packages/pip/_internal/commands/cache.py +231 -0
  370. venv/Lib/site-packages/pip/_internal/commands/check.py +66 -0
  371. venv/Lib/site-packages/pip/_internal/commands/completion.py +135 -0
  372. venv/Lib/site-packages/pip/_internal/commands/configuration.py +288 -0
  373. venv/Lib/site-packages/pip/_internal/commands/debug.py +203 -0
  374. venv/Lib/site-packages/pip/_internal/commands/download.py +142 -0
  375. venv/Lib/site-packages/pip/_internal/commands/freeze.py +107 -0
  376. venv/Lib/site-packages/pip/_internal/commands/hash.py +58 -0
  377. venv/Lib/site-packages/pip/_internal/commands/help.py +40 -0
  378. venv/Lib/site-packages/pip/_internal/commands/index.py +159 -0
  379. venv/Lib/site-packages/pip/_internal/commands/inspect.py +92 -0
  380. venv/Lib/site-packages/pip/_internal/commands/install.py +803 -0
  381. venv/Lib/site-packages/pip/_internal/commands/list.py +400 -0
  382. venv/Lib/site-packages/pip/_internal/commands/lock.py +167 -0
  383. venv/Lib/site-packages/pip/_internal/commands/search.py +178 -0
  384. venv/Lib/site-packages/pip/_internal/commands/show.py +231 -0
  385. venv/Lib/site-packages/pip/_internal/commands/uninstall.py +113 -0
  386. venv/Lib/site-packages/pip/_internal/commands/wheel.py +176 -0
  387. venv/Lib/site-packages/pip/_internal/configuration.py +396 -0
  388. venv/Lib/site-packages/pip/_internal/distributions/__init__.py +21 -0
  389. venv/Lib/site-packages/pip/_internal/distributions/base.py +55 -0
  390. venv/Lib/site-packages/pip/_internal/distributions/installed.py +33 -0
  391. venv/Lib/site-packages/pip/_internal/distributions/sdist.py +164 -0
  392. venv/Lib/site-packages/pip/_internal/distributions/wheel.py +44 -0
  393. venv/Lib/site-packages/pip/_internal/exceptions.py +898 -0
  394. venv/Lib/site-packages/pip/_internal/index/__init__.py +1 -0
  395. venv/Lib/site-packages/pip/_internal/index/collector.py +489 -0
  396. venv/Lib/site-packages/pip/_internal/index/package_finder.py +1059 -0
  397. venv/Lib/site-packages/pip/_internal/index/sources.py +287 -0
  398. venv/Lib/site-packages/pip/_internal/locations/__init__.py +441 -0
  399. venv/Lib/site-packages/pip/_internal/locations/_distutils.py +173 -0
  400. venv/Lib/site-packages/pip/_internal/locations/_sysconfig.py +215 -0
  401. venv/Lib/site-packages/pip/_internal/locations/base.py +82 -0
  402. venv/Lib/site-packages/pip/_internal/main.py +12 -0
  403. venv/Lib/site-packages/pip/_internal/metadata/__init__.py +169 -0
  404. venv/Lib/site-packages/pip/_internal/metadata/_json.py +87 -0
  405. venv/Lib/site-packages/pip/_internal/metadata/base.py +685 -0
  406. venv/Lib/site-packages/pip/_internal/metadata/importlib/__init__.py +6 -0
  407. venv/Lib/site-packages/pip/_internal/metadata/importlib/_compat.py +87 -0
  408. venv/Lib/site-packages/pip/_internal/metadata/importlib/_dists.py +229 -0
  409. venv/Lib/site-packages/pip/_internal/metadata/importlib/_envs.py +143 -0
  410. venv/Lib/site-packages/pip/_internal/metadata/pkg_resources.py +298 -0
  411. venv/Lib/site-packages/pip/_internal/models/__init__.py +1 -0
  412. venv/Lib/site-packages/pip/_internal/models/candidate.py +25 -0
  413. venv/Lib/site-packages/pip/_internal/models/direct_url.py +227 -0
  414. venv/Lib/site-packages/pip/_internal/models/format_control.py +78 -0
  415. venv/Lib/site-packages/pip/_internal/models/index.py +28 -0
  416. venv/Lib/site-packages/pip/_internal/models/installation_report.py +57 -0
  417. venv/Lib/site-packages/pip/_internal/models/link.py +613 -0
  418. venv/Lib/site-packages/pip/_internal/models/pylock.py +188 -0
  419. venv/Lib/site-packages/pip/_internal/models/scheme.py +25 -0
  420. venv/Lib/site-packages/pip/_internal/models/search_scope.py +126 -0
  421. venv/Lib/site-packages/pip/_internal/models/selection_prefs.py +53 -0
  422. venv/Lib/site-packages/pip/_internal/models/target_python.py +122 -0
  423. venv/Lib/site-packages/pip/_internal/models/wheel.py +80 -0
  424. venv/Lib/site-packages/pip/_internal/network/__init__.py +1 -0
  425. venv/Lib/site-packages/pip/_internal/network/auth.py +564 -0
  426. venv/Lib/site-packages/pip/_internal/network/cache.py +128 -0
  427. venv/Lib/site-packages/pip/_internal/network/download.py +342 -0
  428. venv/Lib/site-packages/pip/_internal/network/lazy_wheel.py +215 -0
  429. venv/Lib/site-packages/pip/_internal/network/session.py +528 -0
  430. venv/Lib/site-packages/pip/_internal/network/utils.py +98 -0
  431. venv/Lib/site-packages/pip/_internal/network/xmlrpc.py +61 -0
  432. venv/Lib/site-packages/pip/_internal/operations/__init__.py +0 -0
  433. venv/Lib/site-packages/pip/_internal/operations/build/__init__.py +0 -0
  434. venv/Lib/site-packages/pip/_internal/operations/build/build_tracker.py +140 -0
  435. venv/Lib/site-packages/pip/_internal/operations/build/metadata.py +38 -0
  436. venv/Lib/site-packages/pip/_internal/operations/build/metadata_editable.py +41 -0
  437. venv/Lib/site-packages/pip/_internal/operations/build/wheel.py +38 -0
  438. venv/Lib/site-packages/pip/_internal/operations/build/wheel_editable.py +47 -0
  439. venv/Lib/site-packages/pip/_internal/operations/check.py +175 -0
  440. venv/Lib/site-packages/pip/_internal/operations/freeze.py +259 -0
  441. venv/Lib/site-packages/pip/_internal/operations/install/__init__.py +1 -0
  442. venv/Lib/site-packages/pip/_internal/operations/install/wheel.py +746 -0
  443. venv/Lib/site-packages/pip/_internal/operations/prepare.py +748 -0
  444. venv/Lib/site-packages/pip/_internal/pyproject.py +123 -0
  445. venv/Lib/site-packages/pip/_internal/req/__init__.py +103 -0
  446. venv/Lib/site-packages/pip/_internal/req/constructors.py +566 -0
  447. venv/Lib/site-packages/pip/_internal/req/req_dependency_group.py +75 -0
  448. venv/Lib/site-packages/pip/_internal/req/req_file.py +619 -0
  449. venv/Lib/site-packages/pip/_internal/req/req_install.py +828 -0
  450. venv/Lib/site-packages/pip/_internal/req/req_set.py +81 -0
  451. venv/Lib/site-packages/pip/_internal/req/req_uninstall.py +639 -0
  452. venv/Lib/site-packages/pip/_internal/resolution/__init__.py +0 -0
  453. venv/Lib/site-packages/pip/_internal/resolution/base.py +20 -0
  454. venv/Lib/site-packages/pip/_internal/resolution/legacy/__init__.py +0 -0
  455. venv/Lib/site-packages/pip/_internal/resolution/legacy/resolver.py +598 -0
  456. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/__init__.py +0 -0
  457. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/base.py +142 -0
  458. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/candidates.py +591 -0
  459. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/factory.py +845 -0
  460. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py +166 -0
  461. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/provider.py +285 -0
  462. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/reporter.py +98 -0
  463. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/requirements.py +247 -0
  464. venv/Lib/site-packages/pip/_internal/resolution/resolvelib/resolver.py +332 -0
  465. venv/Lib/site-packages/pip/_internal/self_outdated_check.py +262 -0
  466. venv/Lib/site-packages/pip/_internal/utils/__init__.py +0 -0
  467. venv/Lib/site-packages/pip/_internal/utils/_jaraco_text.py +109 -0
  468. venv/Lib/site-packages/pip/_internal/utils/_log.py +38 -0
  469. venv/Lib/site-packages/pip/_internal/utils/appdirs.py +52 -0
  470. venv/Lib/site-packages/pip/_internal/utils/compat.py +85 -0
  471. venv/Lib/site-packages/pip/_internal/utils/compatibility_tags.py +201 -0
  472. venv/Lib/site-packages/pip/_internal/utils/datetime.py +10 -0
  473. venv/Lib/site-packages/pip/_internal/utils/deprecation.py +126 -0
  474. venv/Lib/site-packages/pip/_internal/utils/direct_url_helpers.py +87 -0
  475. venv/Lib/site-packages/pip/_internal/utils/egg_link.py +81 -0
  476. venv/Lib/site-packages/pip/_internal/utils/entrypoints.py +88 -0
  477. venv/Lib/site-packages/pip/_internal/utils/filesystem.py +164 -0
  478. venv/Lib/site-packages/pip/_internal/utils/filetypes.py +24 -0
  479. venv/Lib/site-packages/pip/_internal/utils/glibc.py +102 -0
  480. venv/Lib/site-packages/pip/_internal/utils/hashes.py +150 -0
  481. venv/Lib/site-packages/pip/_internal/utils/logging.py +364 -0
  482. venv/Lib/site-packages/pip/_internal/utils/misc.py +765 -0
  483. venv/Lib/site-packages/pip/_internal/utils/packaging.py +44 -0
  484. venv/Lib/site-packages/pip/_internal/utils/retry.py +45 -0
  485. venv/Lib/site-packages/pip/_internal/utils/subprocess.py +248 -0
  486. venv/Lib/site-packages/pip/_internal/utils/temp_dir.py +294 -0
  487. venv/Lib/site-packages/pip/_internal/utils/unpacking.py +362 -0
  488. venv/Lib/site-packages/pip/_internal/utils/urls.py +55 -0
  489. venv/Lib/site-packages/pip/_internal/utils/virtualenv.py +105 -0
  490. venv/Lib/site-packages/pip/_internal/utils/wheel.py +132 -0
  491. venv/Lib/site-packages/pip/_internal/vcs/__init__.py +15 -0
  492. venv/Lib/site-packages/pip/_internal/vcs/bazaar.py +130 -0
  493. venv/Lib/site-packages/pip/_internal/vcs/git.py +571 -0
  494. venv/Lib/site-packages/pip/_internal/vcs/mercurial.py +186 -0
  495. venv/Lib/site-packages/pip/_internal/vcs/subversion.py +335 -0
  496. venv/Lib/site-packages/pip/_internal/vcs/versioncontrol.py +693 -0
  497. venv/Lib/site-packages/pip/_internal/wheel_builder.py +261 -0
  498. venv/Lib/site-packages/pip/_vendor/__init__.py +117 -0
  499. venv/Lib/site-packages/pip/_vendor/cachecontrol/__init__.py +29 -0
  500. venv/Lib/site-packages/pip/_vendor/cachecontrol/_cmd.py +70 -0
  501. venv/Lib/site-packages/pip/_vendor/cachecontrol/adapter.py +168 -0
  502. venv/Lib/site-packages/pip/_vendor/cachecontrol/cache.py +75 -0
  503. venv/Lib/site-packages/pip/_vendor/cachecontrol/caches/__init__.py +8 -0
  504. venv/Lib/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py +145 -0
  505. venv/Lib/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py +48 -0
  506. venv/Lib/site-packages/pip/_vendor/cachecontrol/controller.py +511 -0
  507. venv/Lib/site-packages/pip/_vendor/cachecontrol/filewrapper.py +119 -0
  508. venv/Lib/site-packages/pip/_vendor/cachecontrol/heuristics.py +157 -0
  509. venv/Lib/site-packages/pip/_vendor/cachecontrol/py.typed +0 -0
  510. venv/Lib/site-packages/pip/_vendor/cachecontrol/serialize.py +146 -0
  511. venv/Lib/site-packages/pip/_vendor/cachecontrol/wrapper.py +43 -0
  512. venv/Lib/site-packages/pip/_vendor/certifi/__init__.py +4 -0
  513. venv/Lib/site-packages/pip/_vendor/certifi/__main__.py +12 -0
  514. venv/Lib/site-packages/pip/_vendor/certifi/core.py +83 -0
  515. venv/Lib/site-packages/pip/_vendor/certifi/py.typed +0 -0
  516. venv/Lib/site-packages/pip/_vendor/dependency_groups/__init__.py +13 -0
  517. venv/Lib/site-packages/pip/_vendor/dependency_groups/__main__.py +65 -0
  518. venv/Lib/site-packages/pip/_vendor/dependency_groups/_implementation.py +209 -0
  519. venv/Lib/site-packages/pip/_vendor/dependency_groups/_lint_dependency_groups.py +59 -0
  520. venv/Lib/site-packages/pip/_vendor/dependency_groups/_pip_wrapper.py +62 -0
  521. venv/Lib/site-packages/pip/_vendor/dependency_groups/_toml_compat.py +9 -0
  522. venv/Lib/site-packages/pip/_vendor/dependency_groups/py.typed +0 -0
  523. venv/Lib/site-packages/pip/_vendor/distlib/__init__.py +33 -0
  524. venv/Lib/site-packages/pip/_vendor/distlib/compat.py +1137 -0
  525. venv/Lib/site-packages/pip/_vendor/distlib/resources.py +358 -0
  526. venv/Lib/site-packages/pip/_vendor/distlib/scripts.py +447 -0
  527. venv/Lib/site-packages/pip/_vendor/distlib/util.py +1984 -0
  528. venv/Lib/site-packages/pip/_vendor/distro/__init__.py +54 -0
  529. venv/Lib/site-packages/pip/_vendor/distro/__main__.py +4 -0
  530. venv/Lib/site-packages/pip/_vendor/distro/distro.py +1403 -0
  531. venv/Lib/site-packages/pip/_vendor/distro/py.typed +0 -0
  532. venv/Lib/site-packages/pip/_vendor/idna/__init__.py +45 -0
  533. venv/Lib/site-packages/pip/_vendor/idna/codec.py +122 -0
  534. venv/Lib/site-packages/pip/_vendor/idna/compat.py +15 -0
  535. venv/Lib/site-packages/pip/_vendor/idna/core.py +437 -0
  536. venv/Lib/site-packages/pip/_vendor/idna/idnadata.py +4243 -0
  537. venv/Lib/site-packages/pip/_vendor/idna/intranges.py +57 -0
  538. venv/Lib/site-packages/pip/_vendor/idna/package_data.py +1 -0
  539. venv/Lib/site-packages/pip/_vendor/idna/py.typed +0 -0
  540. venv/Lib/site-packages/pip/_vendor/idna/uts46data.py +8681 -0
  541. venv/Lib/site-packages/pip/_vendor/msgpack/__init__.py +55 -0
  542. venv/Lib/site-packages/pip/_vendor/msgpack/exceptions.py +48 -0
  543. venv/Lib/site-packages/pip/_vendor/msgpack/ext.py +170 -0
  544. venv/Lib/site-packages/pip/_vendor/msgpack/fallback.py +929 -0
  545. venv/Lib/site-packages/pip/_vendor/packaging/__init__.py +15 -0
  546. venv/Lib/site-packages/pip/_vendor/packaging/_elffile.py +109 -0
  547. venv/Lib/site-packages/pip/_vendor/packaging/_manylinux.py +262 -0
  548. venv/Lib/site-packages/pip/_vendor/packaging/_musllinux.py +85 -0
  549. venv/Lib/site-packages/pip/_vendor/packaging/_parser.py +353 -0
  550. venv/Lib/site-packages/pip/_vendor/packaging/_structures.py +61 -0
  551. venv/Lib/site-packages/pip/_vendor/packaging/_tokenizer.py +195 -0
  552. venv/Lib/site-packages/pip/_vendor/packaging/licenses/__init__.py +145 -0
  553. venv/Lib/site-packages/pip/_vendor/packaging/licenses/_spdx.py +759 -0
  554. venv/Lib/site-packages/pip/_vendor/packaging/markers.py +362 -0
  555. venv/Lib/site-packages/pip/_vendor/packaging/metadata.py +862 -0
  556. venv/Lib/site-packages/pip/_vendor/packaging/py.typed +0 -0
  557. venv/Lib/site-packages/pip/_vendor/packaging/requirements.py +91 -0
  558. venv/Lib/site-packages/pip/_vendor/packaging/specifiers.py +1019 -0
  559. venv/Lib/site-packages/pip/_vendor/packaging/tags.py +656 -0
  560. venv/Lib/site-packages/pip/_vendor/packaging/utils.py +163 -0
  561. venv/Lib/site-packages/pip/_vendor/packaging/version.py +582 -0
  562. venv/Lib/site-packages/pip/_vendor/pkg_resources/__init__.py +3676 -0
  563. venv/Lib/site-packages/pip/_vendor/platformdirs/__init__.py +631 -0
  564. venv/Lib/site-packages/pip/_vendor/platformdirs/__main__.py +55 -0
  565. venv/Lib/site-packages/pip/_vendor/platformdirs/android.py +249 -0
  566. venv/Lib/site-packages/pip/_vendor/platformdirs/api.py +299 -0
  567. venv/Lib/site-packages/pip/_vendor/platformdirs/macos.py +146 -0
  568. venv/Lib/site-packages/pip/_vendor/platformdirs/py.typed +0 -0
  569. venv/Lib/site-packages/pip/_vendor/platformdirs/unix.py +272 -0
  570. venv/Lib/site-packages/pip/_vendor/platformdirs/version.py +34 -0
  571. venv/Lib/site-packages/pip/_vendor/platformdirs/windows.py +272 -0
  572. venv/Lib/site-packages/pip/_vendor/pygments/__init__.py +82 -0
  573. venv/Lib/site-packages/pip/_vendor/pygments/__main__.py +17 -0
  574. venv/Lib/site-packages/pip/_vendor/pygments/console.py +70 -0
  575. venv/Lib/site-packages/pip/_vendor/pygments/filter.py +70 -0
  576. venv/Lib/site-packages/pip/_vendor/pygments/filters/__init__.py +940 -0
  577. venv/Lib/site-packages/pip/_vendor/pygments/formatter.py +129 -0
  578. venv/Lib/site-packages/pip/_vendor/pygments/formatters/__init__.py +157 -0
  579. venv/Lib/site-packages/pip/_vendor/pygments/formatters/_mapping.py +23 -0
  580. venv/Lib/site-packages/pip/_vendor/pygments/lexer.py +963 -0
  581. venv/Lib/site-packages/pip/_vendor/pygments/lexers/__init__.py +362 -0
  582. venv/Lib/site-packages/pip/_vendor/pygments/lexers/_mapping.py +602 -0
  583. venv/Lib/site-packages/pip/_vendor/pygments/lexers/python.py +1201 -0
  584. venv/Lib/site-packages/pip/_vendor/pygments/modeline.py +43 -0
  585. venv/Lib/site-packages/pip/_vendor/pygments/plugin.py +72 -0
  586. venv/Lib/site-packages/pip/_vendor/pygments/regexopt.py +91 -0
  587. venv/Lib/site-packages/pip/_vendor/pygments/scanner.py +104 -0
  588. venv/Lib/site-packages/pip/_vendor/pygments/sphinxext.py +247 -0
  589. venv/Lib/site-packages/pip/_vendor/pygments/style.py +203 -0
  590. venv/Lib/site-packages/pip/_vendor/pygments/styles/__init__.py +61 -0
  591. venv/Lib/site-packages/pip/_vendor/pygments/styles/_mapping.py +54 -0
  592. venv/Lib/site-packages/pip/_vendor/pygments/token.py +214 -0
  593. venv/Lib/site-packages/pip/_vendor/pygments/unistring.py +153 -0
  594. venv/Lib/site-packages/pip/_vendor/pygments/util.py +324 -0
  595. venv/Lib/site-packages/pip/_vendor/pyproject_hooks/__init__.py +31 -0
  596. venv/Lib/site-packages/pip/_vendor/pyproject_hooks/_impl.py +410 -0
  597. venv/Lib/site-packages/pip/_vendor/pyproject_hooks/_in_process/__init__.py +21 -0
  598. venv/Lib/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py +389 -0
  599. venv/Lib/site-packages/pip/_vendor/pyproject_hooks/py.typed +0 -0
  600. venv/Lib/site-packages/pip/_vendor/requests/__init__.py +179 -0
  601. venv/Lib/site-packages/pip/_vendor/requests/__version__.py +14 -0
  602. venv/Lib/site-packages/pip/_vendor/requests/_internal_utils.py +50 -0
  603. venv/Lib/site-packages/pip/_vendor/requests/adapters.py +696 -0
  604. venv/Lib/site-packages/pip/_vendor/requests/api.py +157 -0
  605. venv/Lib/site-packages/pip/_vendor/requests/auth.py +314 -0
  606. venv/Lib/site-packages/pip/_vendor/requests/certs.py +17 -0
  607. venv/Lib/site-packages/pip/_vendor/requests/compat.py +90 -0
  608. venv/Lib/site-packages/pip/_vendor/requests/cookies.py +561 -0
  609. venv/Lib/site-packages/pip/_vendor/requests/exceptions.py +151 -0
  610. venv/Lib/site-packages/pip/_vendor/requests/help.py +127 -0
  611. venv/Lib/site-packages/pip/_vendor/requests/hooks.py +33 -0
  612. venv/Lib/site-packages/pip/_vendor/requests/models.py +1039 -0
  613. venv/Lib/site-packages/pip/_vendor/requests/packages.py +25 -0
  614. venv/Lib/site-packages/pip/_vendor/requests/sessions.py +831 -0
  615. venv/Lib/site-packages/pip/_vendor/requests/status_codes.py +128 -0
  616. venv/Lib/site-packages/pip/_vendor/requests/structures.py +99 -0
  617. venv/Lib/site-packages/pip/_vendor/requests/utils.py +1086 -0
  618. venv/Lib/site-packages/pip/_vendor/resolvelib/__init__.py +27 -0
  619. venv/Lib/site-packages/pip/_vendor/resolvelib/providers.py +196 -0
  620. venv/Lib/site-packages/pip/_vendor/resolvelib/py.typed +0 -0
  621. venv/Lib/site-packages/pip/_vendor/resolvelib/reporters.py +55 -0
  622. venv/Lib/site-packages/pip/_vendor/resolvelib/resolvers/__init__.py +27 -0
  623. venv/Lib/site-packages/pip/_vendor/resolvelib/resolvers/abstract.py +47 -0
  624. venv/Lib/site-packages/pip/_vendor/resolvelib/resolvers/criterion.py +48 -0
  625. venv/Lib/site-packages/pip/_vendor/resolvelib/resolvers/exceptions.py +57 -0
  626. venv/Lib/site-packages/pip/_vendor/resolvelib/resolvers/resolution.py +627 -0
  627. venv/Lib/site-packages/pip/_vendor/resolvelib/structs.py +209 -0
  628. venv/Lib/site-packages/pip/_vendor/rich/__init__.py +177 -0
  629. venv/Lib/site-packages/pip/_vendor/rich/__main__.py +245 -0
  630. venv/Lib/site-packages/pip/_vendor/rich/_cell_widths.py +454 -0
  631. venv/Lib/site-packages/pip/_vendor/rich/_emoji_codes.py +3610 -0
  632. venv/Lib/site-packages/pip/_vendor/rich/_emoji_replace.py +32 -0
  633. venv/Lib/site-packages/pip/_vendor/rich/_export_format.py +76 -0
  634. venv/Lib/site-packages/pip/_vendor/rich/_extension.py +10 -0
  635. venv/Lib/site-packages/pip/_vendor/rich/_fileno.py +24 -0
  636. venv/Lib/site-packages/pip/_vendor/rich/_inspect.py +268 -0
  637. venv/Lib/site-packages/pip/_vendor/rich/_log_render.py +94 -0
  638. venv/Lib/site-packages/pip/_vendor/rich/_loop.py +43 -0
  639. venv/Lib/site-packages/pip/_vendor/rich/_null_file.py +69 -0
  640. venv/Lib/site-packages/pip/_vendor/rich/_palettes.py +309 -0
  641. venv/Lib/site-packages/pip/_vendor/rich/_pick.py +17 -0
  642. venv/Lib/site-packages/pip/_vendor/rich/_ratio.py +153 -0
  643. venv/Lib/site-packages/pip/_vendor/rich/_spinners.py +482 -0
  644. venv/Lib/site-packages/pip/_vendor/rich/_stack.py +16 -0
  645. venv/Lib/site-packages/pip/_vendor/rich/_timer.py +19 -0
  646. venv/Lib/site-packages/pip/_vendor/rich/_win32_console.py +661 -0
  647. venv/Lib/site-packages/pip/_vendor/rich/_windows.py +71 -0
  648. venv/Lib/site-packages/pip/_vendor/rich/_windows_renderer.py +56 -0
  649. venv/Lib/site-packages/pip/_vendor/rich/_wrap.py +93 -0
  650. venv/Lib/site-packages/pip/_vendor/rich/abc.py +33 -0
  651. venv/Lib/site-packages/pip/_vendor/rich/align.py +306 -0
  652. venv/Lib/site-packages/pip/_vendor/rich/ansi.py +241 -0
  653. venv/Lib/site-packages/pip/_vendor/rich/bar.py +93 -0
  654. venv/Lib/site-packages/pip/_vendor/rich/box.py +474 -0
  655. venv/Lib/site-packages/pip/_vendor/rich/cells.py +174 -0
  656. venv/Lib/site-packages/pip/_vendor/rich/color.py +621 -0
  657. venv/Lib/site-packages/pip/_vendor/rich/color_triplet.py +38 -0
  658. venv/Lib/site-packages/pip/_vendor/rich/columns.py +187 -0
  659. venv/Lib/site-packages/pip/_vendor/rich/console.py +2680 -0
  660. venv/Lib/site-packages/pip/_vendor/rich/constrain.py +37 -0
  661. venv/Lib/site-packages/pip/_vendor/rich/containers.py +167 -0
  662. venv/Lib/site-packages/pip/_vendor/rich/control.py +219 -0
  663. venv/Lib/site-packages/pip/_vendor/rich/default_styles.py +193 -0
  664. venv/Lib/site-packages/pip/_vendor/rich/diagnose.py +39 -0
  665. venv/Lib/site-packages/pip/_vendor/rich/emoji.py +91 -0
  666. venv/Lib/site-packages/pip/_vendor/rich/errors.py +34 -0
  667. venv/Lib/site-packages/pip/_vendor/rich/file_proxy.py +57 -0
  668. venv/Lib/site-packages/pip/_vendor/rich/filesize.py +88 -0
  669. venv/Lib/site-packages/pip/_vendor/rich/highlighter.py +232 -0
  670. venv/Lib/site-packages/pip/_vendor/rich/json.py +139 -0
  671. venv/Lib/site-packages/pip/_vendor/rich/jupyter.py +101 -0
  672. venv/Lib/site-packages/pip/_vendor/rich/layout.py +442 -0
  673. venv/Lib/site-packages/pip/_vendor/rich/live.py +400 -0
  674. venv/Lib/site-packages/pip/_vendor/rich/live_render.py +106 -0
  675. venv/Lib/site-packages/pip/_vendor/rich/logging.py +297 -0
  676. venv/Lib/site-packages/pip/_vendor/rich/markup.py +251 -0
  677. venv/Lib/site-packages/pip/_vendor/rich/measure.py +151 -0
  678. venv/Lib/site-packages/pip/_vendor/rich/padding.py +141 -0
  679. venv/Lib/site-packages/pip/_vendor/rich/pager.py +34 -0
  680. venv/Lib/site-packages/pip/_vendor/rich/palette.py +100 -0
  681. venv/Lib/site-packages/pip/_vendor/rich/panel.py +317 -0
  682. venv/Lib/site-packages/pip/_vendor/rich/pretty.py +1016 -0
  683. venv/Lib/site-packages/pip/_vendor/rich/progress.py +1715 -0
  684. venv/Lib/site-packages/pip/_vendor/rich/progress_bar.py +223 -0
  685. venv/Lib/site-packages/pip/_vendor/rich/prompt.py +400 -0
  686. venv/Lib/site-packages/pip/_vendor/rich/protocol.py +42 -0
  687. venv/Lib/site-packages/pip/_vendor/rich/py.typed +0 -0
  688. venv/Lib/site-packages/pip/_vendor/rich/region.py +10 -0
  689. venv/Lib/site-packages/pip/_vendor/rich/repr.py +149 -0
  690. venv/Lib/site-packages/pip/_vendor/rich/rule.py +130 -0
  691. venv/Lib/site-packages/pip/_vendor/rich/scope.py +86 -0
  692. venv/Lib/site-packages/pip/_vendor/rich/screen.py +54 -0
  693. venv/Lib/site-packages/pip/_vendor/rich/segment.py +752 -0
  694. venv/Lib/site-packages/pip/_vendor/rich/spinner.py +132 -0
  695. venv/Lib/site-packages/pip/_vendor/rich/status.py +131 -0
  696. venv/Lib/site-packages/pip/_vendor/rich/style.py +792 -0
  697. venv/Lib/site-packages/pip/_vendor/rich/styled.py +42 -0
  698. venv/Lib/site-packages/pip/_vendor/rich/syntax.py +985 -0
  699. venv/Lib/site-packages/pip/_vendor/rich/table.py +1006 -0
  700. venv/Lib/site-packages/pip/_vendor/rich/terminal_theme.py +153 -0
  701. venv/Lib/site-packages/pip/_vendor/rich/text.py +1361 -0
  702. venv/Lib/site-packages/pip/_vendor/rich/theme.py +115 -0
  703. venv/Lib/site-packages/pip/_vendor/rich/themes.py +5 -0
  704. venv/Lib/site-packages/pip/_vendor/rich/traceback.py +899 -0
  705. venv/Lib/site-packages/pip/_vendor/rich/tree.py +257 -0
  706. venv/Lib/site-packages/pip/_vendor/tomli/__init__.py +8 -0
  707. venv/Lib/site-packages/pip/_vendor/tomli/_parser.py +777 -0
  708. venv/Lib/site-packages/pip/_vendor/tomli/_re.py +115 -0
  709. venv/Lib/site-packages/pip/_vendor/tomli/_types.py +10 -0
  710. venv/Lib/site-packages/pip/_vendor/tomli/py.typed +1 -0
  711. venv/Lib/site-packages/pip/_vendor/tomli_w/__init__.py +4 -0
  712. venv/Lib/site-packages/pip/_vendor/tomli_w/_writer.py +229 -0
  713. venv/Lib/site-packages/pip/_vendor/tomli_w/py.typed +1 -0
  714. venv/Lib/site-packages/pip/_vendor/truststore/__init__.py +36 -0
  715. venv/Lib/site-packages/pip/_vendor/truststore/_api.py +341 -0
  716. venv/Lib/site-packages/pip/_vendor/truststore/_macos.py +571 -0
  717. venv/Lib/site-packages/pip/_vendor/truststore/_openssl.py +68 -0
  718. venv/Lib/site-packages/pip/_vendor/truststore/_ssl_constants.py +31 -0
  719. venv/Lib/site-packages/pip/_vendor/truststore/_windows.py +567 -0
  720. venv/Lib/site-packages/pip/_vendor/truststore/py.typed +0 -0
  721. venv/Lib/site-packages/pip/_vendor/urllib3/__init__.py +102 -0
  722. venv/Lib/site-packages/pip/_vendor/urllib3/_collections.py +355 -0
  723. venv/Lib/site-packages/pip/_vendor/urllib3/_version.py +2 -0
  724. venv/Lib/site-packages/pip/_vendor/urllib3/connection.py +572 -0
  725. venv/Lib/site-packages/pip/_vendor/urllib3/connectionpool.py +1140 -0
  726. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/__init__.py +0 -0
  727. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_appengine_environ.py +36 -0
  728. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py +0 -0
  729. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/bindings.py +519 -0
  730. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/low_level.py +397 -0
  731. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/appengine.py +314 -0
  732. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/ntlmpool.py +130 -0
  733. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py +518 -0
  734. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/securetransport.py +920 -0
  735. venv/Lib/site-packages/pip/_vendor/urllib3/contrib/socks.py +216 -0
  736. venv/Lib/site-packages/pip/_vendor/urllib3/exceptions.py +323 -0
  737. venv/Lib/site-packages/pip/_vendor/urllib3/fields.py +274 -0
  738. venv/Lib/site-packages/pip/_vendor/urllib3/filepost.py +98 -0
  739. venv/Lib/site-packages/pip/_vendor/urllib3/packages/__init__.py +0 -0
  740. venv/Lib/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py +0 -0
  741. venv/Lib/site-packages/pip/_vendor/urllib3/packages/backports/makefile.py +51 -0
  742. venv/Lib/site-packages/pip/_vendor/urllib3/packages/backports/weakref_finalize.py +155 -0
  743. venv/Lib/site-packages/pip/_vendor/urllib3/packages/six.py +1076 -0
  744. venv/Lib/site-packages/pip/_vendor/urllib3/poolmanager.py +540 -0
  745. venv/Lib/site-packages/pip/_vendor/urllib3/request.py +191 -0
  746. venv/Lib/site-packages/pip/_vendor/urllib3/response.py +879 -0
  747. venv/Lib/site-packages/pip/_vendor/urllib3/util/__init__.py +49 -0
  748. venv/Lib/site-packages/pip/_vendor/urllib3/util/connection.py +149 -0
  749. venv/Lib/site-packages/pip/_vendor/urllib3/util/proxy.py +57 -0
  750. venv/Lib/site-packages/pip/_vendor/urllib3/util/queue.py +22 -0
  751. venv/Lib/site-packages/pip/_vendor/urllib3/util/request.py +137 -0
  752. venv/Lib/site-packages/pip/_vendor/urllib3/util/response.py +107 -0
  753. venv/Lib/site-packages/pip/_vendor/urllib3/util/retry.py +622 -0
  754. venv/Lib/site-packages/pip/_vendor/urllib3/util/ssl_.py +504 -0
  755. venv/Lib/site-packages/pip/_vendor/urllib3/util/ssl_match_hostname.py +159 -0
  756. venv/Lib/site-packages/pip/_vendor/urllib3/util/ssltransport.py +221 -0
  757. venv/Lib/site-packages/pip/_vendor/urllib3/util/timeout.py +271 -0
  758. venv/Lib/site-packages/pip/_vendor/urllib3/util/url.py +435 -0
  759. venv/Lib/site-packages/pip/_vendor/urllib3/util/wait.py +152 -0
  760. venv/Lib/site-packages/pip/py.typed +4 -0
  761. venv/Lib/site-packages/pkg_resources/__init__.py +3713 -0
  762. venv/Lib/site-packages/pkg_resources/py.typed +0 -0
  763. venv/Lib/site-packages/pkg_resources/tests/__init__.py +0 -0
  764. venv/Lib/site-packages/pkg_resources/tests/data/my-test-package-source/setup.py +7 -0
  765. venv/Lib/site-packages/pkg_resources/tests/test_find_distributions.py +56 -0
  766. venv/Lib/site-packages/pkg_resources/tests/test_integration_zope_interface.py +54 -0
  767. venv/Lib/site-packages/pkg_resources/tests/test_markers.py +8 -0
  768. venv/Lib/site-packages/pkg_resources/tests/test_pkg_resources.py +485 -0
  769. venv/Lib/site-packages/pkg_resources/tests/test_resources.py +869 -0
  770. venv/Lib/site-packages/pkg_resources/tests/test_working_set.py +505 -0
  771. venv/Lib/site-packages/pygments/__init__.py +82 -0
  772. venv/Lib/site-packages/pygments/__main__.py +17 -0
  773. venv/Lib/site-packages/pygments/cmdline.py +668 -0
  774. venv/Lib/site-packages/pygments/console.py +70 -0
  775. venv/Lib/site-packages/pygments/filter.py +70 -0
  776. venv/Lib/site-packages/pygments/filters/__init__.py +940 -0
  777. venv/Lib/site-packages/pygments/formatter.py +129 -0
  778. venv/Lib/site-packages/pygments/formatters/__init__.py +157 -0
  779. venv/Lib/site-packages/pygments/formatters/_mapping.py +23 -0
  780. venv/Lib/site-packages/pygments/formatters/bbcode.py +108 -0
  781. venv/Lib/site-packages/pygments/formatters/groff.py +170 -0
  782. venv/Lib/site-packages/pygments/formatters/html.py +995 -0
  783. venv/Lib/site-packages/pygments/formatters/img.py +686 -0
  784. venv/Lib/site-packages/pygments/formatters/irc.py +154 -0
  785. venv/Lib/site-packages/pygments/formatters/latex.py +518 -0
  786. venv/Lib/site-packages/pygments/formatters/other.py +160 -0
  787. venv/Lib/site-packages/pygments/formatters/pangomarkup.py +83 -0
  788. venv/Lib/site-packages/pygments/formatters/rtf.py +349 -0
  789. venv/Lib/site-packages/pygments/formatters/svg.py +185 -0
  790. venv/Lib/site-packages/pygments/formatters/terminal.py +127 -0
  791. venv/Lib/site-packages/pygments/formatters/terminal256.py +338 -0
  792. venv/Lib/site-packages/pygments/lexer.py +961 -0
  793. venv/Lib/site-packages/pygments/lexers/__init__.py +362 -0
  794. venv/Lib/site-packages/pygments/lexers/_ada_builtins.py +103 -0
  795. venv/Lib/site-packages/pygments/lexers/_asy_builtins.py +1644 -0
  796. venv/Lib/site-packages/pygments/lexers/_cl_builtins.py +231 -0
  797. venv/Lib/site-packages/pygments/lexers/_cocoa_builtins.py +75 -0
  798. venv/Lib/site-packages/pygments/lexers/_csound_builtins.py +1780 -0
  799. venv/Lib/site-packages/pygments/lexers/_css_builtins.py +558 -0
  800. venv/Lib/site-packages/pygments/lexers/_googlesql_builtins.py +918 -0
  801. venv/Lib/site-packages/pygments/lexers/_julia_builtins.py +411 -0
  802. venv/Lib/site-packages/pygments/lexers/_lasso_builtins.py +5326 -0
  803. venv/Lib/site-packages/pygments/lexers/_lilypond_builtins.py +4932 -0
  804. venv/Lib/site-packages/pygments/lexers/_lua_builtins.py +285 -0
  805. venv/Lib/site-packages/pygments/lexers/_luau_builtins.py +62 -0
  806. venv/Lib/site-packages/pygments/lexers/_mapping.py +602 -0
  807. venv/Lib/site-packages/pygments/lexers/_mql_builtins.py +1171 -0
  808. venv/Lib/site-packages/pygments/lexers/_mysql_builtins.py +1335 -0
  809. venv/Lib/site-packages/pygments/lexers/_openedge_builtins.py +2600 -0
  810. venv/Lib/site-packages/pygments/lexers/_php_builtins.py +3325 -0
  811. venv/Lib/site-packages/pygments/lexers/_postgres_builtins.py +739 -0
  812. venv/Lib/site-packages/pygments/lexers/_qlik_builtins.py +666 -0
  813. venv/Lib/site-packages/pygments/lexers/_scheme_builtins.py +1609 -0
  814. venv/Lib/site-packages/pygments/lexers/_scilab_builtins.py +3093 -0
  815. venv/Lib/site-packages/pygments/lexers/_sourcemod_builtins.py +1151 -0
  816. venv/Lib/site-packages/pygments/lexers/_sql_builtins.py +106 -0
  817. venv/Lib/site-packages/pygments/lexers/_stan_builtins.py +648 -0
  818. venv/Lib/site-packages/pygments/lexers/_stata_builtins.py +457 -0
  819. venv/Lib/site-packages/pygments/lexers/_tsql_builtins.py +1003 -0
  820. venv/Lib/site-packages/pygments/lexers/_usd_builtins.py +112 -0
  821. venv/Lib/site-packages/pygments/lexers/_vbscript_builtins.py +279 -0
  822. venv/Lib/site-packages/pygments/lexers/_vim_builtins.py +1938 -0
  823. venv/Lib/site-packages/pygments/lexers/actionscript.py +243 -0
  824. venv/Lib/site-packages/pygments/lexers/ada.py +144 -0
  825. venv/Lib/site-packages/pygments/lexers/agile.py +25 -0
  826. venv/Lib/site-packages/pygments/lexers/algebra.py +299 -0
  827. venv/Lib/site-packages/pygments/lexers/ambient.py +75 -0
  828. venv/Lib/site-packages/pygments/lexers/amdgpu.py +54 -0
  829. venv/Lib/site-packages/pygments/lexers/ampl.py +87 -0
  830. venv/Lib/site-packages/pygments/lexers/apdlexer.py +593 -0
  831. venv/Lib/site-packages/pygments/lexers/apl.py +103 -0
  832. venv/Lib/site-packages/pygments/lexers/archetype.py +315 -0
  833. venv/Lib/site-packages/pygments/lexers/arrow.py +116 -0
  834. venv/Lib/site-packages/pygments/lexers/arturo.py +249 -0
  835. venv/Lib/site-packages/pygments/lexers/asc.py +55 -0
  836. venv/Lib/site-packages/pygments/lexers/asm.py +1051 -0
  837. venv/Lib/site-packages/pygments/lexers/asn1.py +178 -0
  838. venv/Lib/site-packages/pygments/lexers/automation.py +379 -0
  839. venv/Lib/site-packages/pygments/lexers/bare.py +101 -0
  840. venv/Lib/site-packages/pygments/lexers/basic.py +656 -0
  841. venv/Lib/site-packages/pygments/lexers/bdd.py +57 -0
  842. venv/Lib/site-packages/pygments/lexers/berry.py +99 -0
  843. venv/Lib/site-packages/pygments/lexers/bibtex.py +159 -0
  844. venv/Lib/site-packages/pygments/lexers/blueprint.py +173 -0
  845. venv/Lib/site-packages/pygments/lexers/boa.py +97 -0
  846. venv/Lib/site-packages/pygments/lexers/bqn.py +112 -0
  847. venv/Lib/site-packages/pygments/lexers/business.py +625 -0
  848. venv/Lib/site-packages/pygments/lexers/c_cpp.py +414 -0
  849. venv/Lib/site-packages/pygments/lexers/c_like.py +738 -0
  850. venv/Lib/site-packages/pygments/lexers/capnproto.py +74 -0
  851. venv/Lib/site-packages/pygments/lexers/carbon.py +95 -0
  852. venv/Lib/site-packages/pygments/lexers/cddl.py +172 -0
  853. venv/Lib/site-packages/pygments/lexers/chapel.py +139 -0
  854. venv/Lib/site-packages/pygments/lexers/clean.py +180 -0
  855. venv/Lib/site-packages/pygments/lexers/codeql.py +80 -0
  856. venv/Lib/site-packages/pygments/lexers/comal.py +81 -0
  857. venv/Lib/site-packages/pygments/lexers/compiled.py +35 -0
  858. venv/Lib/site-packages/pygments/lexers/configs.py +1433 -0
  859. venv/Lib/site-packages/pygments/lexers/console.py +114 -0
  860. venv/Lib/site-packages/pygments/lexers/cplint.py +43 -0
  861. venv/Lib/site-packages/pygments/lexers/crystal.py +364 -0
  862. venv/Lib/site-packages/pygments/lexers/csound.py +466 -0
  863. venv/Lib/site-packages/pygments/lexers/css.py +602 -0
  864. venv/Lib/site-packages/pygments/lexers/d.py +259 -0
  865. venv/Lib/site-packages/pygments/lexers/dalvik.py +126 -0
  866. venv/Lib/site-packages/pygments/lexers/data.py +763 -0
  867. venv/Lib/site-packages/pygments/lexers/dax.py +135 -0
  868. venv/Lib/site-packages/pygments/lexers/devicetree.py +108 -0
  869. venv/Lib/site-packages/pygments/lexers/diff.py +169 -0
  870. venv/Lib/site-packages/pygments/lexers/dns.py +109 -0
  871. venv/Lib/site-packages/pygments/lexers/dotnet.py +873 -0
  872. venv/Lib/site-packages/pygments/lexers/dsls.py +970 -0
  873. venv/Lib/site-packages/pygments/lexers/dylan.py +279 -0
  874. venv/Lib/site-packages/pygments/lexers/ecl.py +144 -0
  875. venv/Lib/site-packages/pygments/lexers/eiffel.py +68 -0
  876. venv/Lib/site-packages/pygments/lexers/elm.py +123 -0
  877. venv/Lib/site-packages/pygments/lexers/elpi.py +175 -0
  878. venv/Lib/site-packages/pygments/lexers/email.py +132 -0
  879. venv/Lib/site-packages/pygments/lexers/erlang.py +526 -0
  880. venv/Lib/site-packages/pygments/lexers/esoteric.py +300 -0
  881. venv/Lib/site-packages/pygments/lexers/ezhil.py +76 -0
  882. venv/Lib/site-packages/pygments/lexers/factor.py +363 -0
  883. venv/Lib/site-packages/pygments/lexers/fantom.py +251 -0
  884. venv/Lib/site-packages/pygments/lexers/felix.py +275 -0
  885. venv/Lib/site-packages/pygments/lexers/fift.py +68 -0
  886. venv/Lib/site-packages/pygments/lexers/floscript.py +81 -0
  887. venv/Lib/site-packages/pygments/lexers/forth.py +178 -0
  888. venv/Lib/site-packages/pygments/lexers/fortran.py +212 -0
  889. venv/Lib/site-packages/pygments/lexers/foxpro.py +427 -0
  890. venv/Lib/site-packages/pygments/lexers/freefem.py +893 -0
  891. venv/Lib/site-packages/pygments/lexers/func.py +110 -0
  892. venv/Lib/site-packages/pygments/lexers/functional.py +21 -0
  893. venv/Lib/site-packages/pygments/lexers/futhark.py +105 -0
  894. venv/Lib/site-packages/pygments/lexers/gcodelexer.py +35 -0
  895. venv/Lib/site-packages/pygments/lexers/gdscript.py +189 -0
  896. venv/Lib/site-packages/pygments/lexers/gleam.py +74 -0
  897. venv/Lib/site-packages/pygments/lexers/go.py +97 -0
  898. venv/Lib/site-packages/pygments/lexers/grammar_notation.py +262 -0
  899. venv/Lib/site-packages/pygments/lexers/graph.py +108 -0
  900. venv/Lib/site-packages/pygments/lexers/graphics.py +794 -0
  901. venv/Lib/site-packages/pygments/lexers/graphql.py +176 -0
  902. venv/Lib/site-packages/pygments/lexers/graphviz.py +58 -0
  903. venv/Lib/site-packages/pygments/lexers/gsql.py +103 -0
  904. venv/Lib/site-packages/pygments/lexers/hare.py +73 -0
  905. venv/Lib/site-packages/pygments/lexers/haskell.py +866 -0
  906. venv/Lib/site-packages/pygments/lexers/haxe.py +935 -0
  907. venv/Lib/site-packages/pygments/lexers/hdl.py +466 -0
  908. venv/Lib/site-packages/pygments/lexers/hexdump.py +102 -0
  909. venv/Lib/site-packages/pygments/lexers/html.py +670 -0
  910. venv/Lib/site-packages/pygments/lexers/idl.py +284 -0
  911. venv/Lib/site-packages/pygments/lexers/igor.py +435 -0
  912. venv/Lib/site-packages/pygments/lexers/inferno.py +95 -0
  913. venv/Lib/site-packages/pygments/lexers/installers.py +352 -0
  914. venv/Lib/site-packages/pygments/lexers/int_fiction.py +1370 -0
  915. venv/Lib/site-packages/pygments/lexers/iolang.py +61 -0
  916. venv/Lib/site-packages/pygments/lexers/j.py +151 -0
  917. venv/Lib/site-packages/pygments/lexers/javascript.py +1591 -0
  918. venv/Lib/site-packages/pygments/lexers/jmespath.py +69 -0
  919. venv/Lib/site-packages/pygments/lexers/jslt.py +94 -0
  920. venv/Lib/site-packages/pygments/lexers/json5.py +83 -0
  921. venv/Lib/site-packages/pygments/lexers/jsonnet.py +169 -0
  922. venv/Lib/site-packages/pygments/lexers/jsx.py +100 -0
  923. venv/Lib/site-packages/pygments/lexers/julia.py +294 -0
  924. venv/Lib/site-packages/pygments/lexers/jvm.py +1802 -0
  925. venv/Lib/site-packages/pygments/lexers/kuin.py +332 -0
  926. venv/Lib/site-packages/pygments/lexers/kusto.py +93 -0
  927. venv/Lib/site-packages/pygments/lexers/ldap.py +155 -0
  928. venv/Lib/site-packages/pygments/lexers/lean.py +241 -0
  929. venv/Lib/site-packages/pygments/lexers/lilypond.py +225 -0
  930. venv/Lib/site-packages/pygments/lexers/lisp.py +3146 -0
  931. venv/Lib/site-packages/pygments/lexers/macaulay2.py +1814 -0
  932. venv/Lib/site-packages/pygments/lexers/make.py +212 -0
  933. venv/Lib/site-packages/pygments/lexers/maple.py +291 -0
  934. venv/Lib/site-packages/pygments/lexers/markup.py +1654 -0
  935. venv/Lib/site-packages/pygments/lexers/math.py +21 -0
  936. venv/Lib/site-packages/pygments/lexers/matlab.py +3307 -0
  937. venv/Lib/site-packages/pygments/lexers/maxima.py +84 -0
  938. venv/Lib/site-packages/pygments/lexers/meson.py +139 -0
  939. venv/Lib/site-packages/pygments/lexers/mime.py +210 -0
  940. venv/Lib/site-packages/pygments/lexers/minecraft.py +391 -0
  941. venv/Lib/site-packages/pygments/lexers/mips.py +130 -0
  942. venv/Lib/site-packages/pygments/lexers/ml.py +958 -0
  943. venv/Lib/site-packages/pygments/lexers/modeling.py +366 -0
  944. venv/Lib/site-packages/pygments/lexers/modula2.py +1579 -0
  945. venv/Lib/site-packages/pygments/lexers/mojo.py +707 -0
  946. venv/Lib/site-packages/pygments/lexers/monte.py +203 -0
  947. venv/Lib/site-packages/pygments/lexers/mosel.py +447 -0
  948. venv/Lib/site-packages/pygments/lexers/ncl.py +894 -0
  949. venv/Lib/site-packages/pygments/lexers/nimrod.py +199 -0
  950. venv/Lib/site-packages/pygments/lexers/nit.py +63 -0
  951. venv/Lib/site-packages/pygments/lexers/nix.py +144 -0
  952. venv/Lib/site-packages/pygments/lexers/numbair.py +63 -0
  953. venv/Lib/site-packages/pygments/lexers/oberon.py +120 -0
  954. venv/Lib/site-packages/pygments/lexers/objective.py +513 -0
  955. venv/Lib/site-packages/pygments/lexers/ooc.py +84 -0
  956. venv/Lib/site-packages/pygments/lexers/openscad.py +96 -0
  957. venv/Lib/site-packages/pygments/lexers/other.py +41 -0
  958. venv/Lib/site-packages/pygments/lexers/parasail.py +78 -0
  959. venv/Lib/site-packages/pygments/lexers/parsers.py +798 -0
  960. venv/Lib/site-packages/pygments/lexers/pascal.py +644 -0
  961. venv/Lib/site-packages/pygments/lexers/pawn.py +202 -0
  962. venv/Lib/site-packages/pygments/lexers/pddl.py +82 -0
  963. venv/Lib/site-packages/pygments/lexers/perl.py +733 -0
  964. venv/Lib/site-packages/pygments/lexers/phix.py +363 -0
  965. venv/Lib/site-packages/pygments/lexers/php.py +334 -0
  966. venv/Lib/site-packages/pygments/lexers/pointless.py +70 -0
  967. venv/Lib/site-packages/pygments/lexers/pony.py +93 -0
  968. venv/Lib/site-packages/pygments/lexers/praat.py +303 -0
  969. venv/Lib/site-packages/pygments/lexers/procfile.py +41 -0
  970. venv/Lib/site-packages/pygments/lexers/prolog.py +318 -0
  971. venv/Lib/site-packages/pygments/lexers/promql.py +176 -0
  972. venv/Lib/site-packages/pygments/lexers/prql.py +251 -0
  973. venv/Lib/site-packages/pygments/lexers/ptx.py +119 -0
  974. venv/Lib/site-packages/pygments/lexers/python.py +1201 -0
  975. venv/Lib/site-packages/pygments/lexers/q.py +187 -0
  976. venv/Lib/site-packages/pygments/lexers/qlik.py +117 -0
  977. venv/Lib/site-packages/pygments/lexers/qvt.py +153 -0
  978. venv/Lib/site-packages/pygments/lexers/r.py +196 -0
  979. venv/Lib/site-packages/pygments/lexers/rdf.py +468 -0
  980. venv/Lib/site-packages/pygments/lexers/rebol.py +419 -0
  981. venv/Lib/site-packages/pygments/lexers/rego.py +57 -0
  982. venv/Lib/site-packages/pygments/lexers/resource.py +83 -0
  983. venv/Lib/site-packages/pygments/lexers/ride.py +138 -0
  984. venv/Lib/site-packages/pygments/lexers/rita.py +42 -0
  985. venv/Lib/site-packages/pygments/lexers/rnc.py +66 -0
  986. venv/Lib/site-packages/pygments/lexers/roboconf.py +81 -0
  987. venv/Lib/site-packages/pygments/lexers/robotframework.py +551 -0
  988. venv/Lib/site-packages/pygments/lexers/ruby.py +518 -0
  989. venv/Lib/site-packages/pygments/lexers/rust.py +222 -0
  990. venv/Lib/site-packages/pygments/lexers/sas.py +227 -0
  991. venv/Lib/site-packages/pygments/lexers/savi.py +171 -0
  992. venv/Lib/site-packages/pygments/lexers/scdoc.py +85 -0
  993. venv/Lib/site-packages/pygments/lexers/scripting.py +1616 -0
  994. venv/Lib/site-packages/pygments/lexers/sgf.py +59 -0
  995. venv/Lib/site-packages/pygments/lexers/shell.py +902 -0
  996. venv/Lib/site-packages/pygments/lexers/sieve.py +78 -0
  997. venv/Lib/site-packages/pygments/lexers/slash.py +183 -0
  998. venv/Lib/site-packages/pygments/lexers/smalltalk.py +194 -0
  999. venv/Lib/site-packages/pygments/lexers/smithy.py +77 -0
  1000. venv/Lib/site-packages/pygments/lexers/smv.py +78 -0
  1001. venv/Lib/site-packages/pygments/lexers/snobol.py +82 -0
  1002. venv/Lib/site-packages/pygments/lexers/solidity.py +87 -0
  1003. venv/Lib/site-packages/pygments/lexers/soong.py +78 -0
  1004. venv/Lib/site-packages/pygments/lexers/sophia.py +102 -0
  1005. venv/Lib/site-packages/pygments/lexers/special.py +122 -0
  1006. venv/Lib/site-packages/pygments/lexers/spice.py +70 -0
  1007. venv/Lib/site-packages/pygments/lexers/sql.py +1109 -0
  1008. venv/Lib/site-packages/pygments/lexers/srcinfo.py +62 -0
  1009. venv/Lib/site-packages/pygments/lexers/stata.py +170 -0
  1010. venv/Lib/site-packages/pygments/lexers/supercollider.py +94 -0
  1011. venv/Lib/site-packages/pygments/lexers/tablegen.py +177 -0
  1012. venv/Lib/site-packages/pygments/lexers/tact.py +303 -0
  1013. venv/Lib/site-packages/pygments/lexers/tal.py +77 -0
  1014. venv/Lib/site-packages/pygments/lexers/tcl.py +148 -0
  1015. venv/Lib/site-packages/pygments/lexers/teal.py +88 -0
  1016. venv/Lib/site-packages/pygments/lexers/templates.py +2355 -0
  1017. venv/Lib/site-packages/pygments/lexers/teraterm.py +325 -0
  1018. venv/Lib/site-packages/pygments/lexers/testing.py +209 -0
  1019. venv/Lib/site-packages/pygments/lexers/text.py +27 -0
  1020. venv/Lib/site-packages/pygments/lexers/textedit.py +205 -0
  1021. venv/Lib/site-packages/pygments/lexers/textfmts.py +436 -0
  1022. venv/Lib/site-packages/pygments/lexers/theorem.py +410 -0
  1023. venv/Lib/site-packages/pygments/lexers/thingsdb.py +140 -0
  1024. venv/Lib/site-packages/pygments/lexers/tlb.py +59 -0
  1025. venv/Lib/site-packages/pygments/lexers/tls.py +54 -0
  1026. venv/Lib/site-packages/pygments/lexers/tnt.py +270 -0
  1027. venv/Lib/site-packages/pygments/lexers/trafficscript.py +51 -0
  1028. venv/Lib/site-packages/pygments/lexers/typoscript.py +216 -0
  1029. venv/Lib/site-packages/pygments/lexers/typst.py +160 -0
  1030. venv/Lib/site-packages/pygments/lexers/ul4.py +309 -0
  1031. venv/Lib/site-packages/pygments/lexers/unicon.py +413 -0
  1032. venv/Lib/site-packages/pygments/lexers/urbi.py +145 -0
  1033. venv/Lib/site-packages/pygments/lexers/usd.py +85 -0
  1034. venv/Lib/site-packages/pygments/lexers/varnish.py +189 -0
  1035. venv/Lib/site-packages/pygments/lexers/verification.py +113 -0
  1036. venv/Lib/site-packages/pygments/lexers/verifpal.py +65 -0
  1037. venv/Lib/site-packages/pygments/lexers/vip.py +150 -0
  1038. venv/Lib/site-packages/pygments/lexers/vyper.py +140 -0
  1039. venv/Lib/site-packages/pygments/lexers/web.py +24 -0
  1040. venv/Lib/site-packages/pygments/lexers/webassembly.py +119 -0
  1041. venv/Lib/site-packages/pygments/lexers/webidl.py +298 -0
  1042. venv/Lib/site-packages/pygments/lexers/webmisc.py +1006 -0
  1043. venv/Lib/site-packages/pygments/lexers/wgsl.py +406 -0
  1044. venv/Lib/site-packages/pygments/lexers/whiley.py +115 -0
  1045. venv/Lib/site-packages/pygments/lexers/wowtoc.py +120 -0
  1046. venv/Lib/site-packages/pygments/lexers/wren.py +98 -0
  1047. venv/Lib/site-packages/pygments/lexers/x10.py +66 -0
  1048. venv/Lib/site-packages/pygments/lexers/xorg.py +38 -0
  1049. venv/Lib/site-packages/pygments/lexers/yang.py +103 -0
  1050. venv/Lib/site-packages/pygments/lexers/yara.py +69 -0
  1051. venv/Lib/site-packages/pygments/lexers/zig.py +125 -0
  1052. venv/Lib/site-packages/pygments/modeline.py +43 -0
  1053. venv/Lib/site-packages/pygments/plugin.py +72 -0
  1054. venv/Lib/site-packages/pygments/regexopt.py +91 -0
  1055. venv/Lib/site-packages/pygments/scanner.py +104 -0
  1056. venv/Lib/site-packages/pygments/sphinxext.py +247 -0
  1057. venv/Lib/site-packages/pygments/style.py +203 -0
  1058. venv/Lib/site-packages/pygments/styles/__init__.py +61 -0
  1059. venv/Lib/site-packages/pygments/styles/_mapping.py +54 -0
  1060. venv/Lib/site-packages/pygments/styles/abap.py +32 -0
  1061. venv/Lib/site-packages/pygments/styles/algol.py +65 -0
  1062. venv/Lib/site-packages/pygments/styles/algol_nu.py +65 -0
  1063. venv/Lib/site-packages/pygments/styles/arduino.py +100 -0
  1064. venv/Lib/site-packages/pygments/styles/autumn.py +67 -0
  1065. venv/Lib/site-packages/pygments/styles/borland.py +53 -0
  1066. venv/Lib/site-packages/pygments/styles/bw.py +52 -0
  1067. venv/Lib/site-packages/pygments/styles/coffee.py +80 -0
  1068. venv/Lib/site-packages/pygments/styles/colorful.py +83 -0
  1069. venv/Lib/site-packages/pygments/styles/default.py +76 -0
  1070. venv/Lib/site-packages/pygments/styles/dracula.py +90 -0
  1071. venv/Lib/site-packages/pygments/styles/emacs.py +75 -0
  1072. venv/Lib/site-packages/pygments/styles/friendly.py +76 -0
  1073. venv/Lib/site-packages/pygments/styles/friendly_grayscale.py +80 -0
  1074. venv/Lib/site-packages/pygments/styles/fruity.py +47 -0
  1075. venv/Lib/site-packages/pygments/styles/gh_dark.py +113 -0
  1076. venv/Lib/site-packages/pygments/styles/gruvbox.py +118 -0
  1077. venv/Lib/site-packages/pygments/styles/igor.py +32 -0
  1078. venv/Lib/site-packages/pygments/styles/inkpot.py +72 -0
  1079. venv/Lib/site-packages/pygments/styles/lightbulb.py +110 -0
  1080. venv/Lib/site-packages/pygments/styles/lilypond.py +62 -0
  1081. venv/Lib/site-packages/pygments/styles/lovelace.py +100 -0
  1082. venv/Lib/site-packages/pygments/styles/manni.py +79 -0
  1083. venv/Lib/site-packages/pygments/styles/material.py +124 -0
  1084. venv/Lib/site-packages/pygments/styles/monokai.py +112 -0
  1085. venv/Lib/site-packages/pygments/styles/murphy.py +82 -0
  1086. venv/Lib/site-packages/pygments/styles/native.py +70 -0
  1087. venv/Lib/site-packages/pygments/styles/nord.py +156 -0
  1088. venv/Lib/site-packages/pygments/styles/onedark.py +63 -0
  1089. venv/Lib/site-packages/pygments/styles/paraiso_dark.py +124 -0
  1090. venv/Lib/site-packages/pygments/styles/paraiso_light.py +124 -0
  1091. venv/Lib/site-packages/pygments/styles/pastie.py +78 -0
  1092. venv/Lib/site-packages/pygments/styles/perldoc.py +73 -0
  1093. venv/Lib/site-packages/pygments/styles/rainbow_dash.py +95 -0
  1094. venv/Lib/site-packages/pygments/styles/rrt.py +40 -0
  1095. venv/Lib/site-packages/pygments/styles/sas.py +46 -0
  1096. venv/Lib/site-packages/pygments/styles/solarized.py +144 -0
  1097. venv/Lib/site-packages/pygments/styles/staroffice.py +31 -0
  1098. venv/Lib/site-packages/pygments/styles/stata_dark.py +42 -0
  1099. venv/Lib/site-packages/pygments/styles/stata_light.py +42 -0
  1100. venv/Lib/site-packages/pygments/styles/tango.py +143 -0
  1101. venv/Lib/site-packages/pygments/styles/trac.py +66 -0
  1102. venv/Lib/site-packages/pygments/styles/vim.py +67 -0
  1103. venv/Lib/site-packages/pygments/styles/vs.py +41 -0
  1104. venv/Lib/site-packages/pygments/styles/xcode.py +53 -0
  1105. venv/Lib/site-packages/pygments/styles/zenburn.py +83 -0
  1106. venv/Lib/site-packages/pygments/token.py +214 -0
  1107. venv/Lib/site-packages/pygments/unistring.py +153 -0
  1108. venv/Lib/site-packages/pygments/util.py +324 -0
  1109. venv/Lib/site-packages/pyproject_hooks/__init__.py +31 -0
  1110. venv/Lib/site-packages/pyproject_hooks/_impl.py +410 -0
  1111. venv/Lib/site-packages/pyproject_hooks/_in_process/__init__.py +21 -0
  1112. venv/Lib/site-packages/pyproject_hooks/_in_process/_in_process.py +389 -0
  1113. venv/Lib/site-packages/pyproject_hooks/py.typed +0 -0
  1114. venv/Lib/site-packages/readme_renderer/__init__.py +13 -0
  1115. venv/Lib/site-packages/readme_renderer/__main__.py +66 -0
  1116. venv/Lib/site-packages/readme_renderer/clean.py +89 -0
  1117. venv/Lib/site-packages/readme_renderer/markdown.py +123 -0
  1118. venv/Lib/site-packages/readme_renderer/py.typed +0 -0
  1119. venv/Lib/site-packages/readme_renderer/rst.py +135 -0
  1120. venv/Lib/site-packages/readme_renderer/txt.py +24 -0
  1121. venv/Lib/site-packages/requests/__init__.py +184 -0
  1122. venv/Lib/site-packages/requests/__version__.py +14 -0
  1123. venv/Lib/site-packages/requests/_internal_utils.py +50 -0
  1124. venv/Lib/site-packages/requests/adapters.py +696 -0
  1125. venv/Lib/site-packages/requests/api.py +157 -0
  1126. venv/Lib/site-packages/requests/auth.py +314 -0
  1127. venv/Lib/site-packages/requests/certs.py +17 -0
  1128. venv/Lib/site-packages/requests/compat.py +106 -0
  1129. venv/Lib/site-packages/requests/cookies.py +561 -0
  1130. venv/Lib/site-packages/requests/exceptions.py +151 -0
  1131. venv/Lib/site-packages/requests/help.py +134 -0
  1132. venv/Lib/site-packages/requests/hooks.py +33 -0
  1133. venv/Lib/site-packages/requests/models.py +1039 -0
  1134. venv/Lib/site-packages/requests/packages.py +23 -0
  1135. venv/Lib/site-packages/requests/sessions.py +831 -0
  1136. venv/Lib/site-packages/requests/status_codes.py +128 -0
  1137. venv/Lib/site-packages/requests/structures.py +99 -0
  1138. venv/Lib/site-packages/requests/utils.py +1086 -0
  1139. venv/Lib/site-packages/requests_toolbelt/__init__.py +34 -0
  1140. venv/Lib/site-packages/requests_toolbelt/_compat.py +302 -0
  1141. venv/Lib/site-packages/requests_toolbelt/adapters/__init__.py +15 -0
  1142. venv/Lib/site-packages/requests_toolbelt/adapters/appengine.py +206 -0
  1143. venv/Lib/site-packages/requests_toolbelt/adapters/fingerprint.py +48 -0
  1144. venv/Lib/site-packages/requests_toolbelt/adapters/host_header_ssl.py +43 -0
  1145. venv/Lib/site-packages/requests_toolbelt/adapters/socket_options.py +129 -0
  1146. venv/Lib/site-packages/requests_toolbelt/adapters/source.py +67 -0
  1147. venv/Lib/site-packages/requests_toolbelt/adapters/ssl.py +66 -0
  1148. venv/Lib/site-packages/requests_toolbelt/adapters/x509.py +196 -0
  1149. venv/Lib/site-packages/requests_toolbelt/auth/__init__.py +0 -0
  1150. venv/Lib/site-packages/requests_toolbelt/auth/_digest_auth_compat.py +29 -0
  1151. venv/Lib/site-packages/requests_toolbelt/auth/guess.py +146 -0
  1152. venv/Lib/site-packages/requests_toolbelt/auth/handler.py +142 -0
  1153. venv/Lib/site-packages/requests_toolbelt/auth/http_proxy_digest.py +103 -0
  1154. venv/Lib/site-packages/requests_toolbelt/cookies/__init__.py +0 -0
  1155. venv/Lib/site-packages/requests_toolbelt/cookies/forgetful.py +7 -0
  1156. venv/Lib/site-packages/requests_toolbelt/downloadutils/__init__.py +0 -0
  1157. venv/Lib/site-packages/requests_toolbelt/downloadutils/stream.py +176 -0
  1158. venv/Lib/site-packages/requests_toolbelt/downloadutils/tee.py +123 -0
  1159. venv/Lib/site-packages/requests_toolbelt/exceptions.py +25 -0
  1160. venv/Lib/site-packages/requests_toolbelt/multipart/__init__.py +31 -0
  1161. venv/Lib/site-packages/requests_toolbelt/multipart/decoder.py +156 -0
  1162. venv/Lib/site-packages/requests_toolbelt/multipart/encoder.py +655 -0
  1163. venv/Lib/site-packages/requests_toolbelt/sessions.py +89 -0
  1164. venv/Lib/site-packages/requests_toolbelt/streaming_iterator.py +116 -0
  1165. venv/Lib/site-packages/requests_toolbelt/threaded/__init__.py +97 -0
  1166. venv/Lib/site-packages/requests_toolbelt/threaded/pool.py +211 -0
  1167. venv/Lib/site-packages/requests_toolbelt/threaded/thread.py +53 -0
  1168. venv/Lib/site-packages/requests_toolbelt/utils/__init__.py +0 -0
  1169. venv/Lib/site-packages/requests_toolbelt/utils/deprecated.py +91 -0
  1170. venv/Lib/site-packages/requests_toolbelt/utils/dump.py +198 -0
  1171. venv/Lib/site-packages/requests_toolbelt/utils/formdata.py +108 -0
  1172. venv/Lib/site-packages/requests_toolbelt/utils/user_agent.py +143 -0
  1173. venv/Lib/site-packages/rfc3986/__init__.py +53 -0
  1174. venv/Lib/site-packages/rfc3986/_mixin.py +373 -0
  1175. venv/Lib/site-packages/rfc3986/abnf_regexp.py +275 -0
  1176. venv/Lib/site-packages/rfc3986/api.py +104 -0
  1177. venv/Lib/site-packages/rfc3986/builder.py +388 -0
  1178. venv/Lib/site-packages/rfc3986/compat.py +59 -0
  1179. venv/Lib/site-packages/rfc3986/exceptions.py +120 -0
  1180. venv/Lib/site-packages/rfc3986/iri.py +161 -0
  1181. venv/Lib/site-packages/rfc3986/misc.py +131 -0
  1182. venv/Lib/site-packages/rfc3986/normalizers.py +171 -0
  1183. venv/Lib/site-packages/rfc3986/parseresult.py +474 -0
  1184. venv/Lib/site-packages/rfc3986/uri.py +160 -0
  1185. venv/Lib/site-packages/rfc3986/validators.py +440 -0
  1186. venv/Lib/site-packages/rich/__init__.py +177 -0
  1187. venv/Lib/site-packages/rich/__main__.py +245 -0
  1188. venv/Lib/site-packages/rich/_cell_widths.py +454 -0
  1189. venv/Lib/site-packages/rich/_emoji_codes.py +3610 -0
  1190. venv/Lib/site-packages/rich/_emoji_replace.py +32 -0
  1191. venv/Lib/site-packages/rich/_export_format.py +76 -0
  1192. venv/Lib/site-packages/rich/_extension.py +10 -0
  1193. venv/Lib/site-packages/rich/_fileno.py +24 -0
  1194. venv/Lib/site-packages/rich/_inspect.py +268 -0
  1195. venv/Lib/site-packages/rich/_log_render.py +94 -0
  1196. venv/Lib/site-packages/rich/_loop.py +43 -0
  1197. venv/Lib/site-packages/rich/_null_file.py +69 -0
  1198. venv/Lib/site-packages/rich/_palettes.py +309 -0
  1199. venv/Lib/site-packages/rich/_pick.py +17 -0
  1200. venv/Lib/site-packages/rich/_ratio.py +153 -0
  1201. venv/Lib/site-packages/rich/_spinners.py +482 -0
  1202. venv/Lib/site-packages/rich/_stack.py +16 -0
  1203. venv/Lib/site-packages/rich/_timer.py +19 -0
  1204. venv/Lib/site-packages/rich/_win32_console.py +661 -0
  1205. venv/Lib/site-packages/rich/_windows.py +71 -0
  1206. venv/Lib/site-packages/rich/_windows_renderer.py +56 -0
  1207. venv/Lib/site-packages/rich/_wrap.py +93 -0
  1208. venv/Lib/site-packages/rich/abc.py +33 -0
  1209. venv/Lib/site-packages/rich/align.py +306 -0
  1210. venv/Lib/site-packages/rich/ansi.py +241 -0
  1211. venv/Lib/site-packages/rich/bar.py +93 -0
  1212. venv/Lib/site-packages/rich/box.py +474 -0
  1213. venv/Lib/site-packages/rich/cells.py +174 -0
  1214. venv/Lib/site-packages/rich/color.py +621 -0
  1215. venv/Lib/site-packages/rich/color_triplet.py +38 -0
  1216. venv/Lib/site-packages/rich/columns.py +187 -0
  1217. venv/Lib/site-packages/rich/console.py +2680 -0
  1218. venv/Lib/site-packages/rich/constrain.py +37 -0
  1219. venv/Lib/site-packages/rich/containers.py +167 -0
  1220. venv/Lib/site-packages/rich/control.py +219 -0
  1221. venv/Lib/site-packages/rich/default_styles.py +193 -0
  1222. venv/Lib/site-packages/rich/diagnose.py +39 -0
  1223. venv/Lib/site-packages/rich/emoji.py +91 -0
  1224. venv/Lib/site-packages/rich/errors.py +34 -0
  1225. venv/Lib/site-packages/rich/file_proxy.py +57 -0
  1226. venv/Lib/site-packages/rich/filesize.py +88 -0
  1227. venv/Lib/site-packages/rich/highlighter.py +232 -0
  1228. venv/Lib/site-packages/rich/json.py +139 -0
  1229. venv/Lib/site-packages/rich/jupyter.py +101 -0
  1230. venv/Lib/site-packages/rich/layout.py +442 -0
  1231. venv/Lib/site-packages/rich/live.py +400 -0
  1232. venv/Lib/site-packages/rich/live_render.py +106 -0
  1233. venv/Lib/site-packages/rich/logging.py +297 -0
  1234. venv/Lib/site-packages/rich/markdown.py +779 -0
  1235. venv/Lib/site-packages/rich/markup.py +251 -0
  1236. venv/Lib/site-packages/rich/measure.py +151 -0
  1237. venv/Lib/site-packages/rich/padding.py +141 -0
  1238. venv/Lib/site-packages/rich/pager.py +34 -0
  1239. venv/Lib/site-packages/rich/palette.py +100 -0
  1240. venv/Lib/site-packages/rich/panel.py +317 -0
  1241. venv/Lib/site-packages/rich/pretty.py +1016 -0
  1242. venv/Lib/site-packages/rich/progress.py +1715 -0
  1243. venv/Lib/site-packages/rich/progress_bar.py +223 -0
  1244. venv/Lib/site-packages/rich/prompt.py +400 -0
  1245. venv/Lib/site-packages/rich/protocol.py +42 -0
  1246. venv/Lib/site-packages/rich/py.typed +0 -0
  1247. venv/Lib/site-packages/rich/region.py +10 -0
  1248. venv/Lib/site-packages/rich/repr.py +149 -0
  1249. venv/Lib/site-packages/rich/rule.py +130 -0
  1250. venv/Lib/site-packages/rich/scope.py +86 -0
  1251. venv/Lib/site-packages/rich/screen.py +54 -0
  1252. venv/Lib/site-packages/rich/segment.py +752 -0
  1253. venv/Lib/site-packages/rich/spinner.py +132 -0
  1254. venv/Lib/site-packages/rich/status.py +131 -0
  1255. venv/Lib/site-packages/rich/style.py +792 -0
  1256. venv/Lib/site-packages/rich/styled.py +42 -0
  1257. venv/Lib/site-packages/rich/syntax.py +985 -0
  1258. venv/Lib/site-packages/rich/table.py +1006 -0
  1259. venv/Lib/site-packages/rich/terminal_theme.py +153 -0
  1260. venv/Lib/site-packages/rich/text.py +1361 -0
  1261. venv/Lib/site-packages/rich/theme.py +115 -0
  1262. venv/Lib/site-packages/rich/themes.py +5 -0
  1263. venv/Lib/site-packages/rich/traceback.py +899 -0
  1264. venv/Lib/site-packages/rich/tree.py +257 -0
  1265. venv/Lib/site-packages/setup_sdist.py +69 -0
  1266. venv/Lib/site-packages/setuptools/__init__.py +248 -0
  1267. venv/Lib/site-packages/setuptools/_core_metadata.py +337 -0
  1268. venv/Lib/site-packages/setuptools/_discovery.py +33 -0
  1269. venv/Lib/site-packages/setuptools/_distutils/__init__.py +14 -0
  1270. venv/Lib/site-packages/setuptools/_distutils/_log.py +3 -0
  1271. venv/Lib/site-packages/setuptools/_distutils/_macos_compat.py +12 -0
  1272. venv/Lib/site-packages/setuptools/_distutils/_modified.py +95 -0
  1273. venv/Lib/site-packages/setuptools/_distutils/_msvccompiler.py +16 -0
  1274. venv/Lib/site-packages/setuptools/_distutils/archive_util.py +294 -0
  1275. venv/Lib/site-packages/setuptools/_distutils/ccompiler.py +26 -0
  1276. venv/Lib/site-packages/setuptools/_distutils/cmd.py +554 -0
  1277. venv/Lib/site-packages/setuptools/_distutils/command/__init__.py +23 -0
  1278. venv/Lib/site-packages/setuptools/_distutils/command/_framework_compat.py +54 -0
  1279. venv/Lib/site-packages/setuptools/_distutils/command/bdist.py +167 -0
  1280. venv/Lib/site-packages/setuptools/_distutils/command/bdist_dumb.py +141 -0
  1281. venv/Lib/site-packages/setuptools/_distutils/command/bdist_rpm.py +598 -0
  1282. venv/Lib/site-packages/setuptools/_distutils/command/build.py +156 -0
  1283. venv/Lib/site-packages/setuptools/_distutils/command/build_clib.py +201 -0
  1284. venv/Lib/site-packages/setuptools/_distutils/command/build_ext.py +812 -0
  1285. venv/Lib/site-packages/setuptools/_distutils/command/build_py.py +407 -0
  1286. venv/Lib/site-packages/setuptools/_distutils/command/build_scripts.py +160 -0
  1287. venv/Lib/site-packages/setuptools/_distutils/command/check.py +152 -0
  1288. venv/Lib/site-packages/setuptools/_distutils/command/clean.py +77 -0
  1289. venv/Lib/site-packages/setuptools/_distutils/command/config.py +358 -0
  1290. venv/Lib/site-packages/setuptools/_distutils/command/install.py +805 -0
  1291. venv/Lib/site-packages/setuptools/_distutils/command/install_data.py +94 -0
  1292. venv/Lib/site-packages/setuptools/_distutils/command/install_egg_info.py +91 -0
  1293. venv/Lib/site-packages/setuptools/_distutils/command/install_headers.py +46 -0
  1294. venv/Lib/site-packages/setuptools/_distutils/command/install_lib.py +238 -0
  1295. venv/Lib/site-packages/setuptools/_distutils/command/install_scripts.py +62 -0
  1296. venv/Lib/site-packages/setuptools/_distutils/command/sdist.py +521 -0
  1297. venv/Lib/site-packages/setuptools/_distutils/compat/__init__.py +18 -0
  1298. venv/Lib/site-packages/setuptools/_distutils/compat/numpy.py +2 -0
  1299. venv/Lib/site-packages/setuptools/_distutils/compat/py39.py +66 -0
  1300. venv/Lib/site-packages/setuptools/_distutils/compilers/C/base.py +1394 -0
  1301. venv/Lib/site-packages/setuptools/_distutils/compilers/C/cygwin.py +340 -0
  1302. venv/Lib/site-packages/setuptools/_distutils/compilers/C/errors.py +24 -0
  1303. venv/Lib/site-packages/setuptools/_distutils/compilers/C/msvc.py +614 -0
  1304. venv/Lib/site-packages/setuptools/_distutils/compilers/C/tests/test_base.py +83 -0
  1305. venv/Lib/site-packages/setuptools/_distutils/compilers/C/tests/test_cygwin.py +76 -0
  1306. venv/Lib/site-packages/setuptools/_distutils/compilers/C/tests/test_mingw.py +48 -0
  1307. venv/Lib/site-packages/setuptools/_distutils/compilers/C/tests/test_msvc.py +136 -0
  1308. venv/Lib/site-packages/setuptools/_distutils/compilers/C/tests/test_unix.py +413 -0
  1309. venv/Lib/site-packages/setuptools/_distutils/compilers/C/unix.py +422 -0
  1310. venv/Lib/site-packages/setuptools/_distutils/compilers/C/zos.py +230 -0
  1311. venv/Lib/site-packages/setuptools/_distutils/core.py +289 -0
  1312. venv/Lib/site-packages/setuptools/_distutils/cygwinccompiler.py +31 -0
  1313. venv/Lib/site-packages/setuptools/_distutils/debug.py +5 -0
  1314. venv/Lib/site-packages/setuptools/_distutils/dep_util.py +14 -0
  1315. venv/Lib/site-packages/setuptools/_distutils/dir_util.py +244 -0
  1316. venv/Lib/site-packages/setuptools/_distutils/dist.py +1386 -0
  1317. venv/Lib/site-packages/setuptools/_distutils/errors.py +108 -0
  1318. venv/Lib/site-packages/setuptools/_distutils/extension.py +258 -0
  1319. venv/Lib/site-packages/setuptools/_distutils/fancy_getopt.py +471 -0
  1320. venv/Lib/site-packages/setuptools/_distutils/file_util.py +236 -0
  1321. venv/Lib/site-packages/setuptools/_distutils/filelist.py +431 -0
  1322. venv/Lib/site-packages/setuptools/_distutils/log.py +56 -0
  1323. venv/Lib/site-packages/setuptools/_distutils/spawn.py +134 -0
  1324. venv/Lib/site-packages/setuptools/_distutils/sysconfig.py +598 -0
  1325. venv/Lib/site-packages/setuptools/_distutils/tests/__init__.py +42 -0
  1326. venv/Lib/site-packages/setuptools/_distutils/tests/compat/__init__.py +0 -0
  1327. venv/Lib/site-packages/setuptools/_distutils/tests/compat/py39.py +40 -0
  1328. venv/Lib/site-packages/setuptools/_distutils/tests/support.py +134 -0
  1329. venv/Lib/site-packages/setuptools/_distutils/tests/test_archive_util.py +353 -0
  1330. venv/Lib/site-packages/setuptools/_distutils/tests/test_bdist.py +47 -0
  1331. venv/Lib/site-packages/setuptools/_distutils/tests/test_bdist_dumb.py +78 -0
  1332. venv/Lib/site-packages/setuptools/_distutils/tests/test_bdist_rpm.py +127 -0
  1333. venv/Lib/site-packages/setuptools/_distutils/tests/test_build.py +49 -0
  1334. venv/Lib/site-packages/setuptools/_distutils/tests/test_build_clib.py +134 -0
  1335. venv/Lib/site-packages/setuptools/_distutils/tests/test_build_ext.py +628 -0
  1336. venv/Lib/site-packages/setuptools/_distutils/tests/test_build_py.py +196 -0
  1337. venv/Lib/site-packages/setuptools/_distutils/tests/test_build_scripts.py +96 -0
  1338. venv/Lib/site-packages/setuptools/_distutils/tests/test_check.py +194 -0
  1339. venv/Lib/site-packages/setuptools/_distutils/tests/test_clean.py +45 -0
  1340. venv/Lib/site-packages/setuptools/_distutils/tests/test_cmd.py +107 -0
  1341. venv/Lib/site-packages/setuptools/_distutils/tests/test_config_cmd.py +87 -0
  1342. venv/Lib/site-packages/setuptools/_distutils/tests/test_core.py +130 -0
  1343. venv/Lib/site-packages/setuptools/_distutils/tests/test_dir_util.py +139 -0
  1344. venv/Lib/site-packages/setuptools/_distutils/tests/test_dist.py +552 -0
  1345. venv/Lib/site-packages/setuptools/_distutils/tests/test_extension.py +117 -0
  1346. venv/Lib/site-packages/setuptools/_distutils/tests/test_file_util.py +95 -0
  1347. venv/Lib/site-packages/setuptools/_distutils/tests/test_filelist.py +336 -0
  1348. venv/Lib/site-packages/setuptools/_distutils/tests/test_install.py +245 -0
  1349. venv/Lib/site-packages/setuptools/_distutils/tests/test_install_data.py +74 -0
  1350. venv/Lib/site-packages/setuptools/_distutils/tests/test_install_headers.py +33 -0
  1351. venv/Lib/site-packages/setuptools/_distutils/tests/test_install_lib.py +110 -0
  1352. venv/Lib/site-packages/setuptools/_distutils/tests/test_install_scripts.py +52 -0
  1353. venv/Lib/site-packages/setuptools/_distutils/tests/test_log.py +12 -0
  1354. venv/Lib/site-packages/setuptools/_distutils/tests/test_modified.py +126 -0
  1355. venv/Lib/site-packages/setuptools/_distutils/tests/test_sdist.py +470 -0
  1356. venv/Lib/site-packages/setuptools/_distutils/tests/test_spawn.py +141 -0
  1357. venv/Lib/site-packages/setuptools/_distutils/tests/test_sysconfig.py +319 -0
  1358. venv/Lib/site-packages/setuptools/_distutils/tests/test_text_file.py +127 -0
  1359. venv/Lib/site-packages/setuptools/_distutils/tests/test_util.py +243 -0
  1360. venv/Lib/site-packages/setuptools/_distutils/tests/test_version.py +80 -0
  1361. venv/Lib/site-packages/setuptools/_distutils/tests/test_versionpredicate.py +0 -0
  1362. venv/Lib/site-packages/setuptools/_distutils/tests/unix_compat.py +17 -0
  1363. venv/Lib/site-packages/setuptools/_distutils/text_file.py +286 -0
  1364. venv/Lib/site-packages/setuptools/_distutils/unixccompiler.py +9 -0
  1365. venv/Lib/site-packages/setuptools/_distutils/util.py +518 -0
  1366. venv/Lib/site-packages/setuptools/_distutils/version.py +348 -0
  1367. venv/Lib/site-packages/setuptools/_distutils/versionpredicate.py +175 -0
  1368. venv/Lib/site-packages/setuptools/_distutils/zosccompiler.py +3 -0
  1369. venv/Lib/site-packages/setuptools/_entry_points.py +94 -0
  1370. venv/Lib/site-packages/setuptools/_imp.py +87 -0
  1371. venv/Lib/site-packages/setuptools/_importlib.py +9 -0
  1372. venv/Lib/site-packages/setuptools/_itertools.py +23 -0
  1373. venv/Lib/site-packages/setuptools/_normalization.py +177 -0
  1374. venv/Lib/site-packages/setuptools/_path.py +93 -0
  1375. venv/Lib/site-packages/setuptools/_reqs.py +42 -0
  1376. venv/Lib/site-packages/setuptools/_scripts.py +361 -0
  1377. venv/Lib/site-packages/setuptools/_shutil.py +59 -0
  1378. venv/Lib/site-packages/setuptools/_static.py +188 -0
  1379. venv/Lib/site-packages/setuptools/_vendor/autocommand/__init__.py +27 -0
  1380. venv/Lib/site-packages/setuptools/_vendor/autocommand/autoasync.py +142 -0
  1381. venv/Lib/site-packages/setuptools/_vendor/autocommand/autocommand.py +70 -0
  1382. venv/Lib/site-packages/setuptools/_vendor/autocommand/automain.py +59 -0
  1383. venv/Lib/site-packages/setuptools/_vendor/autocommand/autoparse.py +333 -0
  1384. venv/Lib/site-packages/setuptools/_vendor/autocommand/errors.py +23 -0
  1385. venv/Lib/site-packages/setuptools/_vendor/backports/__init__.py +1 -0
  1386. venv/Lib/site-packages/setuptools/_vendor/backports/tarfile/__init__.py +2937 -0
  1387. venv/Lib/site-packages/setuptools/_vendor/backports/tarfile/__main__.py +5 -0
  1388. venv/Lib/site-packages/setuptools/_vendor/backports/tarfile/compat/__init__.py +0 -0
  1389. venv/Lib/site-packages/setuptools/_vendor/backports/tarfile/compat/py38.py +24 -0
  1390. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/__init__.py +1083 -0
  1391. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/_adapters.py +83 -0
  1392. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/_collections.py +30 -0
  1393. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/_compat.py +57 -0
  1394. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/_functools.py +104 -0
  1395. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/_itertools.py +73 -0
  1396. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/_meta.py +67 -0
  1397. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/_text.py +99 -0
  1398. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/compat/__init__.py +0 -0
  1399. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/compat/py311.py +22 -0
  1400. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/compat/py39.py +36 -0
  1401. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/diagnose.py +21 -0
  1402. venv/Lib/site-packages/setuptools/_vendor/importlib_metadata/py.typed +0 -0
  1403. venv/Lib/site-packages/setuptools/_vendor/inflect/__init__.py +3986 -0
  1404. venv/Lib/site-packages/setuptools/_vendor/inflect/compat/__init__.py +0 -0
  1405. venv/Lib/site-packages/setuptools/_vendor/inflect/compat/py38.py +7 -0
  1406. venv/Lib/site-packages/setuptools/_vendor/inflect/py.typed +0 -0
  1407. venv/Lib/site-packages/setuptools/_vendor/jaraco/collections/__init__.py +1091 -0
  1408. venv/Lib/site-packages/setuptools/_vendor/jaraco/collections/py.typed +0 -0
  1409. venv/Lib/site-packages/setuptools/_vendor/jaraco/context.py +361 -0
  1410. venv/Lib/site-packages/setuptools/_vendor/jaraco/functools/__init__.py +633 -0
  1411. venv/Lib/site-packages/setuptools/_vendor/jaraco/functools/__init__.pyi +125 -0
  1412. venv/Lib/site-packages/setuptools/_vendor/jaraco/functools/py.typed +0 -0
  1413. venv/Lib/site-packages/setuptools/_vendor/jaraco/text/__init__.py +624 -0
  1414. venv/Lib/site-packages/setuptools/_vendor/jaraco/text/layouts.py +25 -0
  1415. venv/Lib/site-packages/setuptools/_vendor/jaraco/text/show-newlines.py +33 -0
  1416. venv/Lib/site-packages/setuptools/_vendor/jaraco/text/strip-prefix.py +21 -0
  1417. venv/Lib/site-packages/setuptools/_vendor/jaraco/text/to-dvorak.py +6 -0
  1418. venv/Lib/site-packages/setuptools/_vendor/jaraco/text/to-qwerty.py +6 -0
  1419. venv/Lib/site-packages/setuptools/_vendor/more_itertools/__init__.py +6 -0
  1420. venv/Lib/site-packages/setuptools/_vendor/more_itertools/__init__.pyi +2 -0
  1421. venv/Lib/site-packages/setuptools/_vendor/more_itertools/more.py +4806 -0
  1422. venv/Lib/site-packages/setuptools/_vendor/more_itertools/more.pyi +709 -0
  1423. venv/Lib/site-packages/setuptools/_vendor/more_itertools/py.typed +0 -0
  1424. venv/Lib/site-packages/setuptools/_vendor/more_itertools/recipes.py +1046 -0
  1425. venv/Lib/site-packages/setuptools/_vendor/more_itertools/recipes.pyi +136 -0
  1426. venv/Lib/site-packages/setuptools/_vendor/packaging/__init__.py +15 -0
  1427. venv/Lib/site-packages/setuptools/_vendor/packaging/_elffile.py +110 -0
  1428. venv/Lib/site-packages/setuptools/_vendor/packaging/_manylinux.py +263 -0
  1429. venv/Lib/site-packages/setuptools/_vendor/packaging/_musllinux.py +85 -0
  1430. venv/Lib/site-packages/setuptools/_vendor/packaging/_parser.py +354 -0
  1431. venv/Lib/site-packages/setuptools/_vendor/packaging/_structures.py +61 -0
  1432. venv/Lib/site-packages/setuptools/_vendor/packaging/_tokenizer.py +194 -0
  1433. venv/Lib/site-packages/setuptools/_vendor/packaging/licenses/__init__.py +145 -0
  1434. venv/Lib/site-packages/setuptools/_vendor/packaging/licenses/_spdx.py +759 -0
  1435. venv/Lib/site-packages/setuptools/_vendor/packaging/markers.py +331 -0
  1436. venv/Lib/site-packages/setuptools/_vendor/packaging/metadata.py +863 -0
  1437. venv/Lib/site-packages/setuptools/_vendor/packaging/py.typed +0 -0
  1438. venv/Lib/site-packages/setuptools/_vendor/packaging/requirements.py +91 -0
  1439. venv/Lib/site-packages/setuptools/_vendor/packaging/specifiers.py +1020 -0
  1440. venv/Lib/site-packages/setuptools/_vendor/packaging/tags.py +617 -0
  1441. venv/Lib/site-packages/setuptools/_vendor/packaging/utils.py +163 -0
  1442. venv/Lib/site-packages/setuptools/_vendor/packaging/version.py +582 -0
  1443. venv/Lib/site-packages/setuptools/_vendor/platformdirs/__init__.py +627 -0
  1444. venv/Lib/site-packages/setuptools/_vendor/platformdirs/__main__.py +55 -0
  1445. venv/Lib/site-packages/setuptools/_vendor/platformdirs/android.py +249 -0
  1446. venv/Lib/site-packages/setuptools/_vendor/platformdirs/api.py +292 -0
  1447. venv/Lib/site-packages/setuptools/_vendor/platformdirs/macos.py +130 -0
  1448. venv/Lib/site-packages/setuptools/_vendor/platformdirs/py.typed +0 -0
  1449. venv/Lib/site-packages/setuptools/_vendor/platformdirs/unix.py +275 -0
  1450. venv/Lib/site-packages/setuptools/_vendor/platformdirs/version.py +16 -0
  1451. venv/Lib/site-packages/setuptools/_vendor/platformdirs/windows.py +272 -0
  1452. venv/Lib/site-packages/setuptools/_vendor/tomli/__init__.py +11 -0
  1453. venv/Lib/site-packages/setuptools/_vendor/tomli/_parser.py +691 -0
  1454. venv/Lib/site-packages/setuptools/_vendor/tomli/_re.py +107 -0
  1455. venv/Lib/site-packages/setuptools/_vendor/tomli/_types.py +10 -0
  1456. venv/Lib/site-packages/setuptools/_vendor/tomli/py.typed +1 -0
  1457. venv/Lib/site-packages/setuptools/_vendor/typeguard/__init__.py +48 -0
  1458. venv/Lib/site-packages/setuptools/_vendor/typeguard/_checkers.py +993 -0
  1459. venv/Lib/site-packages/setuptools/_vendor/typeguard/_config.py +108 -0
  1460. venv/Lib/site-packages/setuptools/_vendor/typeguard/_decorators.py +235 -0
  1461. venv/Lib/site-packages/setuptools/_vendor/typeguard/_exceptions.py +42 -0
  1462. venv/Lib/site-packages/setuptools/_vendor/typeguard/_functions.py +308 -0
  1463. venv/Lib/site-packages/setuptools/_vendor/typeguard/_importhook.py +213 -0
  1464. venv/Lib/site-packages/setuptools/_vendor/typeguard/_memo.py +48 -0
  1465. venv/Lib/site-packages/setuptools/_vendor/typeguard/_pytest_plugin.py +127 -0
  1466. venv/Lib/site-packages/setuptools/_vendor/typeguard/_suppression.py +86 -0
  1467. venv/Lib/site-packages/setuptools/_vendor/typeguard/_transformer.py +1229 -0
  1468. venv/Lib/site-packages/setuptools/_vendor/typeguard/_union_transformer.py +55 -0
  1469. venv/Lib/site-packages/setuptools/_vendor/typeguard/_utils.py +173 -0
  1470. venv/Lib/site-packages/setuptools/_vendor/typeguard/py.typed +0 -0
  1471. venv/Lib/site-packages/setuptools/_vendor/typing_extensions.py +3641 -0
  1472. venv/Lib/site-packages/setuptools/_vendor/wheel/__init__.py +3 -0
  1473. venv/Lib/site-packages/setuptools/_vendor/wheel/__main__.py +23 -0
  1474. venv/Lib/site-packages/setuptools/_vendor/wheel/_bdist_wheel.py +613 -0
  1475. venv/Lib/site-packages/setuptools/_vendor/wheel/_setuptools_logging.py +26 -0
  1476. venv/Lib/site-packages/setuptools/_vendor/wheel/bdist_wheel.py +26 -0
  1477. venv/Lib/site-packages/setuptools/_vendor/wheel/cli/__init__.py +155 -0
  1478. venv/Lib/site-packages/setuptools/_vendor/wheel/cli/convert.py +332 -0
  1479. venv/Lib/site-packages/setuptools/_vendor/wheel/cli/pack.py +85 -0
  1480. venv/Lib/site-packages/setuptools/_vendor/wheel/cli/tags.py +139 -0
  1481. venv/Lib/site-packages/setuptools/_vendor/wheel/cli/unpack.py +30 -0
  1482. venv/Lib/site-packages/setuptools/_vendor/wheel/macosx_libfile.py +482 -0
  1483. venv/Lib/site-packages/setuptools/_vendor/wheel/metadata.py +183 -0
  1484. venv/Lib/site-packages/setuptools/_vendor/wheel/util.py +17 -0
  1485. venv/Lib/site-packages/setuptools/_vendor/wheel/vendored/__init__.py +0 -0
  1486. venv/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/__init__.py +0 -0
  1487. venv/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/_elffile.py +108 -0
  1488. venv/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/_manylinux.py +260 -0
  1489. venv/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/_musllinux.py +83 -0
  1490. venv/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/_parser.py +356 -0
  1491. venv/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/_structures.py +61 -0
  1492. venv/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/_tokenizer.py +192 -0
  1493. venv/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/markers.py +253 -0
  1494. venv/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/requirements.py +90 -0
  1495. venv/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/specifiers.py +1011 -0
  1496. venv/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/tags.py +571 -0
  1497. venv/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/utils.py +172 -0
  1498. venv/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/version.py +561 -0
  1499. venv/Lib/site-packages/setuptools/_vendor/wheel/wheelfile.py +227 -0
  1500. venv/Lib/site-packages/setuptools/_vendor/zipp/__init__.py +501 -0
  1501. venv/Lib/site-packages/setuptools/_vendor/zipp/compat/__init__.py +0 -0
  1502. venv/Lib/site-packages/setuptools/_vendor/zipp/compat/py310.py +11 -0
  1503. venv/Lib/site-packages/setuptools/_vendor/zipp/glob.py +106 -0
  1504. venv/Lib/site-packages/setuptools/archive_util.py +219 -0
  1505. venv/Lib/site-packages/setuptools/build_meta.py +548 -0
  1506. venv/Lib/site-packages/setuptools/command/__init__.py +21 -0
  1507. venv/Lib/site-packages/setuptools/command/_requirestxt.py +131 -0
  1508. venv/Lib/site-packages/setuptools/command/alias.py +77 -0
  1509. venv/Lib/site-packages/setuptools/command/bdist_egg.py +477 -0
  1510. venv/Lib/site-packages/setuptools/command/bdist_rpm.py +42 -0
  1511. venv/Lib/site-packages/setuptools/command/bdist_wheel.py +604 -0
  1512. venv/Lib/site-packages/setuptools/command/build.py +135 -0
  1513. venv/Lib/site-packages/setuptools/command/build_clib.py +103 -0
  1514. venv/Lib/site-packages/setuptools/command/build_ext.py +470 -0
  1515. venv/Lib/site-packages/setuptools/command/build_py.py +400 -0
  1516. venv/Lib/site-packages/setuptools/command/develop.py +55 -0
  1517. venv/Lib/site-packages/setuptools/command/dist_info.py +103 -0
  1518. venv/Lib/site-packages/setuptools/command/easy_install.py +30 -0
  1519. venv/Lib/site-packages/setuptools/command/editable_wheel.py +908 -0
  1520. venv/Lib/site-packages/setuptools/command/egg_info.py +718 -0
  1521. venv/Lib/site-packages/setuptools/command/install.py +131 -0
  1522. venv/Lib/site-packages/setuptools/command/install_egg_info.py +58 -0
  1523. venv/Lib/site-packages/setuptools/command/install_lib.py +137 -0
  1524. venv/Lib/site-packages/setuptools/command/install_scripts.py +67 -0
  1525. venv/Lib/site-packages/setuptools/command/rotate.py +65 -0
  1526. venv/Lib/site-packages/setuptools/command/saveopts.py +21 -0
  1527. venv/Lib/site-packages/setuptools/command/sdist.py +217 -0
  1528. venv/Lib/site-packages/setuptools/command/setopt.py +141 -0
  1529. venv/Lib/site-packages/setuptools/command/test.py +45 -0
  1530. venv/Lib/site-packages/setuptools/compat/__init__.py +0 -0
  1531. venv/Lib/site-packages/setuptools/compat/py310.py +20 -0
  1532. venv/Lib/site-packages/setuptools/compat/py311.py +27 -0
  1533. venv/Lib/site-packages/setuptools/compat/py312.py +13 -0
  1534. venv/Lib/site-packages/setuptools/compat/py39.py +9 -0
  1535. venv/Lib/site-packages/setuptools/config/__init__.py +43 -0
  1536. venv/Lib/site-packages/setuptools/config/_apply_pyprojecttoml.py +526 -0
  1537. venv/Lib/site-packages/setuptools/config/_validate_pyproject/__init__.py +34 -0
  1538. venv/Lib/site-packages/setuptools/config/_validate_pyproject/error_reporting.py +336 -0
  1539. venv/Lib/site-packages/setuptools/config/_validate_pyproject/extra_validations.py +82 -0
  1540. venv/Lib/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_exceptions.py +51 -0
  1541. venv/Lib/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_validations.py +1412 -0
  1542. venv/Lib/site-packages/setuptools/config/_validate_pyproject/formats.py +402 -0
  1543. venv/Lib/site-packages/setuptools/config/expand.py +452 -0
  1544. venv/Lib/site-packages/setuptools/config/pyprojecttoml.py +468 -0
  1545. venv/Lib/site-packages/setuptools/config/setupcfg.py +780 -0
  1546. venv/Lib/site-packages/setuptools/depends.py +185 -0
  1547. venv/Lib/site-packages/setuptools/discovery.py +614 -0
  1548. venv/Lib/site-packages/setuptools/dist.py +1119 -0
  1549. venv/Lib/site-packages/setuptools/errors.py +67 -0
  1550. venv/Lib/site-packages/setuptools/extension.py +177 -0
  1551. venv/Lib/site-packages/setuptools/glob.py +185 -0
  1552. venv/Lib/site-packages/setuptools/installer.py +155 -0
  1553. venv/Lib/site-packages/setuptools/launch.py +36 -0
  1554. venv/Lib/site-packages/setuptools/logging.py +40 -0
  1555. venv/Lib/site-packages/setuptools/modified.py +18 -0
  1556. venv/Lib/site-packages/setuptools/monkey.py +126 -0
  1557. venv/Lib/site-packages/setuptools/msvc.py +1536 -0
  1558. venv/Lib/site-packages/setuptools/namespaces.py +106 -0
  1559. venv/Lib/site-packages/setuptools/tests/__init__.py +13 -0
  1560. venv/Lib/site-packages/setuptools/tests/compat/__init__.py +0 -0
  1561. venv/Lib/site-packages/setuptools/tests/compat/py39.py +3 -0
  1562. venv/Lib/site-packages/setuptools/tests/config/__init__.py +0 -0
  1563. venv/Lib/site-packages/setuptools/tests/config/downloads/__init__.py +59 -0
  1564. venv/Lib/site-packages/setuptools/tests/config/downloads/preload.py +18 -0
  1565. venv/Lib/site-packages/setuptools/tests/config/test_apply_pyprojecttoml.py +772 -0
  1566. venv/Lib/site-packages/setuptools/tests/config/test_expand.py +247 -0
  1567. venv/Lib/site-packages/setuptools/tests/config/test_pyprojecttoml.py +396 -0
  1568. venv/Lib/site-packages/setuptools/tests/config/test_pyprojecttoml_dynamic_deps.py +109 -0
  1569. venv/Lib/site-packages/setuptools/tests/config/test_setupcfg.py +980 -0
  1570. venv/Lib/site-packages/setuptools/tests/contexts.py +131 -0
  1571. venv/Lib/site-packages/setuptools/tests/environment.py +95 -0
  1572. venv/Lib/site-packages/setuptools/tests/fixtures.py +392 -0
  1573. venv/Lib/site-packages/setuptools/tests/integration/__init__.py +0 -0
  1574. venv/Lib/site-packages/setuptools/tests/integration/helpers.py +77 -0
  1575. venv/Lib/site-packages/setuptools/tests/integration/test_pbr.py +20 -0
  1576. venv/Lib/site-packages/setuptools/tests/integration/test_pip_install_sdist.py +223 -0
  1577. venv/Lib/site-packages/setuptools/tests/mod_with_constant.py +1 -0
  1578. venv/Lib/site-packages/setuptools/tests/namespaces.py +90 -0
  1579. venv/Lib/site-packages/setuptools/tests/script-with-bom.py +1 -0
  1580. venv/Lib/site-packages/setuptools/tests/test_archive_util.py +36 -0
  1581. venv/Lib/site-packages/setuptools/tests/test_bdist_deprecations.py +28 -0
  1582. venv/Lib/site-packages/setuptools/tests/test_bdist_egg.py +73 -0
  1583. venv/Lib/site-packages/setuptools/tests/test_bdist_wheel.py +708 -0
  1584. venv/Lib/site-packages/setuptools/tests/test_build.py +33 -0
  1585. venv/Lib/site-packages/setuptools/tests/test_build_clib.py +84 -0
  1586. venv/Lib/site-packages/setuptools/tests/test_build_ext.py +293 -0
  1587. venv/Lib/site-packages/setuptools/tests/test_build_meta.py +959 -0
  1588. venv/Lib/site-packages/setuptools/tests/test_build_py.py +480 -0
  1589. venv/Lib/site-packages/setuptools/tests/test_config_discovery.py +647 -0
  1590. venv/Lib/site-packages/setuptools/tests/test_core_metadata.py +622 -0
  1591. venv/Lib/site-packages/setuptools/tests/test_depends.py +15 -0
  1592. venv/Lib/site-packages/setuptools/tests/test_develop.py +112 -0
  1593. venv/Lib/site-packages/setuptools/tests/test_dist.py +278 -0
  1594. venv/Lib/site-packages/setuptools/tests/test_dist_info.py +147 -0
  1595. venv/Lib/site-packages/setuptools/tests/test_distutils_adoption.py +198 -0
  1596. venv/Lib/site-packages/setuptools/tests/test_editable_install.py +1263 -0
  1597. venv/Lib/site-packages/setuptools/tests/test_egg_info.py +1306 -0
  1598. venv/Lib/site-packages/setuptools/tests/test_extern.py +15 -0
  1599. venv/Lib/site-packages/setuptools/tests/test_find_packages.py +218 -0
  1600. venv/Lib/site-packages/setuptools/tests/test_find_py_modules.py +73 -0
  1601. venv/Lib/site-packages/setuptools/tests/test_glob.py +45 -0
  1602. venv/Lib/site-packages/setuptools/tests/test_install_scripts.py +89 -0
  1603. venv/Lib/site-packages/setuptools/tests/test_logging.py +76 -0
  1604. venv/Lib/site-packages/setuptools/tests/test_manifest.py +622 -0
  1605. venv/Lib/site-packages/setuptools/tests/test_namespaces.py +138 -0
  1606. venv/Lib/site-packages/setuptools/tests/test_scripts.py +12 -0
  1607. venv/Lib/site-packages/setuptools/tests/test_sdist.py +984 -0
  1608. venv/Lib/site-packages/setuptools/tests/test_setopt.py +40 -0
  1609. venv/Lib/site-packages/setuptools/tests/test_setuptools.py +290 -0
  1610. venv/Lib/site-packages/setuptools/tests/test_shutil_wrapper.py +23 -0
  1611. venv/Lib/site-packages/setuptools/tests/test_unicode_utils.py +10 -0
  1612. venv/Lib/site-packages/setuptools/tests/test_virtualenv.py +113 -0
  1613. venv/Lib/site-packages/setuptools/tests/test_warnings.py +106 -0
  1614. venv/Lib/site-packages/setuptools/tests/test_wheel.py +690 -0
  1615. venv/Lib/site-packages/setuptools/tests/test_windows_wrappers.py +258 -0
  1616. venv/Lib/site-packages/setuptools/tests/text.py +4 -0
  1617. venv/Lib/site-packages/setuptools/tests/textwrap.py +6 -0
  1618. venv/Lib/site-packages/setuptools/unicode_utils.py +102 -0
  1619. venv/Lib/site-packages/setuptools/version.py +6 -0
  1620. venv/Lib/site-packages/setuptools/warnings.py +110 -0
  1621. venv/Lib/site-packages/setuptools/wheel.py +261 -0
  1622. venv/Lib/site-packages/setuptools/windows_support.py +30 -0
  1623. venv/Lib/site-packages/twine/__init__.py +54 -0
  1624. venv/Lib/site-packages/twine/__main__.py +54 -0
  1625. venv/Lib/site-packages/twine/auth.py +307 -0
  1626. venv/Lib/site-packages/twine/cli.py +139 -0
  1627. venv/Lib/site-packages/twine/commands/__init__.py +93 -0
  1628. venv/Lib/site-packages/twine/commands/check.py +195 -0
  1629. venv/Lib/site-packages/twine/commands/register.py +87 -0
  1630. venv/Lib/site-packages/twine/commands/upload.py +253 -0
  1631. venv/Lib/site-packages/twine/distribution.py +8 -0
  1632. venv/Lib/site-packages/twine/exceptions.py +175 -0
  1633. venv/Lib/site-packages/twine/package.py +403 -0
  1634. venv/Lib/site-packages/twine/py.typed +0 -0
  1635. venv/Lib/site-packages/twine/repository.py +246 -0
  1636. venv/Lib/site-packages/twine/sdist.py +83 -0
  1637. venv/Lib/site-packages/twine/settings.py +360 -0
  1638. venv/Lib/site-packages/twine/utils.py +387 -0
  1639. venv/Lib/site-packages/twine/wheel.py +81 -0
  1640. venv/Lib/site-packages/urllib3/__init__.py +211 -0
  1641. venv/Lib/site-packages/urllib3/_base_connection.py +165 -0
  1642. venv/Lib/site-packages/urllib3/_collections.py +479 -0
  1643. venv/Lib/site-packages/urllib3/_request_methods.py +278 -0
  1644. venv/Lib/site-packages/urllib3/_version.py +21 -0
  1645. venv/Lib/site-packages/urllib3/connection.py +1093 -0
  1646. venv/Lib/site-packages/urllib3/connectionpool.py +1178 -0
  1647. venv/Lib/site-packages/urllib3/contrib/__init__.py +0 -0
  1648. venv/Lib/site-packages/urllib3/contrib/emscripten/__init__.py +16 -0
  1649. venv/Lib/site-packages/urllib3/contrib/emscripten/connection.py +255 -0
  1650. venv/Lib/site-packages/urllib3/contrib/emscripten/fetch.py +728 -0
  1651. venv/Lib/site-packages/urllib3/contrib/emscripten/request.py +22 -0
  1652. venv/Lib/site-packages/urllib3/contrib/emscripten/response.py +277 -0
  1653. venv/Lib/site-packages/urllib3/contrib/pyopenssl.py +564 -0
  1654. venv/Lib/site-packages/urllib3/contrib/socks.py +228 -0
  1655. venv/Lib/site-packages/urllib3/exceptions.py +335 -0
  1656. venv/Lib/site-packages/urllib3/fields.py +341 -0
  1657. venv/Lib/site-packages/urllib3/filepost.py +89 -0
  1658. venv/Lib/site-packages/urllib3/http2/__init__.py +53 -0
  1659. venv/Lib/site-packages/urllib3/http2/connection.py +356 -0
  1660. venv/Lib/site-packages/urllib3/http2/probe.py +87 -0
  1661. venv/Lib/site-packages/urllib3/poolmanager.py +653 -0
  1662. venv/Lib/site-packages/urllib3/py.typed +2 -0
  1663. venv/Lib/site-packages/urllib3/response.py +1307 -0
  1664. venv/Lib/site-packages/urllib3/util/__init__.py +42 -0
  1665. venv/Lib/site-packages/urllib3/util/connection.py +137 -0
  1666. venv/Lib/site-packages/urllib3/util/proxy.py +43 -0
  1667. venv/Lib/site-packages/urllib3/util/request.py +266 -0
  1668. venv/Lib/site-packages/urllib3/util/response.py +101 -0
  1669. venv/Lib/site-packages/urllib3/util/retry.py +533 -0
  1670. venv/Lib/site-packages/urllib3/util/ssl_.py +524 -0
  1671. venv/Lib/site-packages/urllib3/util/ssl_match_hostname.py +159 -0
  1672. venv/Lib/site-packages/urllib3/util/ssltransport.py +271 -0
  1673. venv/Lib/site-packages/urllib3/util/timeout.py +275 -0
  1674. venv/Lib/site-packages/urllib3/util/url.py +469 -0
  1675. venv/Lib/site-packages/urllib3/util/util.py +42 -0
  1676. venv/Lib/site-packages/urllib3/util/wait.py +124 -0
  1677. venv/Lib/site-packages/win32ctypes/__init__.py +8 -0
  1678. venv/Lib/site-packages/win32ctypes/core/__init__.py +60 -0
  1679. venv/Lib/site-packages/win32ctypes/core/_winerrors.py +9 -0
  1680. venv/Lib/site-packages/win32ctypes/core/cffi/__init__.py +11 -0
  1681. venv/Lib/site-packages/win32ctypes/core/cffi/_authentication.py +172 -0
  1682. venv/Lib/site-packages/win32ctypes/core/cffi/_common.py +29 -0
  1683. venv/Lib/site-packages/win32ctypes/core/cffi/_dll.py +30 -0
  1684. venv/Lib/site-packages/win32ctypes/core/cffi/_nl_support.py +18 -0
  1685. venv/Lib/site-packages/win32ctypes/core/cffi/_resource.py +132 -0
  1686. venv/Lib/site-packages/win32ctypes/core/cffi/_system_information.py +32 -0
  1687. venv/Lib/site-packages/win32ctypes/core/cffi/_time.py +18 -0
  1688. venv/Lib/site-packages/win32ctypes/core/cffi/_util.py +105 -0
  1689. venv/Lib/site-packages/win32ctypes/core/compat.py +10 -0
  1690. venv/Lib/site-packages/win32ctypes/core/ctypes/__init__.py +11 -0
  1691. venv/Lib/site-packages/win32ctypes/core/ctypes/_authentication.py +122 -0
  1692. venv/Lib/site-packages/win32ctypes/core/ctypes/_common.py +53 -0
  1693. venv/Lib/site-packages/win32ctypes/core/ctypes/_dll.py +21 -0
  1694. venv/Lib/site-packages/win32ctypes/core/ctypes/_nl_support.py +12 -0
  1695. venv/Lib/site-packages/win32ctypes/core/ctypes/_resource.py +148 -0
  1696. venv/Lib/site-packages/win32ctypes/core/ctypes/_system_information.py +36 -0
  1697. venv/Lib/site-packages/win32ctypes/core/ctypes/_time.py +15 -0
  1698. venv/Lib/site-packages/win32ctypes/core/ctypes/_util.py +78 -0
  1699. venv/Lib/site-packages/win32ctypes/pywin32/__init__.py +12 -0
  1700. venv/Lib/site-packages/win32ctypes/pywin32/pywintypes.py +67 -0
  1701. venv/Lib/site-packages/win32ctypes/pywin32/win32api.py +294 -0
  1702. venv/Lib/site-packages/win32ctypes/pywin32/win32cred.py +145 -0
  1703. venv/Lib/site-packages/win32ctypes/pywintypes.py +13 -0
  1704. venv/Lib/site-packages/win32ctypes/tests/__init__.py +21 -0
  1705. venv/Lib/site-packages/win32ctypes/tests/test_backends.py +36 -0
  1706. venv/Lib/site-packages/win32ctypes/tests/test_win32api.py +304 -0
  1707. venv/Lib/site-packages/win32ctypes/tests/test_win32cred.py +230 -0
  1708. venv/Lib/site-packages/win32ctypes/version.py +1 -0
  1709. venv/Lib/site-packages/win32ctypes/win32api.py +13 -0
  1710. venv/Lib/site-packages/win32ctypes/win32cred.py +13 -0
  1711. android_notify-1.60.1.dist-info/RECORD +0 -13
  1712. {android_notify-1.60.1.dist-info → android_notify-1.60.2.dist-info}/WHEEL +0 -0
@@ -0,0 +1,1471 @@
1
+ """Imported from the recipes section of the itertools documentation.
2
+
3
+ All functions taken from the recipes section of the itertools library docs
4
+ [1]_.
5
+ Some backward-compatible usability improvements have been made.
6
+
7
+ .. [1] http://docs.python.org/library/itertools.html#recipes
8
+
9
+ """
10
+
11
+ import random
12
+
13
+ from bisect import bisect_left, insort
14
+ from collections import deque
15
+ from contextlib import suppress
16
+ from functools import lru_cache, partial, reduce
17
+ from heapq import heappush, heappushpop
18
+ from itertools import (
19
+ accumulate,
20
+ chain,
21
+ combinations,
22
+ compress,
23
+ count,
24
+ cycle,
25
+ groupby,
26
+ islice,
27
+ product,
28
+ repeat,
29
+ starmap,
30
+ takewhile,
31
+ tee,
32
+ zip_longest,
33
+ )
34
+ from math import prod, comb, isqrt, gcd
35
+ from operator import mul, not_, itemgetter, getitem, index
36
+ from random import randrange, sample, choice
37
+ from sys import hexversion
38
+
39
+ __all__ = [
40
+ 'all_equal',
41
+ 'batched',
42
+ 'before_and_after',
43
+ 'consume',
44
+ 'convolve',
45
+ 'dotproduct',
46
+ 'first_true',
47
+ 'factor',
48
+ 'flatten',
49
+ 'grouper',
50
+ 'is_prime',
51
+ 'iter_except',
52
+ 'iter_index',
53
+ 'loops',
54
+ 'matmul',
55
+ 'multinomial',
56
+ 'ncycles',
57
+ 'nth',
58
+ 'nth_combination',
59
+ 'padnone',
60
+ 'pad_none',
61
+ 'pairwise',
62
+ 'partition',
63
+ 'polynomial_eval',
64
+ 'polynomial_from_roots',
65
+ 'polynomial_derivative',
66
+ 'powerset',
67
+ 'prepend',
68
+ 'quantify',
69
+ 'reshape',
70
+ 'random_combination_with_replacement',
71
+ 'random_combination',
72
+ 'random_permutation',
73
+ 'random_product',
74
+ 'repeatfunc',
75
+ 'roundrobin',
76
+ 'running_median',
77
+ 'sieve',
78
+ 'sliding_window',
79
+ 'subslices',
80
+ 'sum_of_squares',
81
+ 'tabulate',
82
+ 'tail',
83
+ 'take',
84
+ 'totient',
85
+ 'transpose',
86
+ 'triplewise',
87
+ 'unique',
88
+ 'unique_everseen',
89
+ 'unique_justseen',
90
+ ]
91
+
92
+ _marker = object()
93
+
94
+
95
+ # zip with strict is available for Python 3.10+
96
+ try:
97
+ zip(strict=True)
98
+ except TypeError: # pragma: no cover
99
+ _zip_strict = zip
100
+ else: # pragma: no cover
101
+ _zip_strict = partial(zip, strict=True)
102
+
103
+
104
+ # math.sumprod is available for Python 3.12+
105
+ try:
106
+ from math import sumprod as _sumprod
107
+ except ImportError: # pragma: no cover
108
+ _sumprod = lambda x, y: dotproduct(x, y)
109
+
110
+
111
+ # heapq max-heap functions are available for Python 3.14+
112
+ try:
113
+ from heapq import heappush_max, heappushpop_max
114
+ except ImportError: # pragma: no cover
115
+ _max_heap_available = False
116
+ else: # pragma: no cover
117
+ _max_heap_available = True
118
+
119
+
120
+ def take(n, iterable):
121
+ """Return first *n* items of the *iterable* as a list.
122
+
123
+ >>> take(3, range(10))
124
+ [0, 1, 2]
125
+
126
+ If there are fewer than *n* items in the iterable, all of them are
127
+ returned.
128
+
129
+ >>> take(10, range(3))
130
+ [0, 1, 2]
131
+
132
+ """
133
+ return list(islice(iterable, n))
134
+
135
+
136
+ def tabulate(function, start=0):
137
+ """Return an iterator over the results of ``func(start)``,
138
+ ``func(start + 1)``, ``func(start + 2)``...
139
+
140
+ *func* should be a function that accepts one integer argument.
141
+
142
+ If *start* is not specified it defaults to 0. It will be incremented each
143
+ time the iterator is advanced.
144
+
145
+ >>> square = lambda x: x ** 2
146
+ >>> iterator = tabulate(square, -3)
147
+ >>> take(4, iterator)
148
+ [9, 4, 1, 0]
149
+
150
+ """
151
+ return map(function, count(start))
152
+
153
+
154
+ def tail(n, iterable):
155
+ """Return an iterator over the last *n* items of *iterable*.
156
+
157
+ >>> t = tail(3, 'ABCDEFG')
158
+ >>> list(t)
159
+ ['E', 'F', 'G']
160
+
161
+ """
162
+ try:
163
+ size = len(iterable)
164
+ except TypeError:
165
+ return iter(deque(iterable, maxlen=n))
166
+ else:
167
+ return islice(iterable, max(0, size - n), None)
168
+
169
+
170
+ def consume(iterator, n=None):
171
+ """Advance *iterable* by *n* steps. If *n* is ``None``, consume it
172
+ entirely.
173
+
174
+ Efficiently exhausts an iterator without returning values. Defaults to
175
+ consuming the whole iterator, but an optional second argument may be
176
+ provided to limit consumption.
177
+
178
+ >>> i = (x for x in range(10))
179
+ >>> next(i)
180
+ 0
181
+ >>> consume(i, 3)
182
+ >>> next(i)
183
+ 4
184
+ >>> consume(i)
185
+ >>> next(i)
186
+ Traceback (most recent call last):
187
+ File "<stdin>", line 1, in <module>
188
+ StopIteration
189
+
190
+ If the iterator has fewer items remaining than the provided limit, the
191
+ whole iterator will be consumed.
192
+
193
+ >>> i = (x for x in range(3))
194
+ >>> consume(i, 5)
195
+ >>> next(i)
196
+ Traceback (most recent call last):
197
+ File "<stdin>", line 1, in <module>
198
+ StopIteration
199
+
200
+ """
201
+ # Use functions that consume iterators at C speed.
202
+ if n is None:
203
+ # feed the entire iterator into a zero-length deque
204
+ deque(iterator, maxlen=0)
205
+ else:
206
+ # advance to the empty slice starting at position n
207
+ next(islice(iterator, n, n), None)
208
+
209
+
210
+ def nth(iterable, n, default=None):
211
+ """Returns the nth item or a default value.
212
+
213
+ >>> l = range(10)
214
+ >>> nth(l, 3)
215
+ 3
216
+ >>> nth(l, 20, "zebra")
217
+ 'zebra'
218
+
219
+ """
220
+ return next(islice(iterable, n, None), default)
221
+
222
+
223
+ def all_equal(iterable, key=None):
224
+ """
225
+ Returns ``True`` if all the elements are equal to each other.
226
+
227
+ >>> all_equal('aaaa')
228
+ True
229
+ >>> all_equal('aaab')
230
+ False
231
+
232
+ A function that accepts a single argument and returns a transformed version
233
+ of each input item can be specified with *key*:
234
+
235
+ >>> all_equal('AaaA', key=str.casefold)
236
+ True
237
+ >>> all_equal([1, 2, 3], key=lambda x: x < 10)
238
+ True
239
+
240
+ """
241
+ iterator = groupby(iterable, key)
242
+ for first in iterator:
243
+ for second in iterator:
244
+ return False
245
+ return True
246
+ return True
247
+
248
+
249
+ def quantify(iterable, pred=bool):
250
+ """Return the how many times the predicate is true.
251
+
252
+ >>> quantify([True, False, True])
253
+ 2
254
+
255
+ """
256
+ return sum(map(pred, iterable))
257
+
258
+
259
+ def pad_none(iterable):
260
+ """Returns the sequence of elements and then returns ``None`` indefinitely.
261
+
262
+ >>> take(5, pad_none(range(3)))
263
+ [0, 1, 2, None, None]
264
+
265
+ Useful for emulating the behavior of the built-in :func:`map` function.
266
+
267
+ See also :func:`padded`.
268
+
269
+ """
270
+ return chain(iterable, repeat(None))
271
+
272
+
273
+ padnone = pad_none
274
+
275
+
276
+ def ncycles(iterable, n):
277
+ """Returns the sequence elements *n* times
278
+
279
+ >>> list(ncycles(["a", "b"], 3))
280
+ ['a', 'b', 'a', 'b', 'a', 'b']
281
+
282
+ """
283
+ return chain.from_iterable(repeat(tuple(iterable), n))
284
+
285
+
286
+ def dotproduct(vec1, vec2):
287
+ """Returns the dot product of the two iterables.
288
+
289
+ >>> dotproduct([10, 15, 12], [0.65, 0.80, 1.25])
290
+ 33.5
291
+ >>> 10 * 0.65 + 15 * 0.80 + 12 * 1.25
292
+ 33.5
293
+
294
+ In Python 3.12 and later, use ``math.sumprod()`` instead.
295
+ """
296
+ return sum(map(mul, vec1, vec2))
297
+
298
+
299
+ def flatten(listOfLists):
300
+ """Return an iterator flattening one level of nesting in a list of lists.
301
+
302
+ >>> list(flatten([[0, 1], [2, 3]]))
303
+ [0, 1, 2, 3]
304
+
305
+ See also :func:`collapse`, which can flatten multiple levels of nesting.
306
+
307
+ """
308
+ return chain.from_iterable(listOfLists)
309
+
310
+
311
+ def repeatfunc(func, times=None, *args):
312
+ """Call *func* with *args* repeatedly, returning an iterable over the
313
+ results.
314
+
315
+ If *times* is specified, the iterable will terminate after that many
316
+ repetitions:
317
+
318
+ >>> from operator import add
319
+ >>> times = 4
320
+ >>> args = 3, 5
321
+ >>> list(repeatfunc(add, times, *args))
322
+ [8, 8, 8, 8]
323
+
324
+ If *times* is ``None`` the iterable will not terminate:
325
+
326
+ >>> from random import randrange
327
+ >>> times = None
328
+ >>> args = 1, 11
329
+ >>> take(6, repeatfunc(randrange, times, *args)) # doctest:+SKIP
330
+ [2, 4, 8, 1, 8, 4]
331
+
332
+ """
333
+ if times is None:
334
+ return starmap(func, repeat(args))
335
+ return starmap(func, repeat(args, times))
336
+
337
+
338
+ def _pairwise(iterable):
339
+ """Returns an iterator of paired items, overlapping, from the original
340
+
341
+ >>> take(4, pairwise(count()))
342
+ [(0, 1), (1, 2), (2, 3), (3, 4)]
343
+
344
+ On Python 3.10 and above, this is an alias for :func:`itertools.pairwise`.
345
+
346
+ """
347
+ a, b = tee(iterable)
348
+ next(b, None)
349
+ return zip(a, b)
350
+
351
+
352
+ try:
353
+ from itertools import pairwise as itertools_pairwise
354
+ except ImportError: # pragma: no cover
355
+ pairwise = _pairwise
356
+ else: # pragma: no cover
357
+
358
+ def pairwise(iterable):
359
+ return itertools_pairwise(iterable)
360
+
361
+ pairwise.__doc__ = _pairwise.__doc__
362
+
363
+
364
+ class UnequalIterablesError(ValueError):
365
+ def __init__(self, details=None):
366
+ msg = 'Iterables have different lengths'
367
+ if details is not None:
368
+ msg += (': index 0 has length {}; index {} has length {}').format(
369
+ *details
370
+ )
371
+
372
+ super().__init__(msg)
373
+
374
+
375
+ def _zip_equal_generator(iterables):
376
+ for combo in zip_longest(*iterables, fillvalue=_marker):
377
+ for val in combo:
378
+ if val is _marker:
379
+ raise UnequalIterablesError()
380
+ yield combo
381
+
382
+
383
+ def _zip_equal(*iterables):
384
+ # Check whether the iterables are all the same size.
385
+ try:
386
+ first_size = len(iterables[0])
387
+ for i, it in enumerate(iterables[1:], 1):
388
+ size = len(it)
389
+ if size != first_size:
390
+ raise UnequalIterablesError(details=(first_size, i, size))
391
+ # All sizes are equal, we can use the built-in zip.
392
+ return zip(*iterables)
393
+ # If any one of the iterables didn't have a length, start reading
394
+ # them until one runs out.
395
+ except TypeError:
396
+ return _zip_equal_generator(iterables)
397
+
398
+
399
+ def grouper(iterable, n, incomplete='fill', fillvalue=None):
400
+ """Group elements from *iterable* into fixed-length groups of length *n*.
401
+
402
+ >>> list(grouper('ABCDEF', 3))
403
+ [('A', 'B', 'C'), ('D', 'E', 'F')]
404
+
405
+ The keyword arguments *incomplete* and *fillvalue* control what happens for
406
+ iterables whose length is not a multiple of *n*.
407
+
408
+ When *incomplete* is `'fill'`, the last group will contain instances of
409
+ *fillvalue*.
410
+
411
+ >>> list(grouper('ABCDEFG', 3, incomplete='fill', fillvalue='x'))
412
+ [('A', 'B', 'C'), ('D', 'E', 'F'), ('G', 'x', 'x')]
413
+
414
+ When *incomplete* is `'ignore'`, the last group will not be emitted.
415
+
416
+ >>> list(grouper('ABCDEFG', 3, incomplete='ignore', fillvalue='x'))
417
+ [('A', 'B', 'C'), ('D', 'E', 'F')]
418
+
419
+ When *incomplete* is `'strict'`, a subclass of `ValueError` will be raised.
420
+
421
+ >>> iterator = grouper('ABCDEFG', 3, incomplete='strict')
422
+ >>> list(iterator) # doctest: +IGNORE_EXCEPTION_DETAIL
423
+ Traceback (most recent call last):
424
+ ...
425
+ UnequalIterablesError
426
+
427
+ """
428
+ iterators = [iter(iterable)] * n
429
+ if incomplete == 'fill':
430
+ return zip_longest(*iterators, fillvalue=fillvalue)
431
+ if incomplete == 'strict':
432
+ return _zip_equal(*iterators)
433
+ if incomplete == 'ignore':
434
+ return zip(*iterators)
435
+ else:
436
+ raise ValueError('Expected fill, strict, or ignore')
437
+
438
+
439
+ def roundrobin(*iterables):
440
+ """Visit input iterables in a cycle until each is exhausted.
441
+
442
+ >>> list(roundrobin('ABC', 'D', 'EF'))
443
+ ['A', 'D', 'E', 'B', 'F', 'C']
444
+
445
+ This function produces the same output as :func:`interleave_longest`, but
446
+ may perform better for some inputs (in particular when the number of
447
+ iterables is small).
448
+
449
+ """
450
+ # Algorithm credited to George Sakkis
451
+ iterators = map(iter, iterables)
452
+ for num_active in range(len(iterables), 0, -1):
453
+ iterators = cycle(islice(iterators, num_active))
454
+ yield from map(next, iterators)
455
+
456
+
457
+ def partition(pred, iterable):
458
+ """
459
+ Returns a 2-tuple of iterables derived from the input iterable.
460
+ The first yields the items that have ``pred(item) == False``.
461
+ The second yields the items that have ``pred(item) == True``.
462
+
463
+ >>> is_odd = lambda x: x % 2 != 0
464
+ >>> iterable = range(10)
465
+ >>> even_items, odd_items = partition(is_odd, iterable)
466
+ >>> list(even_items), list(odd_items)
467
+ ([0, 2, 4, 6, 8], [1, 3, 5, 7, 9])
468
+
469
+ If *pred* is None, :func:`bool` is used.
470
+
471
+ >>> iterable = [0, 1, False, True, '', ' ']
472
+ >>> false_items, true_items = partition(None, iterable)
473
+ >>> list(false_items), list(true_items)
474
+ ([0, False, ''], [1, True, ' '])
475
+
476
+ """
477
+ if pred is None:
478
+ pred = bool
479
+
480
+ t1, t2, p = tee(iterable, 3)
481
+ p1, p2 = tee(map(pred, p))
482
+ return (compress(t1, map(not_, p1)), compress(t2, p2))
483
+
484
+
485
+ def powerset(iterable):
486
+ """Yields all possible subsets of the iterable.
487
+
488
+ >>> list(powerset([1, 2, 3]))
489
+ [(), (1,), (2,), (3,), (1, 2), (1, 3), (2, 3), (1, 2, 3)]
490
+
491
+ :func:`powerset` will operate on iterables that aren't :class:`set`
492
+ instances, so repeated elements in the input will produce repeated elements
493
+ in the output.
494
+
495
+ >>> seq = [1, 1, 0]
496
+ >>> list(powerset(seq))
497
+ [(), (1,), (1,), (0,), (1, 1), (1, 0), (1, 0), (1, 1, 0)]
498
+
499
+ For a variant that efficiently yields actual :class:`set` instances, see
500
+ :func:`powerset_of_sets`.
501
+ """
502
+ s = list(iterable)
503
+ return chain.from_iterable(combinations(s, r) for r in range(len(s) + 1))
504
+
505
+
506
+ def unique_everseen(iterable, key=None):
507
+ """
508
+ Yield unique elements, preserving order.
509
+
510
+ >>> list(unique_everseen('AAAABBBCCDAABBB'))
511
+ ['A', 'B', 'C', 'D']
512
+ >>> list(unique_everseen('ABBCcAD', str.lower))
513
+ ['A', 'B', 'C', 'D']
514
+
515
+ Sequences with a mix of hashable and unhashable items can be used.
516
+ The function will be slower (i.e., `O(n^2)`) for unhashable items.
517
+
518
+ Remember that ``list`` objects are unhashable - you can use the *key*
519
+ parameter to transform the list to a tuple (which is hashable) to
520
+ avoid a slowdown.
521
+
522
+ >>> iterable = ([1, 2], [2, 3], [1, 2])
523
+ >>> list(unique_everseen(iterable)) # Slow
524
+ [[1, 2], [2, 3]]
525
+ >>> list(unique_everseen(iterable, key=tuple)) # Faster
526
+ [[1, 2], [2, 3]]
527
+
528
+ Similarly, you may want to convert unhashable ``set`` objects with
529
+ ``key=frozenset``. For ``dict`` objects,
530
+ ``key=lambda x: frozenset(x.items())`` can be used.
531
+
532
+ """
533
+ seenset = set()
534
+ seenset_add = seenset.add
535
+ seenlist = []
536
+ seenlist_add = seenlist.append
537
+ use_key = key is not None
538
+
539
+ for element in iterable:
540
+ k = key(element) if use_key else element
541
+ try:
542
+ if k not in seenset:
543
+ seenset_add(k)
544
+ yield element
545
+ except TypeError:
546
+ if k not in seenlist:
547
+ seenlist_add(k)
548
+ yield element
549
+
550
+
551
+ def unique_justseen(iterable, key=None):
552
+ """Yields elements in order, ignoring serial duplicates
553
+
554
+ >>> list(unique_justseen('AAAABBBCCDAABBB'))
555
+ ['A', 'B', 'C', 'D', 'A', 'B']
556
+ >>> list(unique_justseen('ABBCcAD', str.lower))
557
+ ['A', 'B', 'C', 'A', 'D']
558
+
559
+ """
560
+ if key is None:
561
+ return map(itemgetter(0), groupby(iterable))
562
+
563
+ return map(next, map(itemgetter(1), groupby(iterable, key)))
564
+
565
+
566
+ def unique(iterable, key=None, reverse=False):
567
+ """Yields unique elements in sorted order.
568
+
569
+ >>> list(unique([[1, 2], [3, 4], [1, 2]]))
570
+ [[1, 2], [3, 4]]
571
+
572
+ *key* and *reverse* are passed to :func:`sorted`.
573
+
574
+ >>> list(unique('ABBcCAD', str.casefold))
575
+ ['A', 'B', 'c', 'D']
576
+ >>> list(unique('ABBcCAD', str.casefold, reverse=True))
577
+ ['D', 'c', 'B', 'A']
578
+
579
+ The elements in *iterable* need not be hashable, but they must be
580
+ comparable for sorting to work.
581
+ """
582
+ sequenced = sorted(iterable, key=key, reverse=reverse)
583
+ return unique_justseen(sequenced, key=key)
584
+
585
+
586
+ def iter_except(func, exception, first=None):
587
+ """Yields results from a function repeatedly until an exception is raised.
588
+
589
+ Converts a call-until-exception interface to an iterator interface.
590
+ Like ``iter(func, sentinel)``, but uses an exception instead of a sentinel
591
+ to end the loop.
592
+
593
+ >>> l = [0, 1, 2]
594
+ >>> list(iter_except(l.pop, IndexError))
595
+ [2, 1, 0]
596
+
597
+ Multiple exceptions can be specified as a stopping condition:
598
+
599
+ >>> l = [1, 2, 3, '...', 4, 5, 6]
600
+ >>> list(iter_except(lambda: 1 + l.pop(), (IndexError, TypeError)))
601
+ [7, 6, 5]
602
+ >>> list(iter_except(lambda: 1 + l.pop(), (IndexError, TypeError)))
603
+ [4, 3, 2]
604
+ >>> list(iter_except(lambda: 1 + l.pop(), (IndexError, TypeError)))
605
+ []
606
+
607
+ """
608
+ with suppress(exception):
609
+ if first is not None:
610
+ yield first()
611
+ while True:
612
+ yield func()
613
+
614
+
615
+ def first_true(iterable, default=None, pred=None):
616
+ """
617
+ Returns the first true value in the iterable.
618
+
619
+ If no true value is found, returns *default*
620
+
621
+ If *pred* is not None, returns the first item for which
622
+ ``pred(item) == True`` .
623
+
624
+ >>> first_true(range(10))
625
+ 1
626
+ >>> first_true(range(10), pred=lambda x: x > 5)
627
+ 6
628
+ >>> first_true(range(10), default='missing', pred=lambda x: x > 9)
629
+ 'missing'
630
+
631
+ """
632
+ return next(filter(pred, iterable), default)
633
+
634
+
635
+ def random_product(*args, repeat=1):
636
+ """Draw an item at random from each of the input iterables.
637
+
638
+ >>> random_product('abc', range(4), 'XYZ') # doctest:+SKIP
639
+ ('c', 3, 'Z')
640
+
641
+ If *repeat* is provided as a keyword argument, that many items will be
642
+ drawn from each iterable.
643
+
644
+ >>> random_product('abcd', range(4), repeat=2) # doctest:+SKIP
645
+ ('a', 2, 'd', 3)
646
+
647
+ This equivalent to taking a random selection from
648
+ ``itertools.product(*args, repeat=repeat)``.
649
+
650
+ """
651
+ pools = [tuple(pool) for pool in args] * repeat
652
+ return tuple(choice(pool) for pool in pools)
653
+
654
+
655
+ def random_permutation(iterable, r=None):
656
+ """Return a random *r* length permutation of the elements in *iterable*.
657
+
658
+ If *r* is not specified or is ``None``, then *r* defaults to the length of
659
+ *iterable*.
660
+
661
+ >>> random_permutation(range(5)) # doctest:+SKIP
662
+ (3, 4, 0, 1, 2)
663
+
664
+ This equivalent to taking a random selection from
665
+ ``itertools.permutations(iterable, r)``.
666
+
667
+ """
668
+ pool = tuple(iterable)
669
+ r = len(pool) if r is None else r
670
+ return tuple(sample(pool, r))
671
+
672
+
673
+ def random_combination(iterable, r):
674
+ """Return a random *r* length subsequence of the elements in *iterable*.
675
+
676
+ >>> random_combination(range(5), 3) # doctest:+SKIP
677
+ (2, 3, 4)
678
+
679
+ This equivalent to taking a random selection from
680
+ ``itertools.combinations(iterable, r)``.
681
+
682
+ """
683
+ pool = tuple(iterable)
684
+ n = len(pool)
685
+ indices = sorted(sample(range(n), r))
686
+ return tuple(pool[i] for i in indices)
687
+
688
+
689
+ def random_combination_with_replacement(iterable, r):
690
+ """Return a random *r* length subsequence of elements in *iterable*,
691
+ allowing individual elements to be repeated.
692
+
693
+ >>> random_combination_with_replacement(range(3), 5) # doctest:+SKIP
694
+ (0, 0, 1, 2, 2)
695
+
696
+ This equivalent to taking a random selection from
697
+ ``itertools.combinations_with_replacement(iterable, r)``.
698
+
699
+ """
700
+ pool = tuple(iterable)
701
+ n = len(pool)
702
+ indices = sorted(randrange(n) for i in range(r))
703
+ return tuple(pool[i] for i in indices)
704
+
705
+
706
+ def nth_combination(iterable, r, index):
707
+ """Equivalent to ``list(combinations(iterable, r))[index]``.
708
+
709
+ The subsequences of *iterable* that are of length *r* can be ordered
710
+ lexicographically. :func:`nth_combination` computes the subsequence at
711
+ sort position *index* directly, without computing the previous
712
+ subsequences.
713
+
714
+ >>> nth_combination(range(5), 3, 5)
715
+ (0, 3, 4)
716
+
717
+ ``ValueError`` will be raised If *r* is negative or greater than the length
718
+ of *iterable*.
719
+ ``IndexError`` will be raised if the given *index* is invalid.
720
+ """
721
+ pool = tuple(iterable)
722
+ n = len(pool)
723
+ if (r < 0) or (r > n):
724
+ raise ValueError
725
+
726
+ c = 1
727
+ k = min(r, n - r)
728
+ for i in range(1, k + 1):
729
+ c = c * (n - k + i) // i
730
+
731
+ if index < 0:
732
+ index += c
733
+
734
+ if (index < 0) or (index >= c):
735
+ raise IndexError
736
+
737
+ result = []
738
+ while r:
739
+ c, n, r = c * r // n, n - 1, r - 1
740
+ while index >= c:
741
+ index -= c
742
+ c, n = c * (n - r) // n, n - 1
743
+ result.append(pool[-1 - n])
744
+
745
+ return tuple(result)
746
+
747
+
748
+ def prepend(value, iterator):
749
+ """Yield *value*, followed by the elements in *iterator*.
750
+
751
+ >>> value = '0'
752
+ >>> iterator = ['1', '2', '3']
753
+ >>> list(prepend(value, iterator))
754
+ ['0', '1', '2', '3']
755
+
756
+ To prepend multiple values, see :func:`itertools.chain`
757
+ or :func:`value_chain`.
758
+
759
+ """
760
+ return chain([value], iterator)
761
+
762
+
763
+ def convolve(signal, kernel):
764
+ """Discrete linear convolution of two iterables.
765
+ Equivalent to polynomial multiplication.
766
+
767
+ For example, multiplying ``(x² -x - 20)`` by ``(x - 3)``
768
+ gives ``(x³ -4x² -17x + 60)``.
769
+
770
+ >>> list(convolve([1, -1, -20], [1, -3]))
771
+ [1, -4, -17, 60]
772
+
773
+ Examples of popular kinds of kernels:
774
+
775
+ * The kernel ``[0.25, 0.25, 0.25, 0.25]`` computes a moving average.
776
+ For image data, this blurs the image and reduces noise.
777
+ * The kernel ``[1/2, 0, -1/2]`` estimates the first derivative of
778
+ a function evaluated at evenly spaced inputs.
779
+ * The kernel ``[1, -2, 1]`` estimates the second derivative of a
780
+ function evaluated at evenly spaced inputs.
781
+
782
+ Convolutions are mathematically commutative; however, the inputs are
783
+ evaluated differently. The signal is consumed lazily and can be
784
+ infinite. The kernel is fully consumed before the calculations begin.
785
+
786
+ Supports all numeric types: int, float, complex, Decimal, Fraction.
787
+
788
+ References:
789
+
790
+ * Article: https://betterexplained.com/articles/intuitive-convolution/
791
+ * Video by 3Blue1Brown: https://www.youtube.com/watch?v=KuXjwB4LzSA
792
+
793
+ """
794
+ # This implementation comes from an older version of the itertools
795
+ # documentation. While the newer implementation is a bit clearer,
796
+ # this one was kept because the inlined window logic is faster
797
+ # and it avoids an unnecessary deque-to-tuple conversion.
798
+ kernel = tuple(kernel)[::-1]
799
+ n = len(kernel)
800
+ window = deque([0], maxlen=n) * n
801
+ for x in chain(signal, repeat(0, n - 1)):
802
+ window.append(x)
803
+ yield _sumprod(kernel, window)
804
+
805
+
806
+ def before_and_after(predicate, it):
807
+ """A variant of :func:`takewhile` that allows complete access to the
808
+ remainder of the iterator.
809
+
810
+ >>> it = iter('ABCdEfGhI')
811
+ >>> all_upper, remainder = before_and_after(str.isupper, it)
812
+ >>> ''.join(all_upper)
813
+ 'ABC'
814
+ >>> ''.join(remainder) # takewhile() would lose the 'd'
815
+ 'dEfGhI'
816
+
817
+ Note that the first iterator must be fully consumed before the second
818
+ iterator can generate valid results.
819
+ """
820
+ trues, after = tee(it)
821
+ trues = compress(takewhile(predicate, trues), zip(after))
822
+ return trues, after
823
+
824
+
825
+ def triplewise(iterable):
826
+ """Return overlapping triplets from *iterable*.
827
+
828
+ >>> list(triplewise('ABCDE'))
829
+ [('A', 'B', 'C'), ('B', 'C', 'D'), ('C', 'D', 'E')]
830
+
831
+ """
832
+ # This deviates from the itertools documentation recipe - see
833
+ # https://github.com/more-itertools/more-itertools/issues/889
834
+ t1, t2, t3 = tee(iterable, 3)
835
+ next(t3, None)
836
+ next(t3, None)
837
+ next(t2, None)
838
+ return zip(t1, t2, t3)
839
+
840
+
841
+ def _sliding_window_islice(iterable, n):
842
+ # Fast path for small, non-zero values of n.
843
+ iterators = tee(iterable, n)
844
+ for i, iterator in enumerate(iterators):
845
+ next(islice(iterator, i, i), None)
846
+ return zip(*iterators)
847
+
848
+
849
+ def _sliding_window_deque(iterable, n):
850
+ # Normal path for other values of n.
851
+ iterator = iter(iterable)
852
+ window = deque(islice(iterator, n - 1), maxlen=n)
853
+ for x in iterator:
854
+ window.append(x)
855
+ yield tuple(window)
856
+
857
+
858
+ def sliding_window(iterable, n):
859
+ """Return a sliding window of width *n* over *iterable*.
860
+
861
+ >>> list(sliding_window(range(6), 4))
862
+ [(0, 1, 2, 3), (1, 2, 3, 4), (2, 3, 4, 5)]
863
+
864
+ If *iterable* has fewer than *n* items, then nothing is yielded:
865
+
866
+ >>> list(sliding_window(range(3), 4))
867
+ []
868
+
869
+ For a variant with more features, see :func:`windowed`.
870
+ """
871
+ if n > 20:
872
+ return _sliding_window_deque(iterable, n)
873
+ elif n > 2:
874
+ return _sliding_window_islice(iterable, n)
875
+ elif n == 2:
876
+ return pairwise(iterable)
877
+ elif n == 1:
878
+ return zip(iterable)
879
+ else:
880
+ raise ValueError(f'n should be at least one, not {n}')
881
+
882
+
883
+ def subslices(iterable):
884
+ """Return all contiguous non-empty subslices of *iterable*.
885
+
886
+ >>> list(subslices('ABC'))
887
+ [['A'], ['A', 'B'], ['A', 'B', 'C'], ['B'], ['B', 'C'], ['C']]
888
+
889
+ This is similar to :func:`substrings`, but emits items in a different
890
+ order.
891
+ """
892
+ seq = list(iterable)
893
+ slices = starmap(slice, combinations(range(len(seq) + 1), 2))
894
+ return map(getitem, repeat(seq), slices)
895
+
896
+
897
+ def polynomial_from_roots(roots):
898
+ """Compute a polynomial's coefficients from its roots.
899
+
900
+ >>> roots = [5, -4, 3] # (x - 5) * (x + 4) * (x - 3)
901
+ >>> polynomial_from_roots(roots) # x³ - 4 x² - 17 x + 60
902
+ [1, -4, -17, 60]
903
+
904
+ Note that polynomial coefficients are specified in descending power order.
905
+
906
+ Supports all numeric types: int, float, complex, Decimal, Fraction.
907
+ """
908
+
909
+ # This recipe differs from the one in itertools docs in that it
910
+ # applies list() after each call to convolve(). This avoids
911
+ # hitting stack limits with nested generators.
912
+
913
+ poly = [1]
914
+ for root in roots:
915
+ poly = list(convolve(poly, (1, -root)))
916
+ return poly
917
+
918
+
919
+ def iter_index(iterable, value, start=0, stop=None):
920
+ """Yield the index of each place in *iterable* that *value* occurs,
921
+ beginning with index *start* and ending before index *stop*.
922
+
923
+
924
+ >>> list(iter_index('AABCADEAF', 'A'))
925
+ [0, 1, 4, 7]
926
+ >>> list(iter_index('AABCADEAF', 'A', 1)) # start index is inclusive
927
+ [1, 4, 7]
928
+ >>> list(iter_index('AABCADEAF', 'A', 1, 7)) # stop index is not inclusive
929
+ [1, 4]
930
+
931
+ The behavior for non-scalar *values* matches the built-in Python types.
932
+
933
+ >>> list(iter_index('ABCDABCD', 'AB'))
934
+ [0, 4]
935
+ >>> list(iter_index([0, 1, 2, 3, 0, 1, 2, 3], [0, 1]))
936
+ []
937
+ >>> list(iter_index([[0, 1], [2, 3], [0, 1], [2, 3]], [0, 1]))
938
+ [0, 2]
939
+
940
+ See :func:`locate` for a more general means of finding the indexes
941
+ associated with particular values.
942
+
943
+ """
944
+ seq_index = getattr(iterable, 'index', None)
945
+ if seq_index is None:
946
+ # Slow path for general iterables
947
+ iterator = islice(iterable, start, stop)
948
+ for i, element in enumerate(iterator, start):
949
+ if element is value or element == value:
950
+ yield i
951
+ else:
952
+ # Fast path for sequences
953
+ stop = len(iterable) if stop is None else stop
954
+ i = start - 1
955
+ with suppress(ValueError):
956
+ while True:
957
+ yield (i := seq_index(value, i + 1, stop))
958
+
959
+
960
+ def sieve(n):
961
+ """Yield the primes less than n.
962
+
963
+ >>> list(sieve(30))
964
+ [2, 3, 5, 7, 11, 13, 17, 19, 23, 29]
965
+
966
+ """
967
+ # This implementation comes from an older version of the itertools
968
+ # documentation. The newer implementation is easier to read but is
969
+ # less lazy.
970
+ if n > 2:
971
+ yield 2
972
+ start = 3
973
+ data = bytearray((0, 1)) * (n // 2)
974
+ for p in iter_index(data, 1, start, stop=isqrt(n) + 1):
975
+ yield from iter_index(data, 1, start, p * p)
976
+ data[p * p : n : p + p] = bytes(len(range(p * p, n, p + p)))
977
+ start = p * p
978
+ yield from iter_index(data, 1, start)
979
+
980
+
981
+ def _batched(iterable, n, *, strict=False): # pragma: no cover
982
+ """Batch data into tuples of length *n*. If the number of items in
983
+ *iterable* is not divisible by *n*:
984
+ * The last batch will be shorter if *strict* is ``False``.
985
+ * :exc:`ValueError` will be raised if *strict* is ``True``.
986
+
987
+ >>> list(batched('ABCDEFG', 3))
988
+ [('A', 'B', 'C'), ('D', 'E', 'F'), ('G',)]
989
+
990
+ On Python 3.13 and above, this is an alias for :func:`itertools.batched`.
991
+ """
992
+ if n < 1:
993
+ raise ValueError('n must be at least one')
994
+ iterator = iter(iterable)
995
+ while batch := tuple(islice(iterator, n)):
996
+ if strict and len(batch) != n:
997
+ raise ValueError('batched(): incomplete batch')
998
+ yield batch
999
+
1000
+
1001
+ if hexversion >= 0x30D00A2: # pragma: no cover
1002
+ from itertools import batched as itertools_batched
1003
+
1004
+ def batched(iterable, n, *, strict=False):
1005
+ return itertools_batched(iterable, n, strict=strict)
1006
+
1007
+ batched.__doc__ = _batched.__doc__
1008
+ else: # pragma: no cover
1009
+ batched = _batched
1010
+
1011
+
1012
+ def transpose(it):
1013
+ """Swap the rows and columns of the input matrix.
1014
+
1015
+ >>> list(transpose([(1, 2, 3), (11, 22, 33)]))
1016
+ [(1, 11), (2, 22), (3, 33)]
1017
+
1018
+ The caller should ensure that the dimensions of the input are compatible.
1019
+ If the input is empty, no output will be produced.
1020
+ """
1021
+ return _zip_strict(*it)
1022
+
1023
+
1024
+ def _is_scalar(value, stringlike=(str, bytes)):
1025
+ "Scalars are bytes, strings, and non-iterables."
1026
+ try:
1027
+ iter(value)
1028
+ except TypeError:
1029
+ return True
1030
+ return isinstance(value, stringlike)
1031
+
1032
+
1033
+ def _flatten_tensor(tensor):
1034
+ "Depth-first iterator over scalars in a tensor."
1035
+ iterator = iter(tensor)
1036
+ while True:
1037
+ try:
1038
+ value = next(iterator)
1039
+ except StopIteration:
1040
+ return iterator
1041
+ iterator = chain((value,), iterator)
1042
+ if _is_scalar(value):
1043
+ return iterator
1044
+ iterator = chain.from_iterable(iterator)
1045
+
1046
+
1047
+ def reshape(matrix, shape):
1048
+ """Change the shape of a *matrix*.
1049
+
1050
+ If *shape* is an integer, the matrix must be two dimensional
1051
+ and the shape is interpreted as the desired number of columns:
1052
+
1053
+ >>> matrix = [(0, 1), (2, 3), (4, 5)]
1054
+ >>> cols = 3
1055
+ >>> list(reshape(matrix, cols))
1056
+ [(0, 1, 2), (3, 4, 5)]
1057
+
1058
+ If *shape* is a tuple (or other iterable), the input matrix can have
1059
+ any number of dimensions. It will first be flattened and then rebuilt
1060
+ to the desired shape which can also be multidimensional:
1061
+
1062
+ >>> matrix = [(0, 1), (2, 3), (4, 5)] # Start with a 3 x 2 matrix
1063
+
1064
+ >>> list(reshape(matrix, (2, 3))) # Make a 2 x 3 matrix
1065
+ [(0, 1, 2), (3, 4, 5)]
1066
+
1067
+ >>> list(reshape(matrix, (6,))) # Make a vector of length six
1068
+ [0, 1, 2, 3, 4, 5]
1069
+
1070
+ >>> list(reshape(matrix, (2, 1, 3, 1))) # Make 2 x 1 x 3 x 1 tensor
1071
+ [(((0,), (1,), (2,)),), (((3,), (4,), (5,)),)]
1072
+
1073
+ Each dimension is assumed to be uniform, either all arrays or all scalars.
1074
+ Flattening stops when the first value in a dimension is a scalar.
1075
+ Scalars are bytes, strings, and non-iterables.
1076
+ The reshape iterator stops when the requested shape is complete
1077
+ or when the input is exhausted, whichever comes first.
1078
+
1079
+ """
1080
+ if isinstance(shape, int):
1081
+ return batched(chain.from_iterable(matrix), shape)
1082
+ first_dim, *dims = shape
1083
+ scalar_stream = _flatten_tensor(matrix)
1084
+ reshaped = reduce(batched, reversed(dims), scalar_stream)
1085
+ return islice(reshaped, first_dim)
1086
+
1087
+
1088
+ def matmul(m1, m2):
1089
+ """Multiply two matrices.
1090
+
1091
+ >>> list(matmul([(7, 5), (3, 5)], [(2, 5), (7, 9)]))
1092
+ [(49, 80), (41, 60)]
1093
+
1094
+ The caller should ensure that the dimensions of the input matrices are
1095
+ compatible with each other.
1096
+
1097
+ Supports all numeric types: int, float, complex, Decimal, Fraction.
1098
+ """
1099
+ n = len(m2[0])
1100
+ return batched(starmap(_sumprod, product(m1, transpose(m2))), n)
1101
+
1102
+
1103
+ def _factor_pollard(n):
1104
+ # Return a factor of n using Pollard's rho algorithm.
1105
+ # Efficient when n is odd and composite.
1106
+ for b in range(1, n):
1107
+ x = y = 2
1108
+ d = 1
1109
+ while d == 1:
1110
+ x = (x * x + b) % n
1111
+ y = (y * y + b) % n
1112
+ y = (y * y + b) % n
1113
+ d = gcd(x - y, n)
1114
+ if d != n:
1115
+ return d
1116
+ raise ValueError('prime or under 5') # pragma: no cover
1117
+
1118
+
1119
+ _primes_below_211 = tuple(sieve(211))
1120
+
1121
+
1122
+ def factor(n):
1123
+ """Yield the prime factors of n.
1124
+
1125
+ >>> list(factor(360))
1126
+ [2, 2, 2, 3, 3, 5]
1127
+
1128
+ Finds small factors with trial division. Larger factors are
1129
+ either verified as prime with ``is_prime`` or split into
1130
+ smaller factors with Pollard's rho algorithm.
1131
+ """
1132
+
1133
+ # Corner case reduction
1134
+ if n < 2:
1135
+ return
1136
+
1137
+ # Trial division reduction
1138
+ for prime in _primes_below_211:
1139
+ while not n % prime:
1140
+ yield prime
1141
+ n //= prime
1142
+
1143
+ # Pollard's rho reduction
1144
+ primes = []
1145
+ todo = [n] if n > 1 else []
1146
+ for n in todo:
1147
+ if n < 211**2 or is_prime(n):
1148
+ primes.append(n)
1149
+ else:
1150
+ fact = _factor_pollard(n)
1151
+ todo += (fact, n // fact)
1152
+ yield from sorted(primes)
1153
+
1154
+
1155
+ def polynomial_eval(coefficients, x):
1156
+ """Evaluate a polynomial at a specific value.
1157
+
1158
+ Computes with better numeric stability than Horner's method.
1159
+
1160
+ Evaluate ``x^3 - 4 * x^2 - 17 * x + 60`` at ``x = 2.5``:
1161
+
1162
+ >>> coefficients = [1, -4, -17, 60]
1163
+ >>> x = 2.5
1164
+ >>> polynomial_eval(coefficients, x)
1165
+ 8.125
1166
+
1167
+ Note that polynomial coefficients are specified in descending power order.
1168
+
1169
+ Supports all numeric types: int, float, complex, Decimal, Fraction.
1170
+ """
1171
+ n = len(coefficients)
1172
+ if n == 0:
1173
+ return type(x)(0)
1174
+ powers = map(pow, repeat(x), reversed(range(n)))
1175
+ return _sumprod(coefficients, powers)
1176
+
1177
+
1178
+ def sum_of_squares(it):
1179
+ """Return the sum of the squares of the input values.
1180
+
1181
+ >>> sum_of_squares([10, 20, 30])
1182
+ 1400
1183
+
1184
+ Supports all numeric types: int, float, complex, Decimal, Fraction.
1185
+ """
1186
+ return _sumprod(*tee(it))
1187
+
1188
+
1189
+ def polynomial_derivative(coefficients):
1190
+ """Compute the first derivative of a polynomial.
1191
+
1192
+ Evaluate the derivative of ``x³ - 4 x² - 17 x + 60``:
1193
+
1194
+ >>> coefficients = [1, -4, -17, 60]
1195
+ >>> derivative_coefficients = polynomial_derivative(coefficients)
1196
+ >>> derivative_coefficients
1197
+ [3, -8, -17]
1198
+
1199
+ Note that polynomial coefficients are specified in descending power order.
1200
+
1201
+ Supports all numeric types: int, float, complex, Decimal, Fraction.
1202
+ """
1203
+ n = len(coefficients)
1204
+ powers = reversed(range(1, n))
1205
+ return list(map(mul, coefficients, powers))
1206
+
1207
+
1208
+ def totient(n):
1209
+ """Return the count of natural numbers up to *n* that are coprime with *n*.
1210
+
1211
+ Euler's totient function φ(n) gives the number of totatives.
1212
+ Totative are integers k in the range 1 ≤ k ≤ n such that gcd(n, k) = 1.
1213
+
1214
+ >>> n = 9
1215
+ >>> totient(n)
1216
+ 6
1217
+
1218
+ >>> totatives = [x for x in range(1, n) if gcd(n, x) == 1]
1219
+ >>> totatives
1220
+ [1, 2, 4, 5, 7, 8]
1221
+ >>> len(totatives)
1222
+ 6
1223
+
1224
+ Reference: https://en.wikipedia.org/wiki/Euler%27s_totient_function
1225
+
1226
+ """
1227
+ for prime in set(factor(n)):
1228
+ n -= n // prime
1229
+ return n
1230
+
1231
+
1232
+ # Miller–Rabin primality test: https://oeis.org/A014233
1233
+ _perfect_tests = [
1234
+ (2047, (2,)),
1235
+ (9080191, (31, 73)),
1236
+ (4759123141, (2, 7, 61)),
1237
+ (1122004669633, (2, 13, 23, 1662803)),
1238
+ (2152302898747, (2, 3, 5, 7, 11)),
1239
+ (3474749660383, (2, 3, 5, 7, 11, 13)),
1240
+ (18446744073709551616, (2, 325, 9375, 28178, 450775, 9780504, 1795265022)),
1241
+ (
1242
+ 3317044064679887385961981,
1243
+ (2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41),
1244
+ ),
1245
+ ]
1246
+
1247
+
1248
+ @lru_cache
1249
+ def _shift_to_odd(n):
1250
+ 'Return s, d such that 2**s * d == n'
1251
+ s = ((n - 1) ^ n).bit_length() - 1
1252
+ d = n >> s
1253
+ assert (1 << s) * d == n and d & 1 and s >= 0
1254
+ return s, d
1255
+
1256
+
1257
+ def _strong_probable_prime(n, base):
1258
+ assert (n > 2) and (n & 1) and (2 <= base < n)
1259
+
1260
+ s, d = _shift_to_odd(n - 1)
1261
+
1262
+ x = pow(base, d, n)
1263
+ if x == 1 or x == n - 1:
1264
+ return True
1265
+
1266
+ for _ in range(s - 1):
1267
+ x = x * x % n
1268
+ if x == n - 1:
1269
+ return True
1270
+
1271
+ return False
1272
+
1273
+
1274
+ # Separate instance of Random() that doesn't share state
1275
+ # with the default user instance of Random().
1276
+ _private_randrange = random.Random().randrange
1277
+
1278
+
1279
+ def is_prime(n):
1280
+ """Return ``True`` if *n* is prime and ``False`` otherwise.
1281
+
1282
+ Basic examples:
1283
+
1284
+ >>> is_prime(37)
1285
+ True
1286
+ >>> is_prime(3 * 13)
1287
+ False
1288
+ >>> is_prime(18_446_744_073_709_551_557)
1289
+ True
1290
+
1291
+ Find the next prime over one billion:
1292
+
1293
+ >>> next(filter(is_prime, count(10**9)))
1294
+ 1000000007
1295
+
1296
+ Generate random primes up to 200 bits and up to 60 decimal digits:
1297
+
1298
+ >>> from random import seed, randrange, getrandbits
1299
+ >>> seed(18675309)
1300
+
1301
+ >>> next(filter(is_prime, map(getrandbits, repeat(200))))
1302
+ 893303929355758292373272075469392561129886005037663238028407
1303
+
1304
+ >>> next(filter(is_prime, map(randrange, repeat(10**60))))
1305
+ 269638077304026462407872868003560484232362454342414618963649
1306
+
1307
+ This function is exact for values of *n* below 10**24. For larger inputs,
1308
+ the probabilistic Miller-Rabin primality test has a less than 1 in 2**128
1309
+ chance of a false positive.
1310
+ """
1311
+
1312
+ if n < 17:
1313
+ return n in {2, 3, 5, 7, 11, 13}
1314
+
1315
+ if not (n & 1 and n % 3 and n % 5 and n % 7 and n % 11 and n % 13):
1316
+ return False
1317
+
1318
+ for limit, bases in _perfect_tests:
1319
+ if n < limit:
1320
+ break
1321
+ else:
1322
+ bases = (_private_randrange(2, n - 1) for i in range(64))
1323
+
1324
+ return all(_strong_probable_prime(n, base) for base in bases)
1325
+
1326
+
1327
+ def loops(n):
1328
+ """Returns an iterable with *n* elements for efficient looping.
1329
+ Like ``range(n)`` but doesn't create integers.
1330
+
1331
+ >>> i = 0
1332
+ >>> for _ in loops(5):
1333
+ ... i += 1
1334
+ >>> i
1335
+ 5
1336
+
1337
+ """
1338
+ return repeat(None, n)
1339
+
1340
+
1341
+ def multinomial(*counts):
1342
+ """Number of distinct arrangements of a multiset.
1343
+
1344
+ The expression ``multinomial(3, 4, 2)`` has several equivalent
1345
+ interpretations:
1346
+
1347
+ * In the expansion of ``(a + b + c)⁹``, the coefficient of the
1348
+ ``a³b⁴c²`` term is 1260.
1349
+
1350
+ * There are 1260 distinct ways to arrange 9 balls consisting of 3 reds, 4
1351
+ greens, and 2 blues.
1352
+
1353
+ * There are 1260 unique ways to place 9 distinct objects into three bins
1354
+ with sizes 3, 4, and 2.
1355
+
1356
+ The :func:`multinomial` function computes the length of
1357
+ :func:`distinct_permutations`. For example, there are 83,160 distinct
1358
+ anagrams of the word "abracadabra":
1359
+
1360
+ >>> from more_itertools import distinct_permutations, ilen
1361
+ >>> ilen(distinct_permutations('abracadabra'))
1362
+ 83160
1363
+
1364
+ This can be computed directly from the letter counts, 5a 2b 2r 1c 1d:
1365
+
1366
+ >>> from collections import Counter
1367
+ >>> list(Counter('abracadabra').values())
1368
+ [5, 2, 2, 1, 1]
1369
+ >>> multinomial(5, 2, 2, 1, 1)
1370
+ 83160
1371
+
1372
+ A binomial coefficient is a special case of multinomial where there are
1373
+ only two categories. For example, the number of ways to arrange 12 balls
1374
+ with 5 reds and 7 blues is ``multinomial(5, 7)`` or ``math.comb(12, 5)``.
1375
+
1376
+ Likewise, factorial is a special case of multinomial where
1377
+ the multiplicities are all just 1 so that
1378
+ ``multinomial(1, 1, 1, 1, 1, 1, 1) == math.factorial(7)``.
1379
+
1380
+ Reference: https://en.wikipedia.org/wiki/Multinomial_theorem
1381
+
1382
+ """
1383
+ return prod(map(comb, accumulate(counts), counts))
1384
+
1385
+
1386
+ def _running_median_minheap_and_maxheap(iterator): # pragma: no cover
1387
+ "Non-windowed running_median() for Python 3.14+"
1388
+
1389
+ read = iterator.__next__
1390
+ lo = [] # max-heap
1391
+ hi = [] # min-heap (same size as or one smaller than lo)
1392
+
1393
+ with suppress(StopIteration):
1394
+ while True:
1395
+ heappush_max(lo, heappushpop(hi, read()))
1396
+ yield lo[0]
1397
+
1398
+ heappush(hi, heappushpop_max(lo, read()))
1399
+ yield (lo[0] + hi[0]) / 2
1400
+
1401
+
1402
+ def _running_median_minheap_only(iterator): # pragma: no cover
1403
+ "Backport of non-windowed running_median() for Python 3.13 and prior."
1404
+
1405
+ read = iterator.__next__
1406
+ lo = [] # max-heap (actually a minheap with negated values)
1407
+ hi = [] # min-heap (same size as or one smaller than lo)
1408
+
1409
+ with suppress(StopIteration):
1410
+ while True:
1411
+ heappush(lo, -heappushpop(hi, read()))
1412
+ yield -lo[0]
1413
+
1414
+ heappush(hi, -heappushpop(lo, -read()))
1415
+ yield (hi[0] - lo[0]) / 2
1416
+
1417
+
1418
+ def _running_median_windowed(iterator, maxlen):
1419
+ "Yield median of values in a sliding window."
1420
+
1421
+ window = deque()
1422
+ ordered = []
1423
+
1424
+ for x in iterator:
1425
+ window.append(x)
1426
+ insort(ordered, x)
1427
+
1428
+ if len(ordered) > maxlen:
1429
+ i = bisect_left(ordered, window.popleft())
1430
+ del ordered[i]
1431
+
1432
+ n = len(ordered)
1433
+ m = n // 2
1434
+ yield ordered[m] if n & 1 else (ordered[m - 1] + ordered[m]) / 2
1435
+
1436
+
1437
+ def running_median(iterable, *, maxlen=None):
1438
+ """Cumulative median of values seen so far or values in a sliding window.
1439
+
1440
+ Set *maxlen* to a positive integer to specify the maximum size
1441
+ of the sliding window. The default of *None* is equivalent to
1442
+ an unbounded window.
1443
+
1444
+ For example:
1445
+
1446
+ >>> list(running_median([5.0, 9.0, 4.0, 12.0, 8.0, 9.0]))
1447
+ [5.0, 7.0, 5.0, 7.0, 8.0, 8.5]
1448
+ >>> list(running_median([5.0, 9.0, 4.0, 12.0, 8.0, 9.0], maxlen=3))
1449
+ [5.0, 7.0, 5.0, 9.0, 8.0, 9.0]
1450
+
1451
+ Supports numeric types such as int, float, Decimal, and Fraction,
1452
+ but not complex numbers which are unorderable.
1453
+
1454
+ On version Python 3.13 and prior, max-heaps are simulated with
1455
+ negative values. The negation causes Decimal inputs to apply context
1456
+ rounding, making the results slightly different than that obtained
1457
+ by statistics.median().
1458
+ """
1459
+
1460
+ iterator = iter(iterable)
1461
+
1462
+ if maxlen is not None:
1463
+ maxlen = index(maxlen)
1464
+ if maxlen <= 0:
1465
+ raise ValueError('Window size should be positive')
1466
+ return _running_median_windowed(iterator, maxlen)
1467
+
1468
+ if not _max_heap_available:
1469
+ return _running_median_minheap_only(iterator) # pragma: no cover
1470
+
1471
+ return _running_median_minheap_and_maxheap(iterator) # pragma: no cover