py2docfx 0.1.10.dev1859594__py3-none-any.whl → 0.1.10.dev1870645__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.
Files changed (1774) hide show
  1. py2docfx/__main__.py +112 -15
  2. py2docfx/convert_prepare/environment.py +44 -4
  3. py2docfx/convert_prepare/generate_document.py +19 -5
  4. py2docfx/convert_prepare/get_source.py +19 -3
  5. py2docfx/convert_prepare/pip_utils.py +10 -0
  6. py2docfx/convert_prepare/sphinx_caller.py +7 -3
  7. py2docfx/convert_prepare/tests/test_generate_document.py +0 -1
  8. py2docfx/docfx_yaml/tests/roots/test-writer-uri/code_with_uri.py +0 -7
  9. py2docfx/docfx_yaml/tests/test_writer_uri.py +0 -4
  10. py2docfx/docfx_yaml/writer.py +1 -13
  11. py2docfx/venv/venv0/Lib/site-packages/_distutils_hack/__init__.py +240 -0
  12. py2docfx/venv/venv0/Lib/site-packages/_distutils_hack/override.py +1 -0
  13. py2docfx/venv/venv0/Lib/site-packages/_yaml/__init__.py +33 -0
  14. py2docfx/venv/venv0/Lib/site-packages/alabaster/__init__.py +35 -0
  15. py2docfx/venv/venv0/Lib/site-packages/alabaster/support.py +89 -0
  16. py2docfx/venv/venv0/Lib/site-packages/babel/__init__.py +37 -0
  17. py2docfx/venv/venv0/Lib/site-packages/babel/core.py +1300 -0
  18. py2docfx/venv/venv0/Lib/site-packages/babel/dates.py +1925 -0
  19. py2docfx/venv/venv0/Lib/site-packages/babel/languages.py +72 -0
  20. py2docfx/venv/venv0/Lib/site-packages/babel/lists.py +123 -0
  21. py2docfx/venv/venv0/Lib/site-packages/babel/localedata.py +278 -0
  22. py2docfx/venv/venv0/Lib/site-packages/babel/localtime/__init__.py +43 -0
  23. py2docfx/venv/venv0/Lib/site-packages/babel/localtime/_fallback.py +44 -0
  24. py2docfx/venv/venv0/Lib/site-packages/babel/localtime/_helpers.py +57 -0
  25. py2docfx/venv/venv0/Lib/site-packages/babel/localtime/_unix.py +98 -0
  26. py2docfx/venv/venv0/Lib/site-packages/babel/localtime/_win32.py +98 -0
  27. py2docfx/venv/venv0/Lib/site-packages/babel/messages/__init__.py +21 -0
  28. py2docfx/venv/venv0/Lib/site-packages/babel/messages/_compat.py +34 -0
  29. py2docfx/venv/venv0/Lib/site-packages/babel/messages/catalog.py +952 -0
  30. py2docfx/venv/venv0/Lib/site-packages/babel/messages/checkers.py +168 -0
  31. py2docfx/venv/venv0/Lib/site-packages/babel/messages/extract.py +843 -0
  32. py2docfx/venv/venv0/Lib/site-packages/babel/messages/frontend.py +1203 -0
  33. py2docfx/venv/venv0/Lib/site-packages/babel/messages/jslexer.py +203 -0
  34. py2docfx/venv/venv0/Lib/site-packages/babel/messages/mofile.py +212 -0
  35. py2docfx/venv/venv0/Lib/site-packages/babel/messages/plurals.py +257 -0
  36. py2docfx/venv/venv0/Lib/site-packages/babel/messages/pofile.py +675 -0
  37. py2docfx/venv/venv0/Lib/site-packages/babel/messages/setuptools_frontend.py +108 -0
  38. py2docfx/venv/venv0/Lib/site-packages/babel/numbers.py +1573 -0
  39. py2docfx/venv/venv0/Lib/site-packages/babel/plural.py +640 -0
  40. py2docfx/venv/venv0/Lib/site-packages/babel/support.py +726 -0
  41. py2docfx/venv/venv0/Lib/site-packages/babel/units.py +343 -0
  42. py2docfx/venv/venv0/Lib/site-packages/babel/util.py +269 -0
  43. py2docfx/venv/venv0/Lib/site-packages/certifi/__init__.py +4 -0
  44. py2docfx/venv/venv0/Lib/site-packages/certifi/__main__.py +12 -0
  45. py2docfx/venv/venv0/Lib/site-packages/certifi/core.py +114 -0
  46. py2docfx/venv/venv0/Lib/site-packages/charset_normalizer/__init__.py +46 -0
  47. py2docfx/venv/venv0/Lib/site-packages/charset_normalizer/__main__.py +4 -0
  48. py2docfx/venv/venv0/Lib/site-packages/charset_normalizer/api.py +626 -0
  49. py2docfx/venv/venv0/Lib/site-packages/charset_normalizer/cd.py +395 -0
  50. py2docfx/venv/venv0/Lib/site-packages/charset_normalizer/cli/__init__.py +6 -0
  51. py2docfx/venv/venv0/Lib/site-packages/charset_normalizer/cli/__main__.py +296 -0
  52. py2docfx/venv/venv0/Lib/site-packages/charset_normalizer/constant.py +1995 -0
  53. py2docfx/venv/venv0/Lib/site-packages/charset_normalizer/legacy.py +54 -0
  54. py2docfx/venv/venv0/Lib/site-packages/charset_normalizer/md.py +615 -0
  55. py2docfx/venv/venv0/Lib/site-packages/charset_normalizer/models.py +340 -0
  56. py2docfx/venv/venv0/Lib/site-packages/charset_normalizer/utils.py +421 -0
  57. py2docfx/venv/venv0/Lib/site-packages/charset_normalizer/version.py +6 -0
  58. py2docfx/venv/venv0/Lib/site-packages/colorama/__init__.py +7 -0
  59. py2docfx/venv/venv0/Lib/site-packages/colorama/ansi.py +102 -0
  60. py2docfx/venv/venv0/Lib/site-packages/colorama/ansitowin32.py +277 -0
  61. py2docfx/venv/venv0/Lib/site-packages/colorama/initialise.py +121 -0
  62. py2docfx/venv/venv0/Lib/site-packages/colorama/tests/__init__.py +1 -0
  63. py2docfx/venv/venv0/Lib/site-packages/colorama/tests/ansi_test.py +76 -0
  64. py2docfx/venv/venv0/Lib/site-packages/colorama/tests/ansitowin32_test.py +294 -0
  65. py2docfx/venv/venv0/Lib/site-packages/colorama/tests/initialise_test.py +189 -0
  66. py2docfx/venv/venv0/Lib/site-packages/colorama/tests/isatty_test.py +57 -0
  67. py2docfx/venv/venv0/Lib/site-packages/colorama/tests/utils.py +49 -0
  68. py2docfx/venv/venv0/Lib/site-packages/colorama/tests/winterm_test.py +131 -0
  69. py2docfx/venv/venv0/Lib/site-packages/colorama/win32.py +180 -0
  70. py2docfx/venv/venv0/Lib/site-packages/colorama/winterm.py +195 -0
  71. py2docfx/venv/venv0/Lib/site-packages/docutils/__init__.py +284 -0
  72. py2docfx/venv/venv0/Lib/site-packages/docutils/__main__.py +96 -0
  73. py2docfx/venv/venv0/Lib/site-packages/docutils/core.py +714 -0
  74. py2docfx/venv/venv0/Lib/site-packages/docutils/examples.py +99 -0
  75. py2docfx/venv/venv0/Lib/site-packages/docutils/frontend.py +951 -0
  76. py2docfx/venv/venv0/Lib/site-packages/docutils/io.py +611 -0
  77. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/__init__.py +83 -0
  78. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/af.py +58 -0
  79. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/ar.py +60 -0
  80. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/ca.py +60 -0
  81. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/cs.py +60 -0
  82. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/da.py +61 -0
  83. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/de.py +58 -0
  84. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/en.py +60 -0
  85. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/eo.py +61 -0
  86. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/es.py +58 -0
  87. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/fa.py +60 -0
  88. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/fi.py +60 -0
  89. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/fr.py +58 -0
  90. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/gl.py +62 -0
  91. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/he.py +61 -0
  92. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/it.py +58 -0
  93. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/ja.py +60 -0
  94. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/ko.py +60 -0
  95. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/lt.py +60 -0
  96. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/lv.py +59 -0
  97. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/nl.py +60 -0
  98. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/pl.py +60 -0
  99. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/pt_br.py +60 -0
  100. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/ru.py +58 -0
  101. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/sk.py +58 -0
  102. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/sv.py +59 -0
  103. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/zh_cn.py +66 -0
  104. py2docfx/venv/venv0/Lib/site-packages/docutils/languages/zh_tw.py +65 -0
  105. py2docfx/venv/venv0/Lib/site-packages/docutils/nodes.py +2314 -0
  106. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/__init__.py +92 -0
  107. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/commonmark_wrapper.py +56 -0
  108. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/null.py +20 -0
  109. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/recommonmark_wrapper.py +136 -0
  110. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/__init__.py +414 -0
  111. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/directives/__init__.py +460 -0
  112. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/directives/admonitions.py +99 -0
  113. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/directives/body.py +304 -0
  114. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/directives/html.py +21 -0
  115. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/directives/images.py +163 -0
  116. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/directives/misc.py +635 -0
  117. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/directives/parts.py +126 -0
  118. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/directives/references.py +29 -0
  119. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/directives/tables.py +513 -0
  120. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/__init__.py +40 -0
  121. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/af.py +107 -0
  122. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/ar.py +99 -0
  123. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/ca.py +126 -0
  124. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/cs.py +110 -0
  125. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/da.py +113 -0
  126. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/de.py +106 -0
  127. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/en.py +111 -0
  128. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/eo.py +118 -0
  129. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/es.py +122 -0
  130. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/fa.py +102 -0
  131. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/fi.py +98 -0
  132. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/fr.py +104 -0
  133. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/gl.py +111 -0
  134. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/he.py +109 -0
  135. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/it.py +98 -0
  136. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/ja.py +119 -0
  137. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/ko.py +111 -0
  138. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/lt.py +109 -0
  139. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/lv.py +108 -0
  140. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/nl.py +113 -0
  141. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/pl.py +100 -0
  142. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/pt_br.py +109 -0
  143. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/ru.py +90 -0
  144. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/sk.py +96 -0
  145. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/sv.py +96 -0
  146. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/zh_cn.py +104 -0
  147. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/languages/zh_tw.py +109 -0
  148. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/roles.py +439 -0
  149. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/states.py +3135 -0
  150. py2docfx/venv/venv0/Lib/site-packages/docutils/parsers/rst/tableparser.py +539 -0
  151. py2docfx/venv/venv0/Lib/site-packages/docutils/readers/__init__.py +113 -0
  152. py2docfx/venv/venv0/Lib/site-packages/docutils/readers/doctree.py +46 -0
  153. py2docfx/venv/venv0/Lib/site-packages/docutils/readers/pep.py +48 -0
  154. py2docfx/venv/venv0/Lib/site-packages/docutils/readers/standalone.py +65 -0
  155. py2docfx/venv/venv0/Lib/site-packages/docutils/statemachine.py +1525 -0
  156. py2docfx/venv/venv0/Lib/site-packages/docutils/transforms/__init__.py +174 -0
  157. py2docfx/venv/venv0/Lib/site-packages/docutils/transforms/components.py +54 -0
  158. py2docfx/venv/venv0/Lib/site-packages/docutils/transforms/frontmatter.py +545 -0
  159. py2docfx/venv/venv0/Lib/site-packages/docutils/transforms/misc.py +144 -0
  160. py2docfx/venv/venv0/Lib/site-packages/docutils/transforms/parts.py +176 -0
  161. py2docfx/venv/venv0/Lib/site-packages/docutils/transforms/peps.py +308 -0
  162. py2docfx/venv/venv0/Lib/site-packages/docutils/transforms/references.py +919 -0
  163. py2docfx/venv/venv0/Lib/site-packages/docutils/transforms/universal.py +338 -0
  164. py2docfx/venv/venv0/Lib/site-packages/docutils/transforms/writer_aux.py +99 -0
  165. py2docfx/venv/venv0/Lib/site-packages/docutils/utils/__init__.py +821 -0
  166. py2docfx/venv/venv0/Lib/site-packages/docutils/utils/code_analyzer.py +138 -0
  167. py2docfx/venv/venv0/Lib/site-packages/docutils/utils/error_reporting.py +222 -0
  168. py2docfx/venv/venv0/Lib/site-packages/docutils/utils/math/__init__.py +52 -0
  169. py2docfx/venv/venv0/Lib/site-packages/docutils/utils/math/latex2mathml.py +1430 -0
  170. py2docfx/venv/venv0/Lib/site-packages/docutils/utils/math/math2html.py +3171 -0
  171. py2docfx/venv/venv0/Lib/site-packages/docutils/utils/math/tex2mathml_extern.py +152 -0
  172. py2docfx/venv/venv0/Lib/site-packages/docutils/utils/math/tex2unichar.py +704 -0
  173. py2docfx/venv/venv0/Lib/site-packages/docutils/utils/math/unichar2tex.py +808 -0
  174. py2docfx/venv/venv0/Lib/site-packages/docutils/utils/punctuation_chars.py +122 -0
  175. py2docfx/venv/venv0/Lib/site-packages/docutils/utils/roman.py +86 -0
  176. py2docfx/venv/venv0/Lib/site-packages/docutils/utils/smartquotes.py +991 -0
  177. py2docfx/venv/venv0/Lib/site-packages/docutils/utils/urischemes.py +138 -0
  178. py2docfx/venv/venv0/Lib/site-packages/docutils/writers/__init__.py +151 -0
  179. py2docfx/venv/venv0/Lib/site-packages/docutils/writers/_html_base.py +1781 -0
  180. py2docfx/venv/venv0/Lib/site-packages/docutils/writers/docutils_xml.py +188 -0
  181. py2docfx/venv/venv0/Lib/site-packages/docutils/writers/html4css1/__init__.py +947 -0
  182. py2docfx/venv/venv0/Lib/site-packages/docutils/writers/html5_polyglot/__init__.py +454 -0
  183. py2docfx/venv/venv0/Lib/site-packages/docutils/writers/latex2e/__init__.py +3295 -0
  184. py2docfx/venv/venv0/Lib/site-packages/docutils/writers/manpage.py +1181 -0
  185. py2docfx/venv/venv0/Lib/site-packages/docutils/writers/null.py +21 -0
  186. py2docfx/venv/venv0/Lib/site-packages/docutils/writers/odf_odt/__init__.py +3468 -0
  187. py2docfx/venv/venv0/Lib/site-packages/docutils/writers/odf_odt/pygmentsformatter.py +109 -0
  188. py2docfx/venv/venv0/Lib/site-packages/docutils/writers/pep_html/__init__.py +103 -0
  189. py2docfx/venv/venv0/Lib/site-packages/docutils/writers/pseudoxml.py +40 -0
  190. py2docfx/venv/venv0/Lib/site-packages/docutils/writers/s5_html/__init__.py +352 -0
  191. py2docfx/venv/venv0/Lib/site-packages/docutils/writers/xetex/__init__.py +149 -0
  192. py2docfx/venv/venv0/Lib/site-packages/idna/__init__.py +45 -0
  193. py2docfx/venv/venv0/Lib/site-packages/idna/codec.py +122 -0
  194. py2docfx/venv/venv0/Lib/site-packages/idna/compat.py +15 -0
  195. py2docfx/venv/venv0/Lib/site-packages/idna/core.py +437 -0
  196. py2docfx/venv/venv0/Lib/site-packages/idna/idnadata.py +4243 -0
  197. py2docfx/venv/venv0/Lib/site-packages/idna/intranges.py +57 -0
  198. py2docfx/venv/venv0/Lib/site-packages/idna/package_data.py +1 -0
  199. py2docfx/venv/venv0/Lib/site-packages/idna/uts46data.py +8681 -0
  200. py2docfx/venv/venv0/Lib/site-packages/imagesize/__init__.py +5 -0
  201. py2docfx/venv/venv0/Lib/site-packages/imagesize/imagesize.py +376 -0
  202. py2docfx/venv/venv0/Lib/site-packages/imagesize.py +383 -0
  203. py2docfx/venv/venv0/Lib/site-packages/jinja2/__init__.py +45 -0
  204. py2docfx/venv/venv0/Lib/site-packages/jinja2/_identifier.py +6 -0
  205. py2docfx/venv/venv0/Lib/site-packages/jinja2/async_utils.py +75 -0
  206. py2docfx/venv/venv0/Lib/site-packages/jinja2/bccache.py +364 -0
  207. py2docfx/venv/venv0/Lib/site-packages/jinja2/compiler.py +1957 -0
  208. py2docfx/venv/venv0/Lib/site-packages/jinja2/constants.py +20 -0
  209. py2docfx/venv/venv0/Lib/site-packages/jinja2/debug.py +259 -0
  210. py2docfx/venv/venv0/Lib/site-packages/jinja2/defaults.py +48 -0
  211. py2docfx/venv/venv0/Lib/site-packages/jinja2/environment.py +1661 -0
  212. py2docfx/venv/venv0/Lib/site-packages/jinja2/exceptions.py +166 -0
  213. py2docfx/venv/venv0/Lib/site-packages/jinja2/ext.py +879 -0
  214. py2docfx/venv/venv0/Lib/site-packages/jinja2/filters.py +1824 -0
  215. py2docfx/venv/venv0/Lib/site-packages/jinja2/idtracking.py +318 -0
  216. py2docfx/venv/venv0/Lib/site-packages/jinja2/lexer.py +869 -0
  217. py2docfx/venv/venv0/Lib/site-packages/jinja2/loaders.py +652 -0
  218. py2docfx/venv/venv0/Lib/site-packages/jinja2/meta.py +111 -0
  219. py2docfx/venv/venv0/Lib/site-packages/jinja2/nativetypes.py +124 -0
  220. py2docfx/venv/venv0/Lib/site-packages/jinja2/nodes.py +1204 -0
  221. py2docfx/venv/venv0/Lib/site-packages/jinja2/optimizer.py +47 -0
  222. py2docfx/venv/venv0/Lib/site-packages/jinja2/parser.py +1040 -0
  223. py2docfx/venv/venv0/Lib/site-packages/jinja2/runtime.py +1104 -0
  224. py2docfx/venv/venv0/Lib/site-packages/jinja2/sandbox.py +428 -0
  225. py2docfx/venv/venv0/Lib/site-packages/jinja2/tests.py +255 -0
  226. py2docfx/venv/venv0/Lib/site-packages/jinja2/utils.py +854 -0
  227. py2docfx/venv/venv0/Lib/site-packages/jinja2/visitor.py +92 -0
  228. py2docfx/venv/venv0/Lib/site-packages/markupsafe/__init__.py +332 -0
  229. py2docfx/venv/venv0/Lib/site-packages/markupsafe/_native.py +63 -0
  230. py2docfx/venv/venv0/Lib/site-packages/packaging/__init__.py +15 -0
  231. py2docfx/venv/venv0/Lib/site-packages/packaging/_elffile.py +110 -0
  232. py2docfx/venv/venv0/Lib/site-packages/packaging/_manylinux.py +262 -0
  233. py2docfx/venv/venv0/Lib/site-packages/packaging/_musllinux.py +85 -0
  234. py2docfx/venv/venv0/Lib/site-packages/packaging/_parser.py +354 -0
  235. py2docfx/venv/venv0/Lib/site-packages/packaging/_structures.py +61 -0
  236. py2docfx/venv/venv0/Lib/site-packages/packaging/_tokenizer.py +194 -0
  237. py2docfx/venv/venv0/Lib/site-packages/packaging/markers.py +325 -0
  238. py2docfx/venv/venv0/Lib/site-packages/packaging/metadata.py +804 -0
  239. py2docfx/venv/venv0/Lib/site-packages/packaging/requirements.py +91 -0
  240. py2docfx/venv/venv0/Lib/site-packages/packaging/specifiers.py +1009 -0
  241. py2docfx/venv/venv0/Lib/site-packages/packaging/tags.py +568 -0
  242. py2docfx/venv/venv0/Lib/site-packages/packaging/utils.py +174 -0
  243. py2docfx/venv/venv0/Lib/site-packages/packaging/version.py +563 -0
  244. py2docfx/venv/venv0/Lib/site-packages/pip/__init__.py +13 -0
  245. py2docfx/venv/venv0/Lib/site-packages/pip/__main__.py +24 -0
  246. py2docfx/venv/venv0/Lib/site-packages/pip/__pip-runner__.py +50 -0
  247. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/__init__.py +18 -0
  248. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/build_env.py +311 -0
  249. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/cache.py +290 -0
  250. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/cli/__init__.py +4 -0
  251. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/cli/autocompletion.py +172 -0
  252. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/cli/base_command.py +236 -0
  253. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/cli/cmdoptions.py +1074 -0
  254. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/cli/command_context.py +27 -0
  255. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/cli/main.py +79 -0
  256. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/cli/main_parser.py +134 -0
  257. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/cli/parser.py +294 -0
  258. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/cli/progress_bars.py +68 -0
  259. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/cli/req_command.py +505 -0
  260. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/cli/spinners.py +159 -0
  261. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/cli/status_codes.py +6 -0
  262. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/commands/__init__.py +132 -0
  263. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/commands/cache.py +225 -0
  264. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/commands/check.py +54 -0
  265. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/commands/completion.py +130 -0
  266. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/commands/configuration.py +280 -0
  267. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/commands/debug.py +201 -0
  268. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/commands/download.py +147 -0
  269. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/commands/freeze.py +108 -0
  270. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/commands/hash.py +59 -0
  271. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/commands/help.py +41 -0
  272. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/commands/index.py +139 -0
  273. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/commands/inspect.py +92 -0
  274. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/commands/install.py +774 -0
  275. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/commands/list.py +368 -0
  276. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/commands/search.py +174 -0
  277. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/commands/show.py +189 -0
  278. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/commands/uninstall.py +113 -0
  279. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/commands/wheel.py +183 -0
  280. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/configuration.py +383 -0
  281. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/distributions/__init__.py +21 -0
  282. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/distributions/base.py +51 -0
  283. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/distributions/installed.py +29 -0
  284. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/distributions/sdist.py +156 -0
  285. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/distributions/wheel.py +40 -0
  286. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/exceptions.py +728 -0
  287. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/index/__init__.py +2 -0
  288. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/index/collector.py +507 -0
  289. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/index/package_finder.py +1027 -0
  290. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/index/sources.py +285 -0
  291. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/locations/__init__.py +467 -0
  292. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/locations/_distutils.py +172 -0
  293. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/locations/_sysconfig.py +213 -0
  294. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/locations/base.py +81 -0
  295. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/main.py +12 -0
  296. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/metadata/__init__.py +128 -0
  297. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/metadata/_json.py +84 -0
  298. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/metadata/base.py +702 -0
  299. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/metadata/importlib/__init__.py +6 -0
  300. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/metadata/importlib/_compat.py +55 -0
  301. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/metadata/importlib/_dists.py +227 -0
  302. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/metadata/importlib/_envs.py +189 -0
  303. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/metadata/pkg_resources.py +278 -0
  304. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/models/__init__.py +2 -0
  305. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/models/candidate.py +30 -0
  306. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/models/direct_url.py +235 -0
  307. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/models/format_control.py +78 -0
  308. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/models/index.py +28 -0
  309. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/models/installation_report.py +56 -0
  310. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/models/link.py +579 -0
  311. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/models/scheme.py +31 -0
  312. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/models/search_scope.py +132 -0
  313. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/models/selection_prefs.py +51 -0
  314. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/models/target_python.py +122 -0
  315. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/models/wheel.py +92 -0
  316. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/network/__init__.py +2 -0
  317. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/network/auth.py +561 -0
  318. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/network/cache.py +106 -0
  319. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/network/download.py +186 -0
  320. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/network/lazy_wheel.py +210 -0
  321. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/network/session.py +520 -0
  322. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/network/utils.py +96 -0
  323. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/network/xmlrpc.py +62 -0
  324. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/operations/__init__.py +0 -0
  325. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/operations/build/__init__.py +0 -0
  326. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/operations/build/build_tracker.py +139 -0
  327. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/operations/build/metadata.py +39 -0
  328. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/operations/build/metadata_editable.py +41 -0
  329. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/operations/build/metadata_legacy.py +74 -0
  330. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/operations/build/wheel.py +37 -0
  331. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/operations/build/wheel_editable.py +46 -0
  332. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/operations/build/wheel_legacy.py +102 -0
  333. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/operations/check.py +187 -0
  334. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/operations/freeze.py +255 -0
  335. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/operations/install/__init__.py +2 -0
  336. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/operations/install/editable_legacy.py +46 -0
  337. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/operations/install/wheel.py +734 -0
  338. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/operations/prepare.py +730 -0
  339. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/pyproject.py +179 -0
  340. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/req/__init__.py +92 -0
  341. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/req/constructors.py +576 -0
  342. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/req/req_file.py +554 -0
  343. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/req/req_install.py +923 -0
  344. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/req/req_set.py +119 -0
  345. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/req/req_uninstall.py +649 -0
  346. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/resolution/__init__.py +0 -0
  347. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/resolution/base.py +20 -0
  348. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/resolution/legacy/__init__.py +0 -0
  349. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/resolution/legacy/resolver.py +598 -0
  350. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/resolution/resolvelib/__init__.py +0 -0
  351. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/resolution/resolvelib/base.py +141 -0
  352. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/resolution/resolvelib/candidates.py +597 -0
  353. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/resolution/resolvelib/factory.py +812 -0
  354. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py +155 -0
  355. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/resolution/resolvelib/provider.py +255 -0
  356. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/resolution/resolvelib/reporter.py +80 -0
  357. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/resolution/resolvelib/requirements.py +166 -0
  358. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/resolution/resolvelib/resolver.py +317 -0
  359. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/self_outdated_check.py +248 -0
  360. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/__init__.py +0 -0
  361. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/_jaraco_text.py +109 -0
  362. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/_log.py +38 -0
  363. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/appdirs.py +52 -0
  364. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/compat.py +63 -0
  365. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/compatibility_tags.py +165 -0
  366. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/datetime.py +11 -0
  367. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/deprecation.py +120 -0
  368. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/direct_url_helpers.py +87 -0
  369. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/egg_link.py +80 -0
  370. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/encoding.py +36 -0
  371. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/entrypoints.py +84 -0
  372. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/filesystem.py +153 -0
  373. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/filetypes.py +27 -0
  374. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/glibc.py +88 -0
  375. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/hashes.py +151 -0
  376. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/logging.py +348 -0
  377. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/misc.py +783 -0
  378. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/models.py +39 -0
  379. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/packaging.py +57 -0
  380. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/setuptools_build.py +146 -0
  381. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/subprocess.py +260 -0
  382. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/temp_dir.py +296 -0
  383. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/unpacking.py +257 -0
  384. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/urls.py +62 -0
  385. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/virtualenv.py +104 -0
  386. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/utils/wheel.py +134 -0
  387. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/vcs/__init__.py +15 -0
  388. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/vcs/bazaar.py +112 -0
  389. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/vcs/git.py +526 -0
  390. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/vcs/mercurial.py +163 -0
  391. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/vcs/subversion.py +324 -0
  392. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/vcs/versioncontrol.py +705 -0
  393. py2docfx/venv/venv0/Lib/site-packages/pip/_internal/wheel_builder.py +354 -0
  394. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/__init__.py +121 -0
  395. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/cachecontrol/__init__.py +28 -0
  396. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/cachecontrol/_cmd.py +70 -0
  397. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/cachecontrol/adapter.py +161 -0
  398. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/cachecontrol/cache.py +74 -0
  399. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/cachecontrol/caches/__init__.py +8 -0
  400. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py +181 -0
  401. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py +48 -0
  402. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/cachecontrol/controller.py +494 -0
  403. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/cachecontrol/filewrapper.py +119 -0
  404. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/cachecontrol/heuristics.py +154 -0
  405. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/cachecontrol/serialize.py +206 -0
  406. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/cachecontrol/wrapper.py +43 -0
  407. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/certifi/__init__.py +4 -0
  408. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/certifi/__main__.py +12 -0
  409. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/certifi/core.py +108 -0
  410. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/__init__.py +115 -0
  411. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/big5freq.py +386 -0
  412. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/big5prober.py +47 -0
  413. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/chardistribution.py +261 -0
  414. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/charsetgroupprober.py +106 -0
  415. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/charsetprober.py +147 -0
  416. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/cli/__init__.py +0 -0
  417. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/cli/chardetect.py +112 -0
  418. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/codingstatemachine.py +90 -0
  419. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/codingstatemachinedict.py +19 -0
  420. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/cp949prober.py +49 -0
  421. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/enums.py +85 -0
  422. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/escprober.py +102 -0
  423. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/escsm.py +261 -0
  424. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/eucjpprober.py +102 -0
  425. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/euckrfreq.py +196 -0
  426. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/euckrprober.py +47 -0
  427. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/euctwfreq.py +388 -0
  428. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/euctwprober.py +47 -0
  429. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/gb2312freq.py +284 -0
  430. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/gb2312prober.py +47 -0
  431. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/hebrewprober.py +316 -0
  432. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/jisfreq.py +325 -0
  433. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/johabfreq.py +2382 -0
  434. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/johabprober.py +47 -0
  435. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/jpcntx.py +238 -0
  436. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/langbulgarianmodel.py +4649 -0
  437. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/langgreekmodel.py +4397 -0
  438. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/langhebrewmodel.py +4380 -0
  439. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/langhungarianmodel.py +4649 -0
  440. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/langrussianmodel.py +5725 -0
  441. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/langthaimodel.py +4380 -0
  442. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/langturkishmodel.py +4380 -0
  443. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/latin1prober.py +147 -0
  444. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/macromanprober.py +162 -0
  445. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/mbcharsetprober.py +95 -0
  446. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/mbcsgroupprober.py +57 -0
  447. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/mbcssm.py +661 -0
  448. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/metadata/__init__.py +0 -0
  449. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/metadata/languages.py +352 -0
  450. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/resultdict.py +16 -0
  451. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/sbcharsetprober.py +162 -0
  452. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/sbcsgroupprober.py +88 -0
  453. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/sjisprober.py +105 -0
  454. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/universaldetector.py +362 -0
  455. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/utf1632prober.py +225 -0
  456. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/utf8prober.py +82 -0
  457. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/chardet/version.py +9 -0
  458. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/colorama/__init__.py +7 -0
  459. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/colorama/ansi.py +102 -0
  460. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/colorama/ansitowin32.py +277 -0
  461. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/colorama/initialise.py +121 -0
  462. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/colorama/tests/__init__.py +1 -0
  463. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/colorama/tests/ansi_test.py +76 -0
  464. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/colorama/tests/ansitowin32_test.py +294 -0
  465. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/colorama/tests/initialise_test.py +189 -0
  466. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/colorama/tests/isatty_test.py +57 -0
  467. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/colorama/tests/utils.py +49 -0
  468. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/colorama/tests/winterm_test.py +131 -0
  469. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/colorama/win32.py +180 -0
  470. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/colorama/winterm.py +195 -0
  471. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/distlib/__init__.py +33 -0
  472. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/distlib/compat.py +1138 -0
  473. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/distlib/database.py +1359 -0
  474. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/distlib/index.py +508 -0
  475. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/distlib/locators.py +1303 -0
  476. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/distlib/manifest.py +384 -0
  477. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/distlib/markers.py +167 -0
  478. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/distlib/metadata.py +1068 -0
  479. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/distlib/resources.py +358 -0
  480. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/distlib/scripts.py +452 -0
  481. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/distlib/util.py +2025 -0
  482. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/distlib/version.py +751 -0
  483. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/distlib/wheel.py +1099 -0
  484. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/distro/__init__.py +54 -0
  485. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/distro/__main__.py +4 -0
  486. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/distro/distro.py +1399 -0
  487. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/idna/__init__.py +44 -0
  488. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/idna/codec.py +112 -0
  489. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/idna/compat.py +13 -0
  490. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/idna/core.py +400 -0
  491. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/idna/idnadata.py +2151 -0
  492. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/idna/intranges.py +54 -0
  493. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/idna/package_data.py +2 -0
  494. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/idna/uts46data.py +8600 -0
  495. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/msgpack/__init__.py +57 -0
  496. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/msgpack/exceptions.py +48 -0
  497. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/msgpack/ext.py +193 -0
  498. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/msgpack/fallback.py +1010 -0
  499. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/packaging/__about__.py +26 -0
  500. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/packaging/__init__.py +25 -0
  501. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/packaging/_manylinux.py +301 -0
  502. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/packaging/_musllinux.py +136 -0
  503. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/packaging/_structures.py +61 -0
  504. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/packaging/markers.py +304 -0
  505. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/packaging/requirements.py +146 -0
  506. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/packaging/specifiers.py +802 -0
  507. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/packaging/tags.py +487 -0
  508. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/packaging/utils.py +136 -0
  509. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/packaging/version.py +504 -0
  510. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pkg_resources/__init__.py +3361 -0
  511. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/platformdirs/__init__.py +566 -0
  512. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/platformdirs/__main__.py +53 -0
  513. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/platformdirs/android.py +210 -0
  514. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/platformdirs/api.py +223 -0
  515. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/platformdirs/macos.py +91 -0
  516. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/platformdirs/unix.py +223 -0
  517. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/platformdirs/version.py +4 -0
  518. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/platformdirs/windows.py +255 -0
  519. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/__init__.py +82 -0
  520. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/__main__.py +17 -0
  521. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/cmdline.py +668 -0
  522. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/console.py +70 -0
  523. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/filter.py +71 -0
  524. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/filters/__init__.py +940 -0
  525. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/formatter.py +124 -0
  526. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/formatters/__init__.py +158 -0
  527. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/formatters/_mapping.py +23 -0
  528. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/formatters/bbcode.py +108 -0
  529. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/formatters/groff.py +170 -0
  530. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/formatters/html.py +989 -0
  531. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/formatters/img.py +645 -0
  532. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/formatters/irc.py +154 -0
  533. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/formatters/latex.py +521 -0
  534. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/formatters/other.py +161 -0
  535. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/formatters/pangomarkup.py +83 -0
  536. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/formatters/rtf.py +146 -0
  537. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/formatters/svg.py +188 -0
  538. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/formatters/terminal.py +127 -0
  539. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/formatters/terminal256.py +338 -0
  540. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/lexer.py +943 -0
  541. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/lexers/__init__.py +362 -0
  542. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/lexers/_mapping.py +559 -0
  543. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/lexers/python.py +1198 -0
  544. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/modeline.py +43 -0
  545. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/plugin.py +88 -0
  546. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/regexopt.py +91 -0
  547. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/scanner.py +104 -0
  548. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/sphinxext.py +217 -0
  549. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/style.py +197 -0
  550. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/styles/__init__.py +103 -0
  551. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/token.py +213 -0
  552. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/unistring.py +153 -0
  553. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pygments/util.py +330 -0
  554. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pyparsing/__init__.py +322 -0
  555. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pyparsing/actions.py +217 -0
  556. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pyparsing/common.py +432 -0
  557. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pyparsing/core.py +6115 -0
  558. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pyparsing/diagram/__init__.py +656 -0
  559. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pyparsing/exceptions.py +299 -0
  560. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pyparsing/helpers.py +1100 -0
  561. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pyparsing/results.py +796 -0
  562. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pyparsing/testing.py +331 -0
  563. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pyparsing/unicode.py +361 -0
  564. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pyparsing/util.py +284 -0
  565. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pyproject_hooks/__init__.py +23 -0
  566. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pyproject_hooks/_compat.py +8 -0
  567. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pyproject_hooks/_impl.py +330 -0
  568. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pyproject_hooks/_in_process/__init__.py +18 -0
  569. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py +353 -0
  570. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/requests/__init__.py +182 -0
  571. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/requests/__version__.py +14 -0
  572. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/requests/_internal_utils.py +50 -0
  573. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/requests/adapters.py +538 -0
  574. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/requests/api.py +157 -0
  575. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/requests/auth.py +315 -0
  576. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/requests/certs.py +24 -0
  577. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/requests/compat.py +67 -0
  578. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/requests/cookies.py +561 -0
  579. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/requests/exceptions.py +141 -0
  580. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/requests/help.py +131 -0
  581. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/requests/hooks.py +33 -0
  582. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/requests/models.py +1034 -0
  583. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/requests/packages.py +16 -0
  584. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/requests/sessions.py +833 -0
  585. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/requests/status_codes.py +128 -0
  586. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/requests/structures.py +99 -0
  587. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/requests/utils.py +1094 -0
  588. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/resolvelib/__init__.py +26 -0
  589. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/resolvelib/compat/__init__.py +0 -0
  590. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/resolvelib/compat/collections_abc.py +6 -0
  591. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/resolvelib/providers.py +133 -0
  592. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/resolvelib/reporters.py +43 -0
  593. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/resolvelib/resolvers.py +547 -0
  594. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/resolvelib/structs.py +170 -0
  595. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/__init__.py +177 -0
  596. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/__main__.py +274 -0
  597. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_cell_widths.py +451 -0
  598. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_emoji_codes.py +3610 -0
  599. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_emoji_replace.py +32 -0
  600. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_export_format.py +76 -0
  601. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_extension.py +10 -0
  602. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_fileno.py +24 -0
  603. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_inspect.py +270 -0
  604. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_log_render.py +94 -0
  605. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_loop.py +43 -0
  606. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_null_file.py +69 -0
  607. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_palettes.py +309 -0
  608. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_pick.py +17 -0
  609. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_ratio.py +160 -0
  610. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_spinners.py +482 -0
  611. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_stack.py +16 -0
  612. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_timer.py +19 -0
  613. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_win32_console.py +662 -0
  614. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_windows.py +72 -0
  615. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_windows_renderer.py +56 -0
  616. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/_wrap.py +56 -0
  617. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/abc.py +33 -0
  618. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/align.py +311 -0
  619. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/ansi.py +240 -0
  620. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/bar.py +94 -0
  621. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/box.py +517 -0
  622. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/cells.py +154 -0
  623. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/color.py +622 -0
  624. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/color_triplet.py +38 -0
  625. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/columns.py +187 -0
  626. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/console.py +2633 -0
  627. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/constrain.py +37 -0
  628. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/containers.py +167 -0
  629. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/control.py +225 -0
  630. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/default_styles.py +190 -0
  631. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/diagnose.py +37 -0
  632. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/emoji.py +96 -0
  633. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/errors.py +34 -0
  634. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/file_proxy.py +57 -0
  635. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/filesize.py +89 -0
  636. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/highlighter.py +232 -0
  637. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/json.py +140 -0
  638. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/jupyter.py +101 -0
  639. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/layout.py +443 -0
  640. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/live.py +375 -0
  641. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/live_render.py +113 -0
  642. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/logging.py +289 -0
  643. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/markup.py +246 -0
  644. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/measure.py +151 -0
  645. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/padding.py +141 -0
  646. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/pager.py +34 -0
  647. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/palette.py +100 -0
  648. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/panel.py +308 -0
  649. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/pretty.py +994 -0
  650. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/progress.py +1702 -0
  651. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/progress_bar.py +224 -0
  652. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/prompt.py +376 -0
  653. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/protocol.py +42 -0
  654. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/region.py +10 -0
  655. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/repr.py +149 -0
  656. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/rule.py +130 -0
  657. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/scope.py +86 -0
  658. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/screen.py +54 -0
  659. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/segment.py +739 -0
  660. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/spinner.py +137 -0
  661. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/status.py +132 -0
  662. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/style.py +796 -0
  663. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/styled.py +42 -0
  664. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/syntax.py +948 -0
  665. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/table.py +1002 -0
  666. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/terminal_theme.py +153 -0
  667. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/text.py +1307 -0
  668. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/theme.py +115 -0
  669. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/themes.py +5 -0
  670. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/traceback.py +756 -0
  671. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/rich/tree.py +251 -0
  672. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/six.py +998 -0
  673. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/tenacity/__init__.py +608 -0
  674. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/tenacity/_asyncio.py +94 -0
  675. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/tenacity/_utils.py +76 -0
  676. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/tenacity/after.py +51 -0
  677. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/tenacity/before.py +46 -0
  678. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/tenacity/before_sleep.py +71 -0
  679. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/tenacity/nap.py +43 -0
  680. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/tenacity/retry.py +272 -0
  681. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/tenacity/stop.py +103 -0
  682. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/tenacity/tornadoweb.py +59 -0
  683. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/tenacity/wait.py +228 -0
  684. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/tomli/__init__.py +11 -0
  685. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/tomli/_parser.py +691 -0
  686. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/tomli/_re.py +107 -0
  687. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/tomli/_types.py +10 -0
  688. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/truststore/__init__.py +13 -0
  689. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/truststore/_api.py +302 -0
  690. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/truststore/_macos.py +501 -0
  691. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/truststore/_openssl.py +66 -0
  692. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/truststore/_ssl_constants.py +31 -0
  693. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/truststore/_windows.py +554 -0
  694. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/typing_extensions.py +3072 -0
  695. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/__init__.py +102 -0
  696. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/_collections.py +337 -0
  697. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/_version.py +2 -0
  698. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/connection.py +572 -0
  699. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/connectionpool.py +1132 -0
  700. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/contrib/__init__.py +0 -0
  701. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/contrib/_appengine_environ.py +36 -0
  702. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py +0 -0
  703. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/bindings.py +519 -0
  704. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/low_level.py +397 -0
  705. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/contrib/appengine.py +314 -0
  706. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/contrib/ntlmpool.py +130 -0
  707. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py +518 -0
  708. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/contrib/securetransport.py +921 -0
  709. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/contrib/socks.py +216 -0
  710. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/exceptions.py +323 -0
  711. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/fields.py +274 -0
  712. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/filepost.py +98 -0
  713. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/packages/__init__.py +0 -0
  714. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py +0 -0
  715. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/packages/backports/makefile.py +51 -0
  716. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/packages/backports/weakref_finalize.py +155 -0
  717. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/packages/six.py +1076 -0
  718. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/poolmanager.py +537 -0
  719. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/request.py +191 -0
  720. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/response.py +879 -0
  721. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/util/__init__.py +49 -0
  722. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/util/connection.py +149 -0
  723. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/util/proxy.py +57 -0
  724. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/util/queue.py +22 -0
  725. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/util/request.py +137 -0
  726. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/util/response.py +107 -0
  727. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/util/retry.py +620 -0
  728. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/util/ssl_.py +495 -0
  729. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/util/ssl_match_hostname.py +159 -0
  730. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/util/ssltransport.py +221 -0
  731. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/util/timeout.py +271 -0
  732. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/util/url.py +435 -0
  733. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/urllib3/util/wait.py +152 -0
  734. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/webencodings/__init__.py +342 -0
  735. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/webencodings/labels.py +231 -0
  736. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/webencodings/mklabels.py +59 -0
  737. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/webencodings/tests.py +153 -0
  738. py2docfx/venv/venv0/Lib/site-packages/pip/_vendor/webencodings/x_user_defined.py +325 -0
  739. py2docfx/venv/venv0/Lib/site-packages/pkg_resources/__init__.py +3725 -0
  740. py2docfx/venv/venv0/Lib/site-packages/pkg_resources/tests/__init__.py +0 -0
  741. py2docfx/venv/venv0/Lib/site-packages/pkg_resources/tests/data/my-test-package-source/setup.py +7 -0
  742. py2docfx/venv/venv0/Lib/site-packages/pkg_resources/tests/test_find_distributions.py +56 -0
  743. py2docfx/venv/venv0/Lib/site-packages/pkg_resources/tests/test_integration_zope_interface.py +54 -0
  744. py2docfx/venv/venv0/Lib/site-packages/pkg_resources/tests/test_markers.py +8 -0
  745. py2docfx/venv/venv0/Lib/site-packages/pkg_resources/tests/test_pkg_resources.py +427 -0
  746. py2docfx/venv/venv0/Lib/site-packages/pkg_resources/tests/test_resources.py +869 -0
  747. py2docfx/venv/venv0/Lib/site-packages/pkg_resources/tests/test_working_set.py +501 -0
  748. py2docfx/venv/venv0/Lib/site-packages/pygments/__init__.py +82 -0
  749. py2docfx/venv/venv0/Lib/site-packages/pygments/__main__.py +17 -0
  750. py2docfx/venv/venv0/Lib/site-packages/pygments/cmdline.py +668 -0
  751. py2docfx/venv/venv0/Lib/site-packages/pygments/console.py +70 -0
  752. py2docfx/venv/venv0/Lib/site-packages/pygments/filter.py +70 -0
  753. py2docfx/venv/venv0/Lib/site-packages/pygments/filters/__init__.py +940 -0
  754. py2docfx/venv/venv0/Lib/site-packages/pygments/formatter.py +129 -0
  755. py2docfx/venv/venv0/Lib/site-packages/pygments/formatters/__init__.py +157 -0
  756. py2docfx/venv/venv0/Lib/site-packages/pygments/formatters/_mapping.py +23 -0
  757. py2docfx/venv/venv0/Lib/site-packages/pygments/formatters/bbcode.py +108 -0
  758. py2docfx/venv/venv0/Lib/site-packages/pygments/formatters/groff.py +170 -0
  759. py2docfx/venv/venv0/Lib/site-packages/pygments/formatters/html.py +987 -0
  760. py2docfx/venv/venv0/Lib/site-packages/pygments/formatters/img.py +685 -0
  761. py2docfx/venv/venv0/Lib/site-packages/pygments/formatters/irc.py +154 -0
  762. py2docfx/venv/venv0/Lib/site-packages/pygments/formatters/latex.py +518 -0
  763. py2docfx/venv/venv0/Lib/site-packages/pygments/formatters/other.py +160 -0
  764. py2docfx/venv/venv0/Lib/site-packages/pygments/formatters/pangomarkup.py +83 -0
  765. py2docfx/venv/venv0/Lib/site-packages/pygments/formatters/rtf.py +349 -0
  766. py2docfx/venv/venv0/Lib/site-packages/pygments/formatters/svg.py +185 -0
  767. py2docfx/venv/venv0/Lib/site-packages/pygments/formatters/terminal.py +127 -0
  768. py2docfx/venv/venv0/Lib/site-packages/pygments/formatters/terminal256.py +338 -0
  769. py2docfx/venv/venv0/Lib/site-packages/pygments/lexer.py +961 -0
  770. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/__init__.py +362 -0
  771. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_ada_builtins.py +103 -0
  772. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_asy_builtins.py +1644 -0
  773. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_cl_builtins.py +231 -0
  774. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_cocoa_builtins.py +75 -0
  775. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_csound_builtins.py +1780 -0
  776. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_css_builtins.py +558 -0
  777. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_julia_builtins.py +411 -0
  778. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_lasso_builtins.py +5326 -0
  779. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_lilypond_builtins.py +4932 -0
  780. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_lua_builtins.py +285 -0
  781. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_luau_builtins.py +62 -0
  782. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_mapping.py +589 -0
  783. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_mql_builtins.py +1171 -0
  784. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_mysql_builtins.py +1335 -0
  785. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_openedge_builtins.py +2600 -0
  786. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_php_builtins.py +3325 -0
  787. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_postgres_builtins.py +739 -0
  788. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_qlik_builtins.py +666 -0
  789. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_scheme_builtins.py +1609 -0
  790. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_scilab_builtins.py +3093 -0
  791. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_sourcemod_builtins.py +1151 -0
  792. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_stan_builtins.py +648 -0
  793. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_stata_builtins.py +457 -0
  794. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_tsql_builtins.py +1003 -0
  795. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_usd_builtins.py +112 -0
  796. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_vbscript_builtins.py +279 -0
  797. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/_vim_builtins.py +1938 -0
  798. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/actionscript.py +243 -0
  799. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/ada.py +144 -0
  800. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/agile.py +25 -0
  801. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/algebra.py +298 -0
  802. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/ambient.py +75 -0
  803. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/amdgpu.py +54 -0
  804. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/ampl.py +87 -0
  805. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/apdlexer.py +593 -0
  806. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/apl.py +103 -0
  807. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/archetype.py +315 -0
  808. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/arrow.py +116 -0
  809. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/arturo.py +249 -0
  810. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/asc.py +55 -0
  811. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/asm.py +1050 -0
  812. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/asn1.py +178 -0
  813. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/automation.py +379 -0
  814. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/bare.py +101 -0
  815. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/basic.py +656 -0
  816. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/bdd.py +57 -0
  817. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/berry.py +99 -0
  818. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/bibtex.py +159 -0
  819. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/blueprint.py +173 -0
  820. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/boa.py +97 -0
  821. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/bqn.py +109 -0
  822. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/business.py +625 -0
  823. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/c_cpp.py +414 -0
  824. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/c_like.py +738 -0
  825. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/capnproto.py +74 -0
  826. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/carbon.py +95 -0
  827. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/cddl.py +172 -0
  828. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/chapel.py +139 -0
  829. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/clean.py +180 -0
  830. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/comal.py +81 -0
  831. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/compiled.py +35 -0
  832. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/configs.py +1424 -0
  833. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/console.py +114 -0
  834. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/cplint.py +43 -0
  835. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/crystal.py +364 -0
  836. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/csound.py +466 -0
  837. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/css.py +602 -0
  838. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/d.py +259 -0
  839. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/dalvik.py +126 -0
  840. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/data.py +763 -0
  841. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/dax.py +135 -0
  842. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/devicetree.py +108 -0
  843. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/diff.py +169 -0
  844. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/dns.py +109 -0
  845. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/dotnet.py +846 -0
  846. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/dsls.py +970 -0
  847. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/dylan.py +279 -0
  848. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/ecl.py +144 -0
  849. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/eiffel.py +68 -0
  850. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/elm.py +123 -0
  851. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/elpi.py +172 -0
  852. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/email.py +132 -0
  853. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/erlang.py +526 -0
  854. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/esoteric.py +300 -0
  855. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/ezhil.py +76 -0
  856. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/factor.py +363 -0
  857. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/fantom.py +251 -0
  858. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/felix.py +275 -0
  859. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/fift.py +68 -0
  860. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/floscript.py +81 -0
  861. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/forth.py +178 -0
  862. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/fortran.py +212 -0
  863. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/foxpro.py +427 -0
  864. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/freefem.py +893 -0
  865. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/func.py +110 -0
  866. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/functional.py +21 -0
  867. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/futhark.py +105 -0
  868. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/gcodelexer.py +35 -0
  869. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/gdscript.py +189 -0
  870. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/go.py +97 -0
  871. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/grammar_notation.py +262 -0
  872. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/graph.py +108 -0
  873. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/graphics.py +794 -0
  874. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/graphql.py +176 -0
  875. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/graphviz.py +58 -0
  876. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/gsql.py +103 -0
  877. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/haskell.py +866 -0
  878. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/haxe.py +935 -0
  879. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/hdl.py +466 -0
  880. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/hexdump.py +102 -0
  881. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/html.py +626 -0
  882. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/idl.py +284 -0
  883. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/igor.py +435 -0
  884. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/inferno.py +95 -0
  885. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/installers.py +325 -0
  886. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/int_fiction.py +1370 -0
  887. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/iolang.py +61 -0
  888. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/j.py +151 -0
  889. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/javascript.py +1587 -0
  890. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/jmespath.py +69 -0
  891. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/jslt.py +94 -0
  892. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/jsonnet.py +169 -0
  893. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/jsx.py +75 -0
  894. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/julia.py +293 -0
  895. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/jvm.py +1802 -0
  896. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/kuin.py +332 -0
  897. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/kusto.py +93 -0
  898. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/ldap.py +155 -0
  899. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/lean.py +241 -0
  900. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/lilypond.py +225 -0
  901. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/lisp.py +3146 -0
  902. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/macaulay2.py +1788 -0
  903. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/make.py +212 -0
  904. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/markup.py +1654 -0
  905. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/math.py +21 -0
  906. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/matlab.py +3306 -0
  907. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/maxima.py +84 -0
  908. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/meson.py +139 -0
  909. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/mime.py +210 -0
  910. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/minecraft.py +391 -0
  911. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/mips.py +130 -0
  912. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/ml.py +958 -0
  913. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/modeling.py +366 -0
  914. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/modula2.py +1579 -0
  915. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/mojo.py +704 -0
  916. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/monte.py +203 -0
  917. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/mosel.py +447 -0
  918. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/ncl.py +894 -0
  919. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/nimrod.py +199 -0
  920. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/nit.py +63 -0
  921. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/nix.py +144 -0
  922. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/oberon.py +120 -0
  923. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/objective.py +513 -0
  924. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/ooc.py +84 -0
  925. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/openscad.py +96 -0
  926. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/other.py +41 -0
  927. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/parasail.py +78 -0
  928. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/parsers.py +798 -0
  929. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/pascal.py +644 -0
  930. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/pawn.py +202 -0
  931. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/perl.py +733 -0
  932. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/phix.py +363 -0
  933. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/php.py +334 -0
  934. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/pointless.py +70 -0
  935. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/pony.py +93 -0
  936. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/praat.py +303 -0
  937. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/procfile.py +41 -0
  938. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/prolog.py +318 -0
  939. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/promql.py +176 -0
  940. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/prql.py +251 -0
  941. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/ptx.py +119 -0
  942. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/python.py +1198 -0
  943. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/q.py +187 -0
  944. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/qlik.py +117 -0
  945. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/qvt.py +153 -0
  946. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/r.py +192 -0
  947. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/rdf.py +468 -0
  948. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/rebol.py +419 -0
  949. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/resource.py +83 -0
  950. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/ride.py +138 -0
  951. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/rita.py +42 -0
  952. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/rnc.py +66 -0
  953. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/roboconf.py +81 -0
  954. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/robotframework.py +551 -0
  955. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/ruby.py +518 -0
  956. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/rust.py +222 -0
  957. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/sas.py +227 -0
  958. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/savi.py +171 -0
  959. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/scdoc.py +85 -0
  960. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/scripting.py +1598 -0
  961. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/sgf.py +59 -0
  962. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/shell.py +898 -0
  963. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/sieve.py +78 -0
  964. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/slash.py +183 -0
  965. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/smalltalk.py +194 -0
  966. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/smithy.py +77 -0
  967. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/smv.py +78 -0
  968. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/snobol.py +82 -0
  969. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/solidity.py +87 -0
  970. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/soong.py +78 -0
  971. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/sophia.py +102 -0
  972. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/special.py +121 -0
  973. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/spice.py +70 -0
  974. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/sql.py +1033 -0
  975. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/srcinfo.py +62 -0
  976. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/stata.py +170 -0
  977. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/supercollider.py +94 -0
  978. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/tact.py +303 -0
  979. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/tal.py +77 -0
  980. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/tcl.py +148 -0
  981. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/teal.py +88 -0
  982. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/templates.py +2355 -0
  983. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/teraterm.py +325 -0
  984. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/testing.py +209 -0
  985. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/text.py +27 -0
  986. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/textedit.py +205 -0
  987. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/textfmts.py +436 -0
  988. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/theorem.py +410 -0
  989. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/thingsdb.py +140 -0
  990. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/tlb.py +59 -0
  991. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/tls.py +54 -0
  992. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/tnt.py +270 -0
  993. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/trafficscript.py +51 -0
  994. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/typoscript.py +216 -0
  995. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/typst.py +104 -0
  996. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/ul4.py +309 -0
  997. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/unicon.py +413 -0
  998. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/urbi.py +145 -0
  999. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/usd.py +85 -0
  1000. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/varnish.py +189 -0
  1001. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/verification.py +113 -0
  1002. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/verifpal.py +65 -0
  1003. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/vip.py +150 -0
  1004. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/vyper.py +140 -0
  1005. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/web.py +24 -0
  1006. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/webassembly.py +119 -0
  1007. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/webidl.py +298 -0
  1008. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/webmisc.py +1006 -0
  1009. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/wgsl.py +406 -0
  1010. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/whiley.py +115 -0
  1011. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/wowtoc.py +120 -0
  1012. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/wren.py +98 -0
  1013. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/x10.py +66 -0
  1014. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/xorg.py +38 -0
  1015. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/yang.py +103 -0
  1016. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/yara.py +69 -0
  1017. py2docfx/venv/venv0/Lib/site-packages/pygments/lexers/zig.py +125 -0
  1018. py2docfx/venv/venv0/Lib/site-packages/pygments/modeline.py +43 -0
  1019. py2docfx/venv/venv0/Lib/site-packages/pygments/plugin.py +72 -0
  1020. py2docfx/venv/venv0/Lib/site-packages/pygments/regexopt.py +91 -0
  1021. py2docfx/venv/venv0/Lib/site-packages/pygments/scanner.py +104 -0
  1022. py2docfx/venv/venv0/Lib/site-packages/pygments/sphinxext.py +247 -0
  1023. py2docfx/venv/venv0/Lib/site-packages/pygments/style.py +203 -0
  1024. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/__init__.py +61 -0
  1025. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/_mapping.py +54 -0
  1026. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/abap.py +32 -0
  1027. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/algol.py +65 -0
  1028. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/algol_nu.py +65 -0
  1029. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/arduino.py +100 -0
  1030. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/autumn.py +67 -0
  1031. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/borland.py +53 -0
  1032. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/bw.py +52 -0
  1033. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/coffee.py +80 -0
  1034. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/colorful.py +83 -0
  1035. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/default.py +76 -0
  1036. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/dracula.py +90 -0
  1037. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/emacs.py +75 -0
  1038. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/friendly.py +76 -0
  1039. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/friendly_grayscale.py +80 -0
  1040. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/fruity.py +47 -0
  1041. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/gh_dark.py +113 -0
  1042. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/gruvbox.py +118 -0
  1043. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/igor.py +32 -0
  1044. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/inkpot.py +72 -0
  1045. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/lightbulb.py +110 -0
  1046. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/lilypond.py +62 -0
  1047. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/lovelace.py +100 -0
  1048. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/manni.py +79 -0
  1049. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/material.py +124 -0
  1050. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/monokai.py +112 -0
  1051. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/murphy.py +82 -0
  1052. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/native.py +70 -0
  1053. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/nord.py +156 -0
  1054. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/onedark.py +63 -0
  1055. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/paraiso_dark.py +124 -0
  1056. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/paraiso_light.py +124 -0
  1057. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/pastie.py +78 -0
  1058. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/perldoc.py +73 -0
  1059. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/rainbow_dash.py +95 -0
  1060. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/rrt.py +39 -0
  1061. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/sas.py +46 -0
  1062. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/solarized.py +144 -0
  1063. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/staroffice.py +31 -0
  1064. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/stata_dark.py +42 -0
  1065. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/stata_light.py +42 -0
  1066. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/tango.py +143 -0
  1067. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/trac.py +66 -0
  1068. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/vim.py +67 -0
  1069. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/vs.py +41 -0
  1070. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/xcode.py +53 -0
  1071. py2docfx/venv/venv0/Lib/site-packages/pygments/styles/zenburn.py +83 -0
  1072. py2docfx/venv/venv0/Lib/site-packages/pygments/token.py +214 -0
  1073. py2docfx/venv/venv0/Lib/site-packages/pygments/unistring.py +153 -0
  1074. py2docfx/venv/venv0/Lib/site-packages/pygments/util.py +324 -0
  1075. py2docfx/venv/venv0/Lib/site-packages/requests/__init__.py +184 -0
  1076. py2docfx/venv/venv0/Lib/site-packages/requests/__version__.py +14 -0
  1077. py2docfx/venv/venv0/Lib/site-packages/requests/_internal_utils.py +50 -0
  1078. py2docfx/venv/venv0/Lib/site-packages/requests/adapters.py +719 -0
  1079. py2docfx/venv/venv0/Lib/site-packages/requests/api.py +157 -0
  1080. py2docfx/venv/venv0/Lib/site-packages/requests/auth.py +314 -0
  1081. py2docfx/venv/venv0/Lib/site-packages/requests/certs.py +17 -0
  1082. py2docfx/venv/venv0/Lib/site-packages/requests/compat.py +94 -0
  1083. py2docfx/venv/venv0/Lib/site-packages/requests/cookies.py +561 -0
  1084. py2docfx/venv/venv0/Lib/site-packages/requests/exceptions.py +151 -0
  1085. py2docfx/venv/venv0/Lib/site-packages/requests/help.py +134 -0
  1086. py2docfx/venv/venv0/Lib/site-packages/requests/hooks.py +33 -0
  1087. py2docfx/venv/venv0/Lib/site-packages/requests/models.py +1037 -0
  1088. py2docfx/venv/venv0/Lib/site-packages/requests/packages.py +23 -0
  1089. py2docfx/venv/venv0/Lib/site-packages/requests/sessions.py +831 -0
  1090. py2docfx/venv/venv0/Lib/site-packages/requests/status_codes.py +128 -0
  1091. py2docfx/venv/venv0/Lib/site-packages/requests/structures.py +99 -0
  1092. py2docfx/venv/venv0/Lib/site-packages/requests/utils.py +1096 -0
  1093. py2docfx/venv/venv0/Lib/site-packages/setuptools/__init__.py +290 -0
  1094. py2docfx/venv/venv0/Lib/site-packages/setuptools/_core_metadata.py +286 -0
  1095. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/__init__.py +14 -0
  1096. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/_log.py +3 -0
  1097. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/_macos_compat.py +12 -0
  1098. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/_modified.py +73 -0
  1099. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/_msvccompiler.py +604 -0
  1100. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/archive_util.py +264 -0
  1101. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/ccompiler.py +1256 -0
  1102. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/cmd.py +439 -0
  1103. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/__init__.py +23 -0
  1104. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/_framework_compat.py +54 -0
  1105. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/bdist.py +155 -0
  1106. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/bdist_dumb.py +140 -0
  1107. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/bdist_rpm.py +597 -0
  1108. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/build.py +156 -0
  1109. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/build_clib.py +208 -0
  1110. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/build_ext.py +796 -0
  1111. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/build_py.py +406 -0
  1112. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/build_scripts.py +170 -0
  1113. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/check.py +154 -0
  1114. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/clean.py +76 -0
  1115. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/config.py +369 -0
  1116. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/install.py +811 -0
  1117. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/install_data.py +94 -0
  1118. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/install_egg_info.py +92 -0
  1119. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/install_headers.py +44 -0
  1120. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/install_lib.py +234 -0
  1121. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/install_scripts.py +61 -0
  1122. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/command/sdist.py +515 -0
  1123. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/compat/__init__.py +15 -0
  1124. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/compat/py38.py +34 -0
  1125. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/compat/py39.py +66 -0
  1126. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/core.py +286 -0
  1127. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/cygwinccompiler.py +339 -0
  1128. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/debug.py +5 -0
  1129. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/dep_util.py +14 -0
  1130. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/dir_util.py +249 -0
  1131. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/dist.py +1288 -0
  1132. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/errors.py +124 -0
  1133. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/extension.py +247 -0
  1134. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/fancy_getopt.py +469 -0
  1135. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/file_util.py +236 -0
  1136. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/filelist.py +369 -0
  1137. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/log.py +56 -0
  1138. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/spawn.py +117 -0
  1139. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/sysconfig.py +583 -0
  1140. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/__init__.py +42 -0
  1141. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/compat/__init__.py +0 -0
  1142. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/compat/py38.py +50 -0
  1143. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/support.py +134 -0
  1144. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_archive_util.py +353 -0
  1145. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_bdist.py +47 -0
  1146. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_bdist_dumb.py +78 -0
  1147. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_bdist_rpm.py +128 -0
  1148. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_build.py +47 -0
  1149. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_build_clib.py +134 -0
  1150. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_build_ext.py +563 -0
  1151. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_build_py.py +196 -0
  1152. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_build_scripts.py +96 -0
  1153. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_ccompiler.py +91 -0
  1154. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_check.py +194 -0
  1155. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_clean.py +45 -0
  1156. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_cmd.py +107 -0
  1157. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_config_cmd.py +87 -0
  1158. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_core.py +130 -0
  1159. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_cygwinccompiler.py +81 -0
  1160. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_dir_util.py +112 -0
  1161. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_dist.py +545 -0
  1162. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_extension.py +108 -0
  1163. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_file_util.py +94 -0
  1164. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_filelist.py +336 -0
  1165. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_install.py +245 -0
  1166. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_install_data.py +74 -0
  1167. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_install_headers.py +33 -0
  1168. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_install_lib.py +110 -0
  1169. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_install_scripts.py +52 -0
  1170. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_log.py +12 -0
  1171. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_mingwccompiler.py +56 -0
  1172. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_modified.py +126 -0
  1173. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_msvccompiler.py +137 -0
  1174. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_sdist.py +470 -0
  1175. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_spawn.py +131 -0
  1176. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_sysconfig.py +319 -0
  1177. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_text_file.py +127 -0
  1178. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_unixccompiler.py +351 -0
  1179. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_util.py +243 -0
  1180. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_version.py +80 -0
  1181. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/test_versionpredicate.py +0 -0
  1182. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/tests/unix_compat.py +17 -0
  1183. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/text_file.py +286 -0
  1184. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/unixccompiler.py +402 -0
  1185. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/util.py +505 -0
  1186. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/version.py +349 -0
  1187. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/versionpredicate.py +175 -0
  1188. py2docfx/venv/venv0/Lib/site-packages/setuptools/_distutils/zosccompiler.py +229 -0
  1189. py2docfx/venv/venv0/Lib/site-packages/setuptools/_entry_points.py +90 -0
  1190. py2docfx/venv/venv0/Lib/site-packages/setuptools/_imp.py +87 -0
  1191. py2docfx/venv/venv0/Lib/site-packages/setuptools/_importlib.py +12 -0
  1192. py2docfx/venv/venv0/Lib/site-packages/setuptools/_itertools.py +23 -0
  1193. py2docfx/venv/venv0/Lib/site-packages/setuptools/_normalization.py +144 -0
  1194. py2docfx/venv/venv0/Lib/site-packages/setuptools/_path.py +87 -0
  1195. py2docfx/venv/venv0/Lib/site-packages/setuptools/_reqs.py +41 -0
  1196. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/autocommand/__init__.py +27 -0
  1197. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/autocommand/autoasync.py +142 -0
  1198. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/autocommand/autocommand.py +70 -0
  1199. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/autocommand/automain.py +59 -0
  1200. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/autocommand/autoparse.py +333 -0
  1201. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/autocommand/errors.py +23 -0
  1202. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/backports/__init__.py +1 -0
  1203. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/backports/tarfile/__init__.py +2937 -0
  1204. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/backports/tarfile/__main__.py +5 -0
  1205. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/backports/tarfile/compat/__init__.py +0 -0
  1206. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/backports/tarfile/compat/py38.py +24 -0
  1207. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_metadata/__init__.py +1083 -0
  1208. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_metadata/_adapters.py +83 -0
  1209. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_metadata/_collections.py +30 -0
  1210. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_metadata/_compat.py +57 -0
  1211. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_metadata/_functools.py +104 -0
  1212. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_metadata/_itertools.py +73 -0
  1213. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_metadata/_meta.py +67 -0
  1214. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_metadata/_text.py +99 -0
  1215. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_metadata/compat/__init__.py +0 -0
  1216. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_metadata/compat/py311.py +22 -0
  1217. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_metadata/compat/py39.py +36 -0
  1218. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_metadata/diagnose.py +21 -0
  1219. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/__init__.py +36 -0
  1220. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/_adapters.py +168 -0
  1221. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/_common.py +210 -0
  1222. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/_itertools.py +38 -0
  1223. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/abc.py +171 -0
  1224. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/compat/__init__.py +0 -0
  1225. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/compat/py38.py +11 -0
  1226. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/compat/py39.py +10 -0
  1227. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/functional.py +81 -0
  1228. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/future/__init__.py +0 -0
  1229. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/future/adapters.py +95 -0
  1230. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/readers.py +194 -0
  1231. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/simple.py +106 -0
  1232. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/__init__.py +0 -0
  1233. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/_path.py +56 -0
  1234. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/compat/__init__.py +0 -0
  1235. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/compat/py312.py +18 -0
  1236. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/compat/py39.py +10 -0
  1237. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/data01/__init__.py +0 -0
  1238. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/data01/subdirectory/__init__.py +0 -0
  1239. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/data02/__init__.py +0 -0
  1240. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/data02/one/__init__.py +0 -0
  1241. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/data02/two/__init__.py +0 -0
  1242. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_compatibilty_files.py +104 -0
  1243. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_contents.py +43 -0
  1244. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_custom.py +47 -0
  1245. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_files.py +117 -0
  1246. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_functional.py +242 -0
  1247. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_open.py +89 -0
  1248. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_path.py +65 -0
  1249. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_read.py +97 -0
  1250. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_reader.py +145 -0
  1251. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/test_resource.py +241 -0
  1252. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/util.py +164 -0
  1253. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/importlib_resources/tests/zip.py +32 -0
  1254. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/inflect/__init__.py +3986 -0
  1255. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/inflect/compat/__init__.py +0 -0
  1256. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/inflect/compat/py38.py +7 -0
  1257. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/jaraco/collections/__init__.py +1091 -0
  1258. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/jaraco/context.py +361 -0
  1259. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/jaraco/functools/__init__.py +633 -0
  1260. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/jaraco/text/__init__.py +624 -0
  1261. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/jaraco/text/layouts.py +25 -0
  1262. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/jaraco/text/show-newlines.py +33 -0
  1263. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/jaraco/text/strip-prefix.py +21 -0
  1264. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/jaraco/text/to-dvorak.py +6 -0
  1265. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/jaraco/text/to-qwerty.py +6 -0
  1266. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/more_itertools/__init__.py +6 -0
  1267. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/more_itertools/more.py +4806 -0
  1268. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/more_itertools/recipes.py +1046 -0
  1269. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/packaging/__init__.py +15 -0
  1270. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/packaging/_elffile.py +110 -0
  1271. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/packaging/_manylinux.py +262 -0
  1272. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/packaging/_musllinux.py +85 -0
  1273. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/packaging/_parser.py +354 -0
  1274. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/packaging/_structures.py +61 -0
  1275. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/packaging/_tokenizer.py +194 -0
  1276. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/packaging/markers.py +325 -0
  1277. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/packaging/metadata.py +804 -0
  1278. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/packaging/requirements.py +91 -0
  1279. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/packaging/specifiers.py +1009 -0
  1280. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/packaging/tags.py +568 -0
  1281. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/packaging/utils.py +174 -0
  1282. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/packaging/version.py +563 -0
  1283. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/platformdirs/__init__.py +627 -0
  1284. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/platformdirs/__main__.py +55 -0
  1285. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/platformdirs/android.py +249 -0
  1286. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/platformdirs/api.py +292 -0
  1287. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/platformdirs/macos.py +130 -0
  1288. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/platformdirs/unix.py +275 -0
  1289. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/platformdirs/version.py +16 -0
  1290. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/platformdirs/windows.py +272 -0
  1291. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/tomli/__init__.py +11 -0
  1292. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/tomli/_parser.py +691 -0
  1293. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/tomli/_re.py +107 -0
  1294. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/tomli/_types.py +10 -0
  1295. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/typeguard/__init__.py +48 -0
  1296. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/typeguard/_checkers.py +993 -0
  1297. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/typeguard/_config.py +108 -0
  1298. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/typeguard/_decorators.py +235 -0
  1299. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/typeguard/_exceptions.py +42 -0
  1300. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/typeguard/_functions.py +308 -0
  1301. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/typeguard/_importhook.py +213 -0
  1302. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/typeguard/_memo.py +48 -0
  1303. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/typeguard/_pytest_plugin.py +127 -0
  1304. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/typeguard/_suppression.py +86 -0
  1305. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/typeguard/_transformer.py +1229 -0
  1306. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/typeguard/_union_transformer.py +55 -0
  1307. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/typeguard/_utils.py +173 -0
  1308. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/typing_extensions.py +3641 -0
  1309. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/__init__.py +3 -0
  1310. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/__main__.py +23 -0
  1311. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/_setuptools_logging.py +26 -0
  1312. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/bdist_wheel.py +595 -0
  1313. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/cli/__init__.py +155 -0
  1314. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/cli/convert.py +273 -0
  1315. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/cli/pack.py +85 -0
  1316. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/cli/tags.py +139 -0
  1317. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/cli/unpack.py +30 -0
  1318. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/macosx_libfile.py +469 -0
  1319. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/metadata.py +180 -0
  1320. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/util.py +26 -0
  1321. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/vendored/__init__.py +0 -0
  1322. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/__init__.py +0 -0
  1323. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/_elffile.py +108 -0
  1324. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/_manylinux.py +260 -0
  1325. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/_musllinux.py +83 -0
  1326. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/_parser.py +356 -0
  1327. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/_structures.py +61 -0
  1328. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/_tokenizer.py +192 -0
  1329. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/markers.py +253 -0
  1330. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/requirements.py +90 -0
  1331. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/specifiers.py +1011 -0
  1332. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/tags.py +571 -0
  1333. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/utils.py +172 -0
  1334. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/vendored/packaging/version.py +561 -0
  1335. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/wheel/wheelfile.py +196 -0
  1336. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/zipp/__init__.py +501 -0
  1337. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/zipp/compat/__init__.py +0 -0
  1338. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/zipp/compat/py310.py +11 -0
  1339. py2docfx/venv/venv0/Lib/site-packages/setuptools/_vendor/zipp/glob.py +106 -0
  1340. py2docfx/venv/venv0/Lib/site-packages/setuptools/archive_util.py +217 -0
  1341. py2docfx/venv/venv0/Lib/site-packages/setuptools/build_meta.py +530 -0
  1342. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/__init__.py +13 -0
  1343. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/_requirestxt.py +131 -0
  1344. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/alias.py +78 -0
  1345. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/bdist_egg.py +465 -0
  1346. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/bdist_rpm.py +42 -0
  1347. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/bdist_wheel.py +635 -0
  1348. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/build.py +135 -0
  1349. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/build_clib.py +110 -0
  1350. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/build_ext.py +468 -0
  1351. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/build_py.py +404 -0
  1352. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/develop.py +195 -0
  1353. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/dist_info.py +107 -0
  1354. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/easy_install.py +2388 -0
  1355. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/editable_wheel.py +927 -0
  1356. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/egg_info.py +717 -0
  1357. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/install.py +165 -0
  1358. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/install_egg_info.py +58 -0
  1359. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/install_lib.py +134 -0
  1360. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/install_scripts.py +73 -0
  1361. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/rotate.py +65 -0
  1362. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/saveopts.py +21 -0
  1363. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/sdist.py +216 -0
  1364. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/setopt.py +141 -0
  1365. py2docfx/venv/venv0/Lib/site-packages/setuptools/command/test.py +45 -0
  1366. py2docfx/venv/venv0/Lib/site-packages/setuptools/compat/__init__.py +0 -0
  1367. py2docfx/venv/venv0/Lib/site-packages/setuptools/compat/py310.py +9 -0
  1368. py2docfx/venv/venv0/Lib/site-packages/setuptools/compat/py311.py +27 -0
  1369. py2docfx/venv/venv0/Lib/site-packages/setuptools/compat/py312.py +13 -0
  1370. py2docfx/venv/venv0/Lib/site-packages/setuptools/compat/py39.py +9 -0
  1371. py2docfx/venv/venv0/Lib/site-packages/setuptools/config/__init__.py +43 -0
  1372. py2docfx/venv/venv0/Lib/site-packages/setuptools/config/_apply_pyprojecttoml.py +457 -0
  1373. py2docfx/venv/venv0/Lib/site-packages/setuptools/config/_validate_pyproject/__init__.py +34 -0
  1374. py2docfx/venv/venv0/Lib/site-packages/setuptools/config/_validate_pyproject/error_reporting.py +336 -0
  1375. py2docfx/venv/venv0/Lib/site-packages/setuptools/config/_validate_pyproject/extra_validations.py +52 -0
  1376. py2docfx/venv/venv0/Lib/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_exceptions.py +51 -0
  1377. py2docfx/venv/venv0/Lib/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_validations.py +1319 -0
  1378. py2docfx/venv/venv0/Lib/site-packages/setuptools/config/_validate_pyproject/formats.py +375 -0
  1379. py2docfx/venv/venv0/Lib/site-packages/setuptools/config/expand.py +443 -0
  1380. py2docfx/venv/venv0/Lib/site-packages/setuptools/config/pyprojecttoml.py +466 -0
  1381. py2docfx/venv/venv0/Lib/site-packages/setuptools/config/setupcfg.py +780 -0
  1382. py2docfx/venv/venv0/Lib/site-packages/setuptools/depends.py +166 -0
  1383. py2docfx/venv/venv0/Lib/site-packages/setuptools/discovery.py +607 -0
  1384. py2docfx/venv/venv0/Lib/site-packages/setuptools/dist.py +955 -0
  1385. py2docfx/venv/venv0/Lib/site-packages/setuptools/errors.py +72 -0
  1386. py2docfx/venv/venv0/Lib/site-packages/setuptools/extension.py +165 -0
  1387. py2docfx/venv/venv0/Lib/site-packages/setuptools/glob.py +165 -0
  1388. py2docfx/venv/venv0/Lib/site-packages/setuptools/installer.py +145 -0
  1389. py2docfx/venv/venv0/Lib/site-packages/setuptools/launch.py +36 -0
  1390. py2docfx/venv/venv0/Lib/site-packages/setuptools/logging.py +40 -0
  1391. py2docfx/venv/venv0/Lib/site-packages/setuptools/modified.py +8 -0
  1392. py2docfx/venv/venv0/Lib/site-packages/setuptools/monkey.py +126 -0
  1393. py2docfx/venv/venv0/Lib/site-packages/setuptools/msvc.py +1515 -0
  1394. py2docfx/venv/venv0/Lib/site-packages/setuptools/namespaces.py +106 -0
  1395. py2docfx/venv/venv0/Lib/site-packages/setuptools/package_index.py +1148 -0
  1396. py2docfx/venv/venv0/Lib/site-packages/setuptools/sandbox.py +529 -0
  1397. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/__init__.py +13 -0
  1398. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/compat/__init__.py +0 -0
  1399. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/compat/py39.py +3 -0
  1400. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/config/__init__.py +0 -0
  1401. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/config/downloads/__init__.py +57 -0
  1402. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/config/downloads/preload.py +18 -0
  1403. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/config/test_apply_pyprojecttoml.py +511 -0
  1404. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/config/test_expand.py +221 -0
  1405. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/config/test_pyprojecttoml.py +396 -0
  1406. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/config/test_pyprojecttoml_dynamic_deps.py +99 -0
  1407. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/config/test_setupcfg.py +969 -0
  1408. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/contexts.py +145 -0
  1409. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/environment.py +95 -0
  1410. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/fixtures.py +157 -0
  1411. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/integration/__init__.py +0 -0
  1412. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/integration/helpers.py +77 -0
  1413. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/integration/test_pip_install_sdist.py +224 -0
  1414. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/mod_with_constant.py +1 -0
  1415. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/namespaces.py +90 -0
  1416. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/script-with-bom.py +1 -0
  1417. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/server.py +86 -0
  1418. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_archive_util.py +36 -0
  1419. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_bdist_deprecations.py +28 -0
  1420. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_bdist_egg.py +69 -0
  1421. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_bdist_wheel.py +621 -0
  1422. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_build.py +33 -0
  1423. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_build_clib.py +84 -0
  1424. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_build_ext.py +291 -0
  1425. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_build_meta.py +970 -0
  1426. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_build_py.py +480 -0
  1427. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_config_discovery.py +647 -0
  1428. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_core_metadata.py +389 -0
  1429. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_depends.py +15 -0
  1430. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_develop.py +175 -0
  1431. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_dist.py +280 -0
  1432. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_dist_info.py +210 -0
  1433. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_distutils_adoption.py +159 -0
  1434. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_easy_install.py +1468 -0
  1435. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_editable_install.py +1285 -0
  1436. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_egg_info.py +1285 -0
  1437. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_extern.py +15 -0
  1438. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_find_packages.py +218 -0
  1439. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_find_py_modules.py +73 -0
  1440. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_glob.py +45 -0
  1441. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_install_scripts.py +89 -0
  1442. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_logging.py +76 -0
  1443. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_manifest.py +631 -0
  1444. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_namespaces.py +138 -0
  1445. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_packageindex.py +278 -0
  1446. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_sandbox.py +134 -0
  1447. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_sdist.py +975 -0
  1448. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_setopt.py +40 -0
  1449. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_setuptools.py +289 -0
  1450. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_unicode_utils.py +10 -0
  1451. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_virtualenv.py +113 -0
  1452. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_warnings.py +106 -0
  1453. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_wheel.py +707 -0
  1454. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/test_windows_wrappers.py +259 -0
  1455. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/text.py +4 -0
  1456. py2docfx/venv/venv0/Lib/site-packages/setuptools/tests/textwrap.py +6 -0
  1457. py2docfx/venv/venv0/Lib/site-packages/setuptools/unicode_utils.py +102 -0
  1458. py2docfx/venv/venv0/Lib/site-packages/setuptools/version.py +6 -0
  1459. py2docfx/venv/venv0/Lib/site-packages/setuptools/warnings.py +107 -0
  1460. py2docfx/venv/venv0/Lib/site-packages/setuptools/wheel.py +236 -0
  1461. py2docfx/venv/venv0/Lib/site-packages/setuptools/windows_support.py +30 -0
  1462. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/__init__.py +83 -0
  1463. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/among.py +13 -0
  1464. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/arabic_stemmer.py +1199 -0
  1465. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/armenian_stemmer.py +316 -0
  1466. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/basestemmer.py +323 -0
  1467. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/basque_stemmer.py +683 -0
  1468. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/catalan_stemmer.py +784 -0
  1469. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/danish_stemmer.py +221 -0
  1470. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/dutch_stemmer.py +468 -0
  1471. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/english_stemmer.py +731 -0
  1472. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/finnish_stemmer.py +548 -0
  1473. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/french_stemmer.py +967 -0
  1474. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/german_stemmer.py +415 -0
  1475. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/greek_stemmer.py +2271 -0
  1476. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/hindi_stemmer.py +173 -0
  1477. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/hungarian_stemmer.py +520 -0
  1478. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/indonesian_stemmer.py +319 -0
  1479. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/irish_stemmer.py +276 -0
  1480. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/italian_stemmer.py +715 -0
  1481. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/lithuanian_stemmer.py +469 -0
  1482. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/nepali_stemmer.py +274 -0
  1483. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/norwegian_stemmer.py +191 -0
  1484. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/porter_stemmer.py +506 -0
  1485. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/portuguese_stemmer.py +659 -0
  1486. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/romanian_stemmer.py +633 -0
  1487. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/russian_stemmer.py +492 -0
  1488. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/serbian_stemmer.py +3497 -0
  1489. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/spanish_stemmer.py +708 -0
  1490. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/swedish_stemmer.py +189 -0
  1491. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/tamil_stemmer.py +1788 -0
  1492. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/turkish_stemmer.py +1803 -0
  1493. py2docfx/venv/venv0/Lib/site-packages/snowballstemmer/yiddish_stemmer.py +855 -0
  1494. py2docfx/venv/venv0/Lib/site-packages/sphinx/__init__.py +54 -0
  1495. py2docfx/venv/venv0/Lib/site-packages/sphinx/__main__.py +5 -0
  1496. py2docfx/venv/venv0/Lib/site-packages/sphinx/addnodes.py +564 -0
  1497. py2docfx/venv/venv0/Lib/site-packages/sphinx/application.py +1344 -0
  1498. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/__init__.py +671 -0
  1499. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/_epub_base.py +708 -0
  1500. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/changes.py +159 -0
  1501. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/dirhtml.py +51 -0
  1502. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/dummy.py +46 -0
  1503. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/epub3.py +293 -0
  1504. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/gettext.py +306 -0
  1505. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/html/__init__.py +1419 -0
  1506. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/html/transforms.py +84 -0
  1507. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/latex/__init__.py +546 -0
  1508. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/latex/constants.py +210 -0
  1509. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/latex/nodes.py +37 -0
  1510. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/latex/theming.py +132 -0
  1511. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/latex/transforms.py +632 -0
  1512. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/latex/util.py +48 -0
  1513. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/linkcheck.py +598 -0
  1514. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/manpage.py +125 -0
  1515. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/singlehtml.py +194 -0
  1516. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/texinfo.py +224 -0
  1517. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/text.py +89 -0
  1518. py2docfx/venv/venv0/Lib/site-packages/sphinx/builders/xml.py +117 -0
  1519. py2docfx/venv/venv0/Lib/site-packages/sphinx/cmd/__init__.py +1 -0
  1520. py2docfx/venv/venv0/Lib/site-packages/sphinx/cmd/build.py +324 -0
  1521. py2docfx/venv/venv0/Lib/site-packages/sphinx/cmd/make_mode.py +161 -0
  1522. py2docfx/venv/venv0/Lib/site-packages/sphinx/cmd/quickstart.py +609 -0
  1523. py2docfx/venv/venv0/Lib/site-packages/sphinx/config.py +520 -0
  1524. py2docfx/venv/venv0/Lib/site-packages/sphinx/deprecation.py +83 -0
  1525. py2docfx/venv/venv0/Lib/site-packages/sphinx/directives/__init__.py +340 -0
  1526. py2docfx/venv/venv0/Lib/site-packages/sphinx/directives/code.py +483 -0
  1527. py2docfx/venv/venv0/Lib/site-packages/sphinx/directives/other.py +393 -0
  1528. py2docfx/venv/venv0/Lib/site-packages/sphinx/directives/patches.py +189 -0
  1529. py2docfx/venv/venv0/Lib/site-packages/sphinx/domains/__init__.py +403 -0
  1530. py2docfx/venv/venv0/Lib/site-packages/sphinx/domains/c.py +3880 -0
  1531. py2docfx/venv/venv0/Lib/site-packages/sphinx/domains/changeset.py +160 -0
  1532. py2docfx/venv/venv0/Lib/site-packages/sphinx/domains/citation.py +153 -0
  1533. py2docfx/venv/venv0/Lib/site-packages/sphinx/domains/cpp.py +8162 -0
  1534. py2docfx/venv/venv0/Lib/site-packages/sphinx/domains/index.py +122 -0
  1535. py2docfx/venv/venv0/Lib/site-packages/sphinx/domains/javascript.py +499 -0
  1536. py2docfx/venv/venv0/Lib/site-packages/sphinx/domains/math.py +150 -0
  1537. py2docfx/venv/venv0/Lib/site-packages/sphinx/domains/python.py +1521 -0
  1538. py2docfx/venv/venv0/Lib/site-packages/sphinx/domains/rst.py +303 -0
  1539. py2docfx/venv/venv0/Lib/site-packages/sphinx/domains/std.py +1155 -0
  1540. py2docfx/venv/venv0/Lib/site-packages/sphinx/environment/__init__.py +730 -0
  1541. py2docfx/venv/venv0/Lib/site-packages/sphinx/environment/adapters/__init__.py +1 -0
  1542. py2docfx/venv/venv0/Lib/site-packages/sphinx/environment/adapters/asset.py +15 -0
  1543. py2docfx/venv/venv0/Lib/site-packages/sphinx/environment/adapters/indexentries.py +172 -0
  1544. py2docfx/venv/venv0/Lib/site-packages/sphinx/environment/adapters/toctree.py +340 -0
  1545. py2docfx/venv/venv0/Lib/site-packages/sphinx/environment/collectors/__init__.py +73 -0
  1546. py2docfx/venv/venv0/Lib/site-packages/sphinx/environment/collectors/asset.py +141 -0
  1547. py2docfx/venv/venv0/Lib/site-packages/sphinx/environment/collectors/dependencies.py +54 -0
  1548. py2docfx/venv/venv0/Lib/site-packages/sphinx/environment/collectors/metadata.py +68 -0
  1549. py2docfx/venv/venv0/Lib/site-packages/sphinx/environment/collectors/title.py +59 -0
  1550. py2docfx/venv/venv0/Lib/site-packages/sphinx/environment/collectors/toctree.py +350 -0
  1551. py2docfx/venv/venv0/Lib/site-packages/sphinx/errors.py +127 -0
  1552. py2docfx/venv/venv0/Lib/site-packages/sphinx/events.py +120 -0
  1553. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/__init__.py +1 -0
  1554. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/apidoc.py +470 -0
  1555. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/autodoc/__init__.py +2793 -0
  1556. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/autodoc/directive.py +148 -0
  1557. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/autodoc/importer.py +307 -0
  1558. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/autodoc/mock.py +195 -0
  1559. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/autodoc/preserve_defaults.py +124 -0
  1560. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/autodoc/type_comment.py +131 -0
  1561. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/autodoc/typehints.py +216 -0
  1562. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/autosectionlabel.py +66 -0
  1563. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/autosummary/__init__.py +837 -0
  1564. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/autosummary/generate.py +646 -0
  1565. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/coverage.py +315 -0
  1566. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/doctest.py +561 -0
  1567. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/duration.py +90 -0
  1568. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/extlinks.py +120 -0
  1569. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/githubpages.py +31 -0
  1570. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/graphviz.py +416 -0
  1571. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/ifconfig.py +78 -0
  1572. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/imgconverter.py +92 -0
  1573. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/imgmath.py +390 -0
  1574. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/inheritance_diagram.py +474 -0
  1575. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/intersphinx.py +684 -0
  1576. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/linkcode.py +73 -0
  1577. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/mathjax.py +122 -0
  1578. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/napoleon/__init__.py +474 -0
  1579. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/napoleon/docstring.py +1356 -0
  1580. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/napoleon/iterators.py +235 -0
  1581. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/todo.py +243 -0
  1582. py2docfx/venv/venv0/Lib/site-packages/sphinx/ext/viewcode.py +341 -0
  1583. py2docfx/venv/venv0/Lib/site-packages/sphinx/extension.py +82 -0
  1584. py2docfx/venv/venv0/Lib/site-packages/sphinx/highlighting.py +184 -0
  1585. py2docfx/venv/venv0/Lib/site-packages/sphinx/io.py +221 -0
  1586. py2docfx/venv/venv0/Lib/site-packages/sphinx/jinja2glue.py +217 -0
  1587. py2docfx/venv/venv0/Lib/site-packages/sphinx/locale/__init__.py +261 -0
  1588. py2docfx/venv/venv0/Lib/site-packages/sphinx/parsers.py +96 -0
  1589. py2docfx/venv/venv0/Lib/site-packages/sphinx/project.py +94 -0
  1590. py2docfx/venv/venv0/Lib/site-packages/sphinx/pycode/__init__.py +171 -0
  1591. py2docfx/venv/venv0/Lib/site-packages/sphinx/pycode/ast.py +211 -0
  1592. py2docfx/venv/venv0/Lib/site-packages/sphinx/pycode/parser.py +573 -0
  1593. py2docfx/venv/venv0/Lib/site-packages/sphinx/pygments_styles.py +87 -0
  1594. py2docfx/venv/venv0/Lib/site-packages/sphinx/registry.py +513 -0
  1595. py2docfx/venv/venv0/Lib/site-packages/sphinx/roles.py +428 -0
  1596. py2docfx/venv/venv0/Lib/site-packages/sphinx/search/__init__.py +593 -0
  1597. py2docfx/venv/venv0/Lib/site-packages/sphinx/search/da.py +120 -0
  1598. py2docfx/venv/venv0/Lib/site-packages/sphinx/search/de.py +303 -0
  1599. py2docfx/venv/venv0/Lib/site-packages/sphinx/search/en.py +220 -0
  1600. py2docfx/venv/venv0/Lib/site-packages/sphinx/search/es.py +363 -0
  1601. py2docfx/venv/venv0/Lib/site-packages/sphinx/search/fi.py +113 -0
  1602. py2docfx/venv/venv0/Lib/site-packages/sphinx/search/fr.py +199 -0
  1603. py2docfx/venv/venv0/Lib/site-packages/sphinx/search/hu.py +226 -0
  1604. py2docfx/venv/venv0/Lib/site-packages/sphinx/search/it.py +316 -0
  1605. py2docfx/venv/venv0/Lib/site-packages/sphinx/search/ja.py +536 -0
  1606. py2docfx/venv/venv0/Lib/site-packages/sphinx/search/nl.py +127 -0
  1607. py2docfx/venv/venv0/Lib/site-packages/sphinx/search/no.py +202 -0
  1608. py2docfx/venv/venv0/Lib/site-packages/sphinx/search/pt.py +261 -0
  1609. py2docfx/venv/venv0/Lib/site-packages/sphinx/search/ro.py +22 -0
  1610. py2docfx/venv/venv0/Lib/site-packages/sphinx/search/ru.py +251 -0
  1611. py2docfx/venv/venv0/Lib/site-packages/sphinx/search/sv.py +140 -0
  1612. py2docfx/venv/venv0/Lib/site-packages/sphinx/search/tr.py +22 -0
  1613. py2docfx/venv/venv0/Lib/site-packages/sphinx/search/zh.py +262 -0
  1614. py2docfx/venv/venv0/Lib/site-packages/sphinx/setup_command.py +192 -0
  1615. py2docfx/venv/venv0/Lib/site-packages/sphinx/testing/__init__.py +7 -0
  1616. py2docfx/venv/venv0/Lib/site-packages/sphinx/testing/comparer.py +97 -0
  1617. py2docfx/venv/venv0/Lib/site-packages/sphinx/testing/fixtures.py +250 -0
  1618. py2docfx/venv/venv0/Lib/site-packages/sphinx/testing/path.py +210 -0
  1619. py2docfx/venv/venv0/Lib/site-packages/sphinx/testing/restructuredtext.py +27 -0
  1620. py2docfx/venv/venv0/Lib/site-packages/sphinx/testing/util.py +206 -0
  1621. py2docfx/venv/venv0/Lib/site-packages/sphinx/theming.py +230 -0
  1622. py2docfx/venv/venv0/Lib/site-packages/sphinx/transforms/__init__.py +419 -0
  1623. py2docfx/venv/venv0/Lib/site-packages/sphinx/transforms/compact_bullet_list.py +88 -0
  1624. py2docfx/venv/venv0/Lib/site-packages/sphinx/transforms/i18n.py +528 -0
  1625. py2docfx/venv/venv0/Lib/site-packages/sphinx/transforms/post_transforms/__init__.py +279 -0
  1626. py2docfx/venv/venv0/Lib/site-packages/sphinx/transforms/post_transforms/code.py +136 -0
  1627. py2docfx/venv/venv0/Lib/site-packages/sphinx/transforms/post_transforms/images.py +271 -0
  1628. py2docfx/venv/venv0/Lib/site-packages/sphinx/transforms/references.py +47 -0
  1629. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/__init__.py +407 -0
  1630. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/build_phase.py +12 -0
  1631. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/cfamily.py +462 -0
  1632. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/console.py +129 -0
  1633. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/display.py +87 -0
  1634. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/docfields.py +368 -0
  1635. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/docstrings.py +88 -0
  1636. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/docutils.py +621 -0
  1637. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/exceptions.py +67 -0
  1638. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/fileutil.py +97 -0
  1639. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/http_date.py +20 -0
  1640. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/i18n.py +262 -0
  1641. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/images.py +113 -0
  1642. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/inspect.py +811 -0
  1643. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/inventory.py +170 -0
  1644. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/jsdump.py +201 -0
  1645. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/logging.py +603 -0
  1646. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/matching.py +166 -0
  1647. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/math.py +58 -0
  1648. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/nodes.py +629 -0
  1649. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/osutil.py +221 -0
  1650. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/parallel.py +151 -0
  1651. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/png.py +43 -0
  1652. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/requests.py +92 -0
  1653. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/rst.py +110 -0
  1654. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/stemmer/__init__.py +62 -0
  1655. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/tags.py +81 -0
  1656. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/template.py +132 -0
  1657. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/texescape.py +153 -0
  1658. py2docfx/venv/venv0/Lib/site-packages/sphinx/util/typing.py +352 -0
  1659. py2docfx/venv/venv0/Lib/site-packages/sphinx/versioning.py +176 -0
  1660. py2docfx/venv/venv0/Lib/site-packages/sphinx/writers/__init__.py +1 -0
  1661. py2docfx/venv/venv0/Lib/site-packages/sphinx/writers/_html4.py +858 -0
  1662. py2docfx/venv/venv0/Lib/site-packages/sphinx/writers/html.py +45 -0
  1663. py2docfx/venv/venv0/Lib/site-packages/sphinx/writers/html5.py +824 -0
  1664. py2docfx/venv/venv0/Lib/site-packages/sphinx/writers/latex.py +2116 -0
  1665. py2docfx/venv/venv0/Lib/site-packages/sphinx/writers/manpage.py +459 -0
  1666. py2docfx/venv/venv0/Lib/site-packages/sphinx/writers/texinfo.py +1562 -0
  1667. py2docfx/venv/venv0/Lib/site-packages/sphinx/writers/text.py +1182 -0
  1668. py2docfx/venv/venv0/Lib/site-packages/sphinx/writers/xml.py +49 -0
  1669. py2docfx/venv/venv0/Lib/site-packages/sphinxcontrib/applehelp/__init__.py +276 -0
  1670. py2docfx/venv/venv0/Lib/site-packages/sphinxcontrib/devhelp/__init__.py +143 -0
  1671. py2docfx/venv/venv0/Lib/site-packages/sphinxcontrib/htmlhelp/__init__.py +340 -0
  1672. py2docfx/venv/venv0/Lib/site-packages/sphinxcontrib/jsmath/__init__.py +92 -0
  1673. py2docfx/venv/venv0/Lib/site-packages/sphinxcontrib/jsmath/version.py +11 -0
  1674. py2docfx/venv/venv0/Lib/site-packages/sphinxcontrib/qthelp/__init__.py +266 -0
  1675. py2docfx/venv/venv0/Lib/site-packages/sphinxcontrib/serializinghtml/__init__.py +180 -0
  1676. py2docfx/venv/venv0/Lib/site-packages/sphinxcontrib/serializinghtml/jsonimpl.py +33 -0
  1677. py2docfx/venv/venv0/Lib/site-packages/urllib3/__init__.py +211 -0
  1678. py2docfx/venv/venv0/Lib/site-packages/urllib3/_base_connection.py +172 -0
  1679. py2docfx/venv/venv0/Lib/site-packages/urllib3/_collections.py +483 -0
  1680. py2docfx/venv/venv0/Lib/site-packages/urllib3/_request_methods.py +278 -0
  1681. py2docfx/venv/venv0/Lib/site-packages/urllib3/_version.py +16 -0
  1682. py2docfx/venv/venv0/Lib/site-packages/urllib3/connection.py +1033 -0
  1683. py2docfx/venv/venv0/Lib/site-packages/urllib3/connectionpool.py +1182 -0
  1684. py2docfx/venv/venv0/Lib/site-packages/urllib3/contrib/__init__.py +0 -0
  1685. py2docfx/venv/venv0/Lib/site-packages/urllib3/contrib/emscripten/__init__.py +16 -0
  1686. py2docfx/venv/venv0/Lib/site-packages/urllib3/contrib/emscripten/connection.py +254 -0
  1687. py2docfx/venv/venv0/Lib/site-packages/urllib3/contrib/emscripten/fetch.py +418 -0
  1688. py2docfx/venv/venv0/Lib/site-packages/urllib3/contrib/emscripten/request.py +22 -0
  1689. py2docfx/venv/venv0/Lib/site-packages/urllib3/contrib/emscripten/response.py +285 -0
  1690. py2docfx/venv/venv0/Lib/site-packages/urllib3/contrib/pyopenssl.py +552 -0
  1691. py2docfx/venv/venv0/Lib/site-packages/urllib3/contrib/socks.py +228 -0
  1692. py2docfx/venv/venv0/Lib/site-packages/urllib3/exceptions.py +321 -0
  1693. py2docfx/venv/venv0/Lib/site-packages/urllib3/fields.py +341 -0
  1694. py2docfx/venv/venv0/Lib/site-packages/urllib3/filepost.py +89 -0
  1695. py2docfx/venv/venv0/Lib/site-packages/urllib3/http2/__init__.py +53 -0
  1696. py2docfx/venv/venv0/Lib/site-packages/urllib3/http2/connection.py +356 -0
  1697. py2docfx/venv/venv0/Lib/site-packages/urllib3/http2/probe.py +87 -0
  1698. py2docfx/venv/venv0/Lib/site-packages/urllib3/poolmanager.py +637 -0
  1699. py2docfx/venv/venv0/Lib/site-packages/urllib3/response.py +1265 -0
  1700. py2docfx/venv/venv0/Lib/site-packages/urllib3/util/__init__.py +42 -0
  1701. py2docfx/venv/venv0/Lib/site-packages/urllib3/util/connection.py +137 -0
  1702. py2docfx/venv/venv0/Lib/site-packages/urllib3/util/proxy.py +43 -0
  1703. py2docfx/venv/venv0/Lib/site-packages/urllib3/util/request.py +256 -0
  1704. py2docfx/venv/venv0/Lib/site-packages/urllib3/util/response.py +101 -0
  1705. py2docfx/venv/venv0/Lib/site-packages/urllib3/util/retry.py +533 -0
  1706. py2docfx/venv/venv0/Lib/site-packages/urllib3/util/ssl_.py +513 -0
  1707. py2docfx/venv/venv0/Lib/site-packages/urllib3/util/ssl_match_hostname.py +159 -0
  1708. py2docfx/venv/venv0/Lib/site-packages/urllib3/util/ssltransport.py +276 -0
  1709. py2docfx/venv/venv0/Lib/site-packages/urllib3/util/timeout.py +275 -0
  1710. py2docfx/venv/venv0/Lib/site-packages/urllib3/util/url.py +471 -0
  1711. py2docfx/venv/venv0/Lib/site-packages/urllib3/util/util.py +42 -0
  1712. py2docfx/venv/venv0/Lib/site-packages/urllib3/util/wait.py +124 -0
  1713. py2docfx/venv/venv0/Lib/site-packages/wheel/__init__.py +3 -0
  1714. py2docfx/venv/venv0/Lib/site-packages/wheel/__main__.py +23 -0
  1715. py2docfx/venv/venv0/Lib/site-packages/wheel/_bdist_wheel.py +604 -0
  1716. py2docfx/venv/venv0/Lib/site-packages/wheel/_setuptools_logging.py +26 -0
  1717. py2docfx/venv/venv0/Lib/site-packages/wheel/bdist_wheel.py +11 -0
  1718. py2docfx/venv/venv0/Lib/site-packages/wheel/cli/__init__.py +155 -0
  1719. py2docfx/venv/venv0/Lib/site-packages/wheel/cli/convert.py +273 -0
  1720. py2docfx/venv/venv0/Lib/site-packages/wheel/cli/pack.py +85 -0
  1721. py2docfx/venv/venv0/Lib/site-packages/wheel/cli/tags.py +139 -0
  1722. py2docfx/venv/venv0/Lib/site-packages/wheel/cli/unpack.py +30 -0
  1723. py2docfx/venv/venv0/Lib/site-packages/wheel/macosx_libfile.py +482 -0
  1724. py2docfx/venv/venv0/Lib/site-packages/wheel/metadata.py +183 -0
  1725. py2docfx/venv/venv0/Lib/site-packages/wheel/util.py +26 -0
  1726. py2docfx/venv/venv0/Lib/site-packages/wheel/vendored/__init__.py +0 -0
  1727. py2docfx/venv/venv0/Lib/site-packages/wheel/vendored/packaging/__init__.py +0 -0
  1728. py2docfx/venv/venv0/Lib/site-packages/wheel/vendored/packaging/_elffile.py +108 -0
  1729. py2docfx/venv/venv0/Lib/site-packages/wheel/vendored/packaging/_manylinux.py +260 -0
  1730. py2docfx/venv/venv0/Lib/site-packages/wheel/vendored/packaging/_musllinux.py +83 -0
  1731. py2docfx/venv/venv0/Lib/site-packages/wheel/vendored/packaging/_parser.py +356 -0
  1732. py2docfx/venv/venv0/Lib/site-packages/wheel/vendored/packaging/_structures.py +61 -0
  1733. py2docfx/venv/venv0/Lib/site-packages/wheel/vendored/packaging/_tokenizer.py +192 -0
  1734. py2docfx/venv/venv0/Lib/site-packages/wheel/vendored/packaging/markers.py +253 -0
  1735. py2docfx/venv/venv0/Lib/site-packages/wheel/vendored/packaging/requirements.py +90 -0
  1736. py2docfx/venv/venv0/Lib/site-packages/wheel/vendored/packaging/specifiers.py +1011 -0
  1737. py2docfx/venv/venv0/Lib/site-packages/wheel/vendored/packaging/tags.py +571 -0
  1738. py2docfx/venv/venv0/Lib/site-packages/wheel/vendored/packaging/utils.py +172 -0
  1739. py2docfx/venv/venv0/Lib/site-packages/wheel/vendored/packaging/version.py +561 -0
  1740. py2docfx/venv/venv0/Lib/site-packages/wheel/wheelfile.py +227 -0
  1741. py2docfx/venv/venv0/Lib/site-packages/yaml/__init__.py +390 -0
  1742. py2docfx/venv/venv0/Lib/site-packages/yaml/composer.py +139 -0
  1743. py2docfx/venv/venv0/Lib/site-packages/yaml/constructor.py +748 -0
  1744. py2docfx/venv/venv0/Lib/site-packages/yaml/cyaml.py +101 -0
  1745. py2docfx/venv/venv0/Lib/site-packages/yaml/dumper.py +62 -0
  1746. py2docfx/venv/venv0/Lib/site-packages/yaml/emitter.py +1137 -0
  1747. py2docfx/venv/venv0/Lib/site-packages/yaml/error.py +75 -0
  1748. py2docfx/venv/venv0/Lib/site-packages/yaml/events.py +86 -0
  1749. py2docfx/venv/venv0/Lib/site-packages/yaml/loader.py +63 -0
  1750. py2docfx/venv/venv0/Lib/site-packages/yaml/nodes.py +49 -0
  1751. py2docfx/venv/venv0/Lib/site-packages/yaml/parser.py +589 -0
  1752. py2docfx/venv/venv0/Lib/site-packages/yaml/reader.py +185 -0
  1753. py2docfx/venv/venv0/Lib/site-packages/yaml/representer.py +389 -0
  1754. py2docfx/venv/venv0/Lib/site-packages/yaml/resolver.py +227 -0
  1755. py2docfx/venv/venv0/Lib/site-packages/yaml/scanner.py +1435 -0
  1756. py2docfx/venv/venv0/Lib/site-packages/yaml/serializer.py +111 -0
  1757. py2docfx/venv/venv0/Lib/site-packages/yaml/tokens.py +104 -0
  1758. py2docfx/venv/venv0/Scripts/rst2html.py +23 -0
  1759. py2docfx/venv/venv0/Scripts/rst2html4.py +26 -0
  1760. py2docfx/venv/venv0/Scripts/rst2html5.py +33 -0
  1761. py2docfx/venv/venv0/Scripts/rst2latex.py +26 -0
  1762. py2docfx/venv/venv0/Scripts/rst2man.py +27 -0
  1763. py2docfx/venv/venv0/Scripts/rst2odt.py +28 -0
  1764. py2docfx/venv/venv0/Scripts/rst2odt_prepstyles.py +65 -0
  1765. py2docfx/venv/venv0/Scripts/rst2pseudoxml.py +23 -0
  1766. py2docfx/venv/venv0/Scripts/rst2s5.py +24 -0
  1767. py2docfx/venv/venv0/Scripts/rst2xetex.py +27 -0
  1768. py2docfx/venv/venv0/Scripts/rst2xml.py +23 -0
  1769. py2docfx/venv/venv0/Scripts/rstpep2html.py +25 -0
  1770. {py2docfx-0.1.10.dev1859594.dist-info → py2docfx-0.1.10.dev1870645.dist-info}/METADATA +1 -1
  1771. py2docfx-0.1.10.dev1870645.dist-info/RECORD +1888 -0
  1772. py2docfx-0.1.10.dev1859594.dist-info/RECORD +0 -129
  1773. {py2docfx-0.1.10.dev1859594.dist-info → py2docfx-0.1.10.dev1870645.dist-info}/WHEEL +0 -0
  1774. {py2docfx-0.1.10.dev1859594.dist-info → py2docfx-0.1.10.dev1870645.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1824 @@
1
+ """Built-in template filters used with the ``|`` operator."""
2
+ import math
3
+ import random
4
+ import re
5
+ import typing
6
+ import typing as t
7
+ import warnings
8
+ from collections import abc
9
+ from itertools import chain
10
+ from itertools import groupby
11
+
12
+ from markupsafe import escape
13
+ from markupsafe import Markup
14
+ from markupsafe import soft_str
15
+
16
+ from .async_utils import async_variant
17
+ from .async_utils import auto_aiter
18
+ from .async_utils import auto_await
19
+ from .async_utils import auto_to_list
20
+ from .exceptions import FilterArgumentError
21
+ from .runtime import Undefined
22
+ from .utils import htmlsafe_json_dumps
23
+ from .utils import pass_context
24
+ from .utils import pass_environment
25
+ from .utils import pass_eval_context
26
+ from .utils import pformat
27
+ from .utils import url_quote
28
+ from .utils import urlize
29
+
30
+ if t.TYPE_CHECKING:
31
+ import typing_extensions as te
32
+ from .environment import Environment
33
+ from .nodes import EvalContext
34
+ from .runtime import Context
35
+ from .sandbox import SandboxedEnvironment # noqa: F401
36
+
37
+ class HasHTML(te.Protocol):
38
+ def __html__(self) -> str:
39
+ pass
40
+
41
+
42
+ F = t.TypeVar("F", bound=t.Callable[..., t.Any])
43
+ K = t.TypeVar("K")
44
+ V = t.TypeVar("V")
45
+
46
+
47
+ def contextfilter(f: F) -> F:
48
+ """Pass the context as the first argument to the decorated function.
49
+
50
+ .. deprecated:: 3.0
51
+ Will be removed in Jinja 3.1. Use :func:`~jinja2.pass_context`
52
+ instead.
53
+ """
54
+ warnings.warn(
55
+ "'contextfilter' is renamed to 'pass_context', the old name"
56
+ " will be removed in Jinja 3.1.",
57
+ DeprecationWarning,
58
+ stacklevel=2,
59
+ )
60
+ return pass_context(f)
61
+
62
+
63
+ def evalcontextfilter(f: F) -> F:
64
+ """Pass the eval context as the first argument to the decorated
65
+ function.
66
+
67
+ .. deprecated:: 3.0
68
+ Will be removed in Jinja 3.1. Use
69
+ :func:`~jinja2.pass_eval_context` instead.
70
+
71
+ .. versionadded:: 2.4
72
+ """
73
+ warnings.warn(
74
+ "'evalcontextfilter' is renamed to 'pass_eval_context', the old"
75
+ " name will be removed in Jinja 3.1.",
76
+ DeprecationWarning,
77
+ stacklevel=2,
78
+ )
79
+ return pass_eval_context(f)
80
+
81
+
82
+ def environmentfilter(f: F) -> F:
83
+ """Pass the environment as the first argument to the decorated
84
+ function.
85
+
86
+ .. deprecated:: 3.0
87
+ Will be removed in Jinja 3.1. Use
88
+ :func:`~jinja2.pass_environment` instead.
89
+ """
90
+ warnings.warn(
91
+ "'environmentfilter' is renamed to 'pass_environment', the old"
92
+ " name will be removed in Jinja 3.1.",
93
+ DeprecationWarning,
94
+ stacklevel=2,
95
+ )
96
+ return pass_environment(f)
97
+
98
+
99
+ def ignore_case(value: V) -> V:
100
+ """For use as a postprocessor for :func:`make_attrgetter`. Converts strings
101
+ to lowercase and returns other types as-is."""
102
+ if isinstance(value, str):
103
+ return t.cast(V, value.lower())
104
+
105
+ return value
106
+
107
+
108
+ def make_attrgetter(
109
+ environment: "Environment",
110
+ attribute: t.Optional[t.Union[str, int]],
111
+ postprocess: t.Optional[t.Callable[[t.Any], t.Any]] = None,
112
+ default: t.Optional[t.Any] = None,
113
+ ) -> t.Callable[[t.Any], t.Any]:
114
+ """Returns a callable that looks up the given attribute from a
115
+ passed object with the rules of the environment. Dots are allowed
116
+ to access attributes of attributes. Integer parts in paths are
117
+ looked up as integers.
118
+ """
119
+ parts = _prepare_attribute_parts(attribute)
120
+
121
+ def attrgetter(item: t.Any) -> t.Any:
122
+ for part in parts:
123
+ item = environment.getitem(item, part)
124
+
125
+ if default is not None and isinstance(item, Undefined):
126
+ item = default
127
+
128
+ if postprocess is not None:
129
+ item = postprocess(item)
130
+
131
+ return item
132
+
133
+ return attrgetter
134
+
135
+
136
+ def make_multi_attrgetter(
137
+ environment: "Environment",
138
+ attribute: t.Optional[t.Union[str, int]],
139
+ postprocess: t.Optional[t.Callable[[t.Any], t.Any]] = None,
140
+ ) -> t.Callable[[t.Any], t.List[t.Any]]:
141
+ """Returns a callable that looks up the given comma separated
142
+ attributes from a passed object with the rules of the environment.
143
+ Dots are allowed to access attributes of each attribute. Integer
144
+ parts in paths are looked up as integers.
145
+
146
+ The value returned by the returned callable is a list of extracted
147
+ attribute values.
148
+
149
+ Examples of attribute: "attr1,attr2", "attr1.inner1.0,attr2.inner2.0", etc.
150
+ """
151
+ if isinstance(attribute, str):
152
+ split: t.Sequence[t.Union[str, int, None]] = attribute.split(",")
153
+ else:
154
+ split = [attribute]
155
+
156
+ parts = [_prepare_attribute_parts(item) for item in split]
157
+
158
+ def attrgetter(item: t.Any) -> t.List[t.Any]:
159
+ items = [None] * len(parts)
160
+
161
+ for i, attribute_part in enumerate(parts):
162
+ item_i = item
163
+
164
+ for part in attribute_part:
165
+ item_i = environment.getitem(item_i, part)
166
+
167
+ if postprocess is not None:
168
+ item_i = postprocess(item_i)
169
+
170
+ items[i] = item_i
171
+
172
+ return items
173
+
174
+ return attrgetter
175
+
176
+
177
+ def _prepare_attribute_parts(
178
+ attr: t.Optional[t.Union[str, int]]
179
+ ) -> t.List[t.Union[str, int]]:
180
+ if attr is None:
181
+ return []
182
+
183
+ if isinstance(attr, str):
184
+ return [int(x) if x.isdigit() else x for x in attr.split(".")]
185
+
186
+ return [attr]
187
+
188
+
189
+ def do_forceescape(value: "t.Union[str, HasHTML]") -> Markup:
190
+ """Enforce HTML escaping. This will probably double escape variables."""
191
+ if hasattr(value, "__html__"):
192
+ value = t.cast("HasHTML", value).__html__()
193
+
194
+ return escape(str(value))
195
+
196
+
197
+ def do_urlencode(
198
+ value: t.Union[str, t.Mapping[str, t.Any], t.Iterable[t.Tuple[str, t.Any]]]
199
+ ) -> str:
200
+ """Quote data for use in a URL path or query using UTF-8.
201
+
202
+ Basic wrapper around :func:`urllib.parse.quote` when given a
203
+ string, or :func:`urllib.parse.urlencode` for a dict or iterable.
204
+
205
+ :param value: Data to quote. A string will be quoted directly. A
206
+ dict or iterable of ``(key, value)`` pairs will be joined as a
207
+ query string.
208
+
209
+ When given a string, "/" is not quoted. HTTP servers treat "/" and
210
+ "%2F" equivalently in paths. If you need quoted slashes, use the
211
+ ``|replace("/", "%2F")`` filter.
212
+
213
+ .. versionadded:: 2.7
214
+ """
215
+ if isinstance(value, str) or not isinstance(value, abc.Iterable):
216
+ return url_quote(value)
217
+
218
+ if isinstance(value, dict):
219
+ items: t.Iterable[t.Tuple[str, t.Any]] = value.items()
220
+ else:
221
+ items = value # type: ignore
222
+
223
+ return "&".join(
224
+ f"{url_quote(k, for_qs=True)}={url_quote(v, for_qs=True)}" for k, v in items
225
+ )
226
+
227
+
228
+ @pass_eval_context
229
+ def do_replace(
230
+ eval_ctx: "EvalContext", s: str, old: str, new: str, count: t.Optional[int] = None
231
+ ) -> str:
232
+ """Return a copy of the value with all occurrences of a substring
233
+ replaced with a new one. The first argument is the substring
234
+ that should be replaced, the second is the replacement string.
235
+ If the optional third argument ``count`` is given, only the first
236
+ ``count`` occurrences are replaced:
237
+
238
+ .. sourcecode:: jinja
239
+
240
+ {{ "Hello World"|replace("Hello", "Goodbye") }}
241
+ -> Goodbye World
242
+
243
+ {{ "aaaaargh"|replace("a", "d'oh, ", 2) }}
244
+ -> d'oh, d'oh, aaargh
245
+ """
246
+ if count is None:
247
+ count = -1
248
+
249
+ if not eval_ctx.autoescape:
250
+ return str(s).replace(str(old), str(new), count)
251
+
252
+ if (
253
+ hasattr(old, "__html__")
254
+ or hasattr(new, "__html__")
255
+ and not hasattr(s, "__html__")
256
+ ):
257
+ s = escape(s)
258
+ else:
259
+ s = soft_str(s)
260
+
261
+ return s.replace(soft_str(old), soft_str(new), count)
262
+
263
+
264
+ def do_upper(s: str) -> str:
265
+ """Convert a value to uppercase."""
266
+ return soft_str(s).upper()
267
+
268
+
269
+ def do_lower(s: str) -> str:
270
+ """Convert a value to lowercase."""
271
+ return soft_str(s).lower()
272
+
273
+
274
+ @pass_eval_context
275
+ def do_xmlattr(
276
+ eval_ctx: "EvalContext", d: t.Mapping[str, t.Any], autospace: bool = True
277
+ ) -> str:
278
+ """Create an SGML/XML attribute string based on the items in a dict.
279
+ All values that are neither `none` nor `undefined` are automatically
280
+ escaped:
281
+
282
+ .. sourcecode:: html+jinja
283
+
284
+ <ul{{ {'class': 'my_list', 'missing': none,
285
+ 'id': 'list-%d'|format(variable)}|xmlattr }}>
286
+ ...
287
+ </ul>
288
+
289
+ Results in something like this:
290
+
291
+ .. sourcecode:: html
292
+
293
+ <ul class="my_list" id="list-42">
294
+ ...
295
+ </ul>
296
+
297
+ As you can see it automatically prepends a space in front of the item
298
+ if the filter returned something unless the second parameter is false.
299
+ """
300
+ rv = " ".join(
301
+ f'{escape(key)}="{escape(value)}"'
302
+ for key, value in d.items()
303
+ if value is not None and not isinstance(value, Undefined)
304
+ )
305
+
306
+ if autospace and rv:
307
+ rv = " " + rv
308
+
309
+ if eval_ctx.autoescape:
310
+ rv = Markup(rv)
311
+
312
+ return rv
313
+
314
+
315
+ def do_capitalize(s: str) -> str:
316
+ """Capitalize a value. The first character will be uppercase, all others
317
+ lowercase.
318
+ """
319
+ return soft_str(s).capitalize()
320
+
321
+
322
+ _word_beginning_split_re = re.compile(r"([-\s({\[<]+)")
323
+
324
+
325
+ def do_title(s: str) -> str:
326
+ """Return a titlecased version of the value. I.e. words will start with
327
+ uppercase letters, all remaining characters are lowercase.
328
+ """
329
+ return "".join(
330
+ [
331
+ item[0].upper() + item[1:].lower()
332
+ for item in _word_beginning_split_re.split(soft_str(s))
333
+ if item
334
+ ]
335
+ )
336
+
337
+
338
+ def do_dictsort(
339
+ value: t.Mapping[K, V],
340
+ case_sensitive: bool = False,
341
+ by: 'te.Literal["key", "value"]' = "key",
342
+ reverse: bool = False,
343
+ ) -> t.List[t.Tuple[K, V]]:
344
+ """Sort a dict and yield (key, value) pairs. Python dicts may not
345
+ be in the order you want to display them in, so sort them first.
346
+
347
+ .. sourcecode:: jinja
348
+
349
+ {% for key, value in mydict|dictsort %}
350
+ sort the dict by key, case insensitive
351
+
352
+ {% for key, value in mydict|dictsort(reverse=true) %}
353
+ sort the dict by key, case insensitive, reverse order
354
+
355
+ {% for key, value in mydict|dictsort(true) %}
356
+ sort the dict by key, case sensitive
357
+
358
+ {% for key, value in mydict|dictsort(false, 'value') %}
359
+ sort the dict by value, case insensitive
360
+ """
361
+ if by == "key":
362
+ pos = 0
363
+ elif by == "value":
364
+ pos = 1
365
+ else:
366
+ raise FilterArgumentError('You can only sort by either "key" or "value"')
367
+
368
+ def sort_func(item: t.Tuple[t.Any, t.Any]) -> t.Any:
369
+ value = item[pos]
370
+
371
+ if not case_sensitive:
372
+ value = ignore_case(value)
373
+
374
+ return value
375
+
376
+ return sorted(value.items(), key=sort_func, reverse=reverse)
377
+
378
+
379
+ @pass_environment
380
+ def do_sort(
381
+ environment: "Environment",
382
+ value: "t.Iterable[V]",
383
+ reverse: bool = False,
384
+ case_sensitive: bool = False,
385
+ attribute: t.Optional[t.Union[str, int]] = None,
386
+ ) -> "t.List[V]":
387
+ """Sort an iterable using Python's :func:`sorted`.
388
+
389
+ .. sourcecode:: jinja
390
+
391
+ {% for city in cities|sort %}
392
+ ...
393
+ {% endfor %}
394
+
395
+ :param reverse: Sort descending instead of ascending.
396
+ :param case_sensitive: When sorting strings, sort upper and lower
397
+ case separately.
398
+ :param attribute: When sorting objects or dicts, an attribute or
399
+ key to sort by. Can use dot notation like ``"address.city"``.
400
+ Can be a list of attributes like ``"age,name"``.
401
+
402
+ The sort is stable, it does not change the relative order of
403
+ elements that compare equal. This makes it is possible to chain
404
+ sorts on different attributes and ordering.
405
+
406
+ .. sourcecode:: jinja
407
+
408
+ {% for user in users|sort(attribute="name")
409
+ |sort(reverse=true, attribute="age") %}
410
+ ...
411
+ {% endfor %}
412
+
413
+ As a shortcut to chaining when the direction is the same for all
414
+ attributes, pass a comma separate list of attributes.
415
+
416
+ .. sourcecode:: jinja
417
+
418
+ {% for user users|sort(attribute="age,name") %}
419
+ ...
420
+ {% endfor %}
421
+
422
+ .. versionchanged:: 2.11.0
423
+ The ``attribute`` parameter can be a comma separated list of
424
+ attributes, e.g. ``"age,name"``.
425
+
426
+ .. versionchanged:: 2.6
427
+ The ``attribute`` parameter was added.
428
+ """
429
+ key_func = make_multi_attrgetter(
430
+ environment, attribute, postprocess=ignore_case if not case_sensitive else None
431
+ )
432
+ return sorted(value, key=key_func, reverse=reverse)
433
+
434
+
435
+ @pass_environment
436
+ def do_unique(
437
+ environment: "Environment",
438
+ value: "t.Iterable[V]",
439
+ case_sensitive: bool = False,
440
+ attribute: t.Optional[t.Union[str, int]] = None,
441
+ ) -> "t.Iterator[V]":
442
+ """Returns a list of unique items from the given iterable.
443
+
444
+ .. sourcecode:: jinja
445
+
446
+ {{ ['foo', 'bar', 'foobar', 'FooBar']|unique|list }}
447
+ -> ['foo', 'bar', 'foobar']
448
+
449
+ The unique items are yielded in the same order as their first occurrence in
450
+ the iterable passed to the filter.
451
+
452
+ :param case_sensitive: Treat upper and lower case strings as distinct.
453
+ :param attribute: Filter objects with unique values for this attribute.
454
+ """
455
+ getter = make_attrgetter(
456
+ environment, attribute, postprocess=ignore_case if not case_sensitive else None
457
+ )
458
+ seen = set()
459
+
460
+ for item in value:
461
+ key = getter(item)
462
+
463
+ if key not in seen:
464
+ seen.add(key)
465
+ yield item
466
+
467
+
468
+ def _min_or_max(
469
+ environment: "Environment",
470
+ value: "t.Iterable[V]",
471
+ func: "t.Callable[..., V]",
472
+ case_sensitive: bool,
473
+ attribute: t.Optional[t.Union[str, int]],
474
+ ) -> "t.Union[V, Undefined]":
475
+ it = iter(value)
476
+
477
+ try:
478
+ first = next(it)
479
+ except StopIteration:
480
+ return environment.undefined("No aggregated item, sequence was empty.")
481
+
482
+ key_func = make_attrgetter(
483
+ environment, attribute, postprocess=ignore_case if not case_sensitive else None
484
+ )
485
+ return func(chain([first], it), key=key_func)
486
+
487
+
488
+ @pass_environment
489
+ def do_min(
490
+ environment: "Environment",
491
+ value: "t.Iterable[V]",
492
+ case_sensitive: bool = False,
493
+ attribute: t.Optional[t.Union[str, int]] = None,
494
+ ) -> "t.Union[V, Undefined]":
495
+ """Return the smallest item from the sequence.
496
+
497
+ .. sourcecode:: jinja
498
+
499
+ {{ [1, 2, 3]|min }}
500
+ -> 1
501
+
502
+ :param case_sensitive: Treat upper and lower case strings as distinct.
503
+ :param attribute: Get the object with the min value of this attribute.
504
+ """
505
+ return _min_or_max(environment, value, min, case_sensitive, attribute)
506
+
507
+
508
+ @pass_environment
509
+ def do_max(
510
+ environment: "Environment",
511
+ value: "t.Iterable[V]",
512
+ case_sensitive: bool = False,
513
+ attribute: t.Optional[t.Union[str, int]] = None,
514
+ ) -> "t.Union[V, Undefined]":
515
+ """Return the largest item from the sequence.
516
+
517
+ .. sourcecode:: jinja
518
+
519
+ {{ [1, 2, 3]|max }}
520
+ -> 3
521
+
522
+ :param case_sensitive: Treat upper and lower case strings as distinct.
523
+ :param attribute: Get the object with the max value of this attribute.
524
+ """
525
+ return _min_or_max(environment, value, max, case_sensitive, attribute)
526
+
527
+
528
+ def do_default(
529
+ value: V,
530
+ default_value: V = "", # type: ignore
531
+ boolean: bool = False,
532
+ ) -> V:
533
+ """If the value is undefined it will return the passed default value,
534
+ otherwise the value of the variable:
535
+
536
+ .. sourcecode:: jinja
537
+
538
+ {{ my_variable|default('my_variable is not defined') }}
539
+
540
+ This will output the value of ``my_variable`` if the variable was
541
+ defined, otherwise ``'my_variable is not defined'``. If you want
542
+ to use default with variables that evaluate to false you have to
543
+ set the second parameter to `true`:
544
+
545
+ .. sourcecode:: jinja
546
+
547
+ {{ ''|default('the string was empty', true) }}
548
+
549
+ .. versionchanged:: 2.11
550
+ It's now possible to configure the :class:`~jinja2.Environment` with
551
+ :class:`~jinja2.ChainableUndefined` to make the `default` filter work
552
+ on nested elements and attributes that may contain undefined values
553
+ in the chain without getting an :exc:`~jinja2.UndefinedError`.
554
+ """
555
+ if isinstance(value, Undefined) or (boolean and not value):
556
+ return default_value
557
+
558
+ return value
559
+
560
+
561
+ @pass_eval_context
562
+ def sync_do_join(
563
+ eval_ctx: "EvalContext",
564
+ value: t.Iterable,
565
+ d: str = "",
566
+ attribute: t.Optional[t.Union[str, int]] = None,
567
+ ) -> str:
568
+ """Return a string which is the concatenation of the strings in the
569
+ sequence. The separator between elements is an empty string per
570
+ default, you can define it with the optional parameter:
571
+
572
+ .. sourcecode:: jinja
573
+
574
+ {{ [1, 2, 3]|join('|') }}
575
+ -> 1|2|3
576
+
577
+ {{ [1, 2, 3]|join }}
578
+ -> 123
579
+
580
+ It is also possible to join certain attributes of an object:
581
+
582
+ .. sourcecode:: jinja
583
+
584
+ {{ users|join(', ', attribute='username') }}
585
+
586
+ .. versionadded:: 2.6
587
+ The `attribute` parameter was added.
588
+ """
589
+ if attribute is not None:
590
+ value = map(make_attrgetter(eval_ctx.environment, attribute), value)
591
+
592
+ # no automatic escaping? joining is a lot easier then
593
+ if not eval_ctx.autoescape:
594
+ return str(d).join(map(str, value))
595
+
596
+ # if the delimiter doesn't have an html representation we check
597
+ # if any of the items has. If yes we do a coercion to Markup
598
+ if not hasattr(d, "__html__"):
599
+ value = list(value)
600
+ do_escape = False
601
+
602
+ for idx, item in enumerate(value):
603
+ if hasattr(item, "__html__"):
604
+ do_escape = True
605
+ else:
606
+ value[idx] = str(item)
607
+
608
+ if do_escape:
609
+ d = escape(d)
610
+ else:
611
+ d = str(d)
612
+
613
+ return d.join(value)
614
+
615
+ # no html involved, to normal joining
616
+ return soft_str(d).join(map(soft_str, value))
617
+
618
+
619
+ @async_variant(sync_do_join) # type: ignore
620
+ async def do_join(
621
+ eval_ctx: "EvalContext",
622
+ value: t.Union[t.AsyncIterable, t.Iterable],
623
+ d: str = "",
624
+ attribute: t.Optional[t.Union[str, int]] = None,
625
+ ) -> str:
626
+ return sync_do_join(eval_ctx, await auto_to_list(value), d, attribute)
627
+
628
+
629
+ def do_center(value: str, width: int = 80) -> str:
630
+ """Centers the value in a field of a given width."""
631
+ return soft_str(value).center(width)
632
+
633
+
634
+ @pass_environment
635
+ def sync_do_first(
636
+ environment: "Environment", seq: "t.Iterable[V]"
637
+ ) -> "t.Union[V, Undefined]":
638
+ """Return the first item of a sequence."""
639
+ try:
640
+ return next(iter(seq))
641
+ except StopIteration:
642
+ return environment.undefined("No first item, sequence was empty.")
643
+
644
+
645
+ @async_variant(sync_do_first) # type: ignore
646
+ async def do_first(
647
+ environment: "Environment", seq: "t.Union[t.AsyncIterable[V], t.Iterable[V]]"
648
+ ) -> "t.Union[V, Undefined]":
649
+ try:
650
+ return await auto_aiter(seq).__anext__()
651
+ except StopAsyncIteration:
652
+ return environment.undefined("No first item, sequence was empty.")
653
+
654
+
655
+ @pass_environment
656
+ def do_last(
657
+ environment: "Environment", seq: "t.Reversible[V]"
658
+ ) -> "t.Union[V, Undefined]":
659
+ """Return the last item of a sequence.
660
+
661
+ Note: Does not work with generators. You may want to explicitly
662
+ convert it to a list:
663
+
664
+ .. sourcecode:: jinja
665
+
666
+ {{ data | selectattr('name', '==', 'Jinja') | list | last }}
667
+ """
668
+ try:
669
+ return next(iter(reversed(seq)))
670
+ except StopIteration:
671
+ return environment.undefined("No last item, sequence was empty.")
672
+
673
+
674
+ # No async do_last, it may not be safe in async mode.
675
+
676
+
677
+ @pass_context
678
+ def do_random(context: "Context", seq: "t.Sequence[V]") -> "t.Union[V, Undefined]":
679
+ """Return a random item from the sequence."""
680
+ try:
681
+ return random.choice(seq)
682
+ except IndexError:
683
+ return context.environment.undefined("No random item, sequence was empty.")
684
+
685
+
686
+ def do_filesizeformat(value: t.Union[str, float, int], binary: bool = False) -> str:
687
+ """Format the value like a 'human-readable' file size (i.e. 13 kB,
688
+ 4.1 MB, 102 Bytes, etc). Per default decimal prefixes are used (Mega,
689
+ Giga, etc.), if the second parameter is set to `True` the binary
690
+ prefixes are used (Mebi, Gibi).
691
+ """
692
+ bytes = float(value)
693
+ base = 1024 if binary else 1000
694
+ prefixes = [
695
+ ("KiB" if binary else "kB"),
696
+ ("MiB" if binary else "MB"),
697
+ ("GiB" if binary else "GB"),
698
+ ("TiB" if binary else "TB"),
699
+ ("PiB" if binary else "PB"),
700
+ ("EiB" if binary else "EB"),
701
+ ("ZiB" if binary else "ZB"),
702
+ ("YiB" if binary else "YB"),
703
+ ]
704
+
705
+ if bytes == 1:
706
+ return "1 Byte"
707
+ elif bytes < base:
708
+ return f"{int(bytes)} Bytes"
709
+ else:
710
+ for i, prefix in enumerate(prefixes):
711
+ unit = base ** (i + 2)
712
+
713
+ if bytes < unit:
714
+ return f"{base * bytes / unit:.1f} {prefix}"
715
+
716
+ return f"{base * bytes / unit:.1f} {prefix}"
717
+
718
+
719
+ def do_pprint(value: t.Any) -> str:
720
+ """Pretty print a variable. Useful for debugging."""
721
+ return pformat(value)
722
+
723
+
724
+ _uri_scheme_re = re.compile(r"^([\w.+-]{2,}:(/){0,2})$")
725
+
726
+
727
+ @pass_eval_context
728
+ def do_urlize(
729
+ eval_ctx: "EvalContext",
730
+ value: str,
731
+ trim_url_limit: t.Optional[int] = None,
732
+ nofollow: bool = False,
733
+ target: t.Optional[str] = None,
734
+ rel: t.Optional[str] = None,
735
+ extra_schemes: t.Optional[t.Iterable[str]] = None,
736
+ ) -> str:
737
+ """Convert URLs in text into clickable links.
738
+
739
+ This may not recognize links in some situations. Usually, a more
740
+ comprehensive formatter, such as a Markdown library, is a better
741
+ choice.
742
+
743
+ Works on ``http://``, ``https://``, ``www.``, ``mailto:``, and email
744
+ addresses. Links with trailing punctuation (periods, commas, closing
745
+ parentheses) and leading punctuation (opening parentheses) are
746
+ recognized excluding the punctuation. Email addresses that include
747
+ header fields are not recognized (for example,
748
+ ``mailto:address@example.com?cc=copy@example.com``).
749
+
750
+ :param value: Original text containing URLs to link.
751
+ :param trim_url_limit: Shorten displayed URL values to this length.
752
+ :param nofollow: Add the ``rel=nofollow`` attribute to links.
753
+ :param target: Add the ``target`` attribute to links.
754
+ :param rel: Add the ``rel`` attribute to links.
755
+ :param extra_schemes: Recognize URLs that start with these schemes
756
+ in addition to the default behavior. Defaults to
757
+ ``env.policies["urlize.extra_schemes"]``, which defaults to no
758
+ extra schemes.
759
+
760
+ .. versionchanged:: 3.0
761
+ The ``extra_schemes`` parameter was added.
762
+
763
+ .. versionchanged:: 3.0
764
+ Generate ``https://`` links for URLs without a scheme.
765
+
766
+ .. versionchanged:: 3.0
767
+ The parsing rules were updated. Recognize email addresses with
768
+ or without the ``mailto:`` scheme. Validate IP addresses. Ignore
769
+ parentheses and brackets in more cases.
770
+
771
+ .. versionchanged:: 2.8
772
+ The ``target`` parameter was added.
773
+ """
774
+ policies = eval_ctx.environment.policies
775
+ rel_parts = set((rel or "").split())
776
+
777
+ if nofollow:
778
+ rel_parts.add("nofollow")
779
+
780
+ rel_parts.update((policies["urlize.rel"] or "").split())
781
+ rel = " ".join(sorted(rel_parts)) or None
782
+
783
+ if target is None:
784
+ target = policies["urlize.target"]
785
+
786
+ if extra_schemes is None:
787
+ extra_schemes = policies["urlize.extra_schemes"] or ()
788
+
789
+ for scheme in extra_schemes:
790
+ if _uri_scheme_re.fullmatch(scheme) is None:
791
+ raise FilterArgumentError(f"{scheme!r} is not a valid URI scheme prefix.")
792
+
793
+ rv = urlize(
794
+ value,
795
+ trim_url_limit=trim_url_limit,
796
+ rel=rel,
797
+ target=target,
798
+ extra_schemes=extra_schemes,
799
+ )
800
+
801
+ if eval_ctx.autoescape:
802
+ rv = Markup(rv)
803
+
804
+ return rv
805
+
806
+
807
+ def do_indent(
808
+ s: str, width: t.Union[int, str] = 4, first: bool = False, blank: bool = False
809
+ ) -> str:
810
+ """Return a copy of the string with each line indented by 4 spaces. The
811
+ first line and blank lines are not indented by default.
812
+
813
+ :param width: Number of spaces, or a string, to indent by.
814
+ :param first: Don't skip indenting the first line.
815
+ :param blank: Don't skip indenting empty lines.
816
+
817
+ .. versionchanged:: 3.0
818
+ ``width`` can be a string.
819
+
820
+ .. versionchanged:: 2.10
821
+ Blank lines are not indented by default.
822
+
823
+ Rename the ``indentfirst`` argument to ``first``.
824
+ """
825
+ if isinstance(width, str):
826
+ indention = width
827
+ else:
828
+ indention = " " * width
829
+
830
+ newline = "\n"
831
+
832
+ if isinstance(s, Markup):
833
+ indention = Markup(indention)
834
+ newline = Markup(newline)
835
+
836
+ s += newline # this quirk is necessary for splitlines method
837
+
838
+ if blank:
839
+ rv = (newline + indention).join(s.splitlines())
840
+ else:
841
+ lines = s.splitlines()
842
+ rv = lines.pop(0)
843
+
844
+ if lines:
845
+ rv += newline + newline.join(
846
+ indention + line if line else line for line in lines
847
+ )
848
+
849
+ if first:
850
+ rv = indention + rv
851
+
852
+ return rv
853
+
854
+
855
+ @pass_environment
856
+ def do_truncate(
857
+ env: "Environment",
858
+ s: str,
859
+ length: int = 255,
860
+ killwords: bool = False,
861
+ end: str = "...",
862
+ leeway: t.Optional[int] = None,
863
+ ) -> str:
864
+ """Return a truncated copy of the string. The length is specified
865
+ with the first parameter which defaults to ``255``. If the second
866
+ parameter is ``true`` the filter will cut the text at length. Otherwise
867
+ it will discard the last word. If the text was in fact
868
+ truncated it will append an ellipsis sign (``"..."``). If you want a
869
+ different ellipsis sign than ``"..."`` you can specify it using the
870
+ third parameter. Strings that only exceed the length by the tolerance
871
+ margin given in the fourth parameter will not be truncated.
872
+
873
+ .. sourcecode:: jinja
874
+
875
+ {{ "foo bar baz qux"|truncate(9) }}
876
+ -> "foo..."
877
+ {{ "foo bar baz qux"|truncate(9, True) }}
878
+ -> "foo ba..."
879
+ {{ "foo bar baz qux"|truncate(11) }}
880
+ -> "foo bar baz qux"
881
+ {{ "foo bar baz qux"|truncate(11, False, '...', 0) }}
882
+ -> "foo bar..."
883
+
884
+ The default leeway on newer Jinja versions is 5 and was 0 before but
885
+ can be reconfigured globally.
886
+ """
887
+ if leeway is None:
888
+ leeway = env.policies["truncate.leeway"]
889
+
890
+ assert length >= len(end), f"expected length >= {len(end)}, got {length}"
891
+ assert leeway >= 0, f"expected leeway >= 0, got {leeway}"
892
+
893
+ if len(s) <= length + leeway:
894
+ return s
895
+
896
+ if killwords:
897
+ return s[: length - len(end)] + end
898
+
899
+ result = s[: length - len(end)].rsplit(" ", 1)[0]
900
+ return result + end
901
+
902
+
903
+ @pass_environment
904
+ def do_wordwrap(
905
+ environment: "Environment",
906
+ s: str,
907
+ width: int = 79,
908
+ break_long_words: bool = True,
909
+ wrapstring: t.Optional[str] = None,
910
+ break_on_hyphens: bool = True,
911
+ ) -> str:
912
+ """Wrap a string to the given width. Existing newlines are treated
913
+ as paragraphs to be wrapped separately.
914
+
915
+ :param s: Original text to wrap.
916
+ :param width: Maximum length of wrapped lines.
917
+ :param break_long_words: If a word is longer than ``width``, break
918
+ it across lines.
919
+ :param break_on_hyphens: If a word contains hyphens, it may be split
920
+ across lines.
921
+ :param wrapstring: String to join each wrapped line. Defaults to
922
+ :attr:`Environment.newline_sequence`.
923
+
924
+ .. versionchanged:: 2.11
925
+ Existing newlines are treated as paragraphs wrapped separately.
926
+
927
+ .. versionchanged:: 2.11
928
+ Added the ``break_on_hyphens`` parameter.
929
+
930
+ .. versionchanged:: 2.7
931
+ Added the ``wrapstring`` parameter.
932
+ """
933
+ import textwrap
934
+
935
+ if wrapstring is None:
936
+ wrapstring = environment.newline_sequence
937
+
938
+ # textwrap.wrap doesn't consider existing newlines when wrapping.
939
+ # If the string has a newline before width, wrap will still insert
940
+ # a newline at width, resulting in a short line. Instead, split and
941
+ # wrap each paragraph individually.
942
+ return wrapstring.join(
943
+ [
944
+ wrapstring.join(
945
+ textwrap.wrap(
946
+ line,
947
+ width=width,
948
+ expand_tabs=False,
949
+ replace_whitespace=False,
950
+ break_long_words=break_long_words,
951
+ break_on_hyphens=break_on_hyphens,
952
+ )
953
+ )
954
+ for line in s.splitlines()
955
+ ]
956
+ )
957
+
958
+
959
+ _word_re = re.compile(r"\w+")
960
+
961
+
962
+ def do_wordcount(s: str) -> int:
963
+ """Count the words in that string."""
964
+ return len(_word_re.findall(soft_str(s)))
965
+
966
+
967
+ def do_int(value: t.Any, default: int = 0, base: int = 10) -> int:
968
+ """Convert the value into an integer. If the
969
+ conversion doesn't work it will return ``0``. You can
970
+ override this default using the first parameter. You
971
+ can also override the default base (10) in the second
972
+ parameter, which handles input with prefixes such as
973
+ 0b, 0o and 0x for bases 2, 8 and 16 respectively.
974
+ The base is ignored for decimal numbers and non-string values.
975
+ """
976
+ try:
977
+ if isinstance(value, str):
978
+ return int(value, base)
979
+
980
+ return int(value)
981
+ except (TypeError, ValueError):
982
+ # this quirk is necessary so that "42.23"|int gives 42.
983
+ try:
984
+ return int(float(value))
985
+ except (TypeError, ValueError):
986
+ return default
987
+
988
+
989
+ def do_float(value: t.Any, default: float = 0.0) -> float:
990
+ """Convert the value into a floating point number. If the
991
+ conversion doesn't work it will return ``0.0``. You can
992
+ override this default using the first parameter.
993
+ """
994
+ try:
995
+ return float(value)
996
+ except (TypeError, ValueError):
997
+ return default
998
+
999
+
1000
+ def do_format(value: str, *args: t.Any, **kwargs: t.Any) -> str:
1001
+ """Apply the given values to a `printf-style`_ format string, like
1002
+ ``string % values``.
1003
+
1004
+ .. sourcecode:: jinja
1005
+
1006
+ {{ "%s, %s!"|format(greeting, name) }}
1007
+ Hello, World!
1008
+
1009
+ In most cases it should be more convenient and efficient to use the
1010
+ ``%`` operator or :meth:`str.format`.
1011
+
1012
+ .. code-block:: text
1013
+
1014
+ {{ "%s, %s!" % (greeting, name) }}
1015
+ {{ "{}, {}!".format(greeting, name) }}
1016
+
1017
+ .. _printf-style: https://docs.python.org/library/stdtypes.html
1018
+ #printf-style-string-formatting
1019
+ """
1020
+ if args and kwargs:
1021
+ raise FilterArgumentError(
1022
+ "can't handle positional and keyword arguments at the same time"
1023
+ )
1024
+
1025
+ return soft_str(value) % (kwargs or args)
1026
+
1027
+
1028
+ def do_trim(value: str, chars: t.Optional[str] = None) -> str:
1029
+ """Strip leading and trailing characters, by default whitespace."""
1030
+ return soft_str(value).strip(chars)
1031
+
1032
+
1033
+ def do_striptags(value: "t.Union[str, HasHTML]") -> str:
1034
+ """Strip SGML/XML tags and replace adjacent whitespace by one space."""
1035
+ if hasattr(value, "__html__"):
1036
+ value = t.cast("HasHTML", value).__html__()
1037
+
1038
+ return Markup(str(value)).striptags()
1039
+
1040
+
1041
+ def sync_do_slice(
1042
+ value: "t.Collection[V]", slices: int, fill_with: "t.Optional[V]" = None
1043
+ ) -> "t.Iterator[t.List[V]]":
1044
+ """Slice an iterator and return a list of lists containing
1045
+ those items. Useful if you want to create a div containing
1046
+ three ul tags that represent columns:
1047
+
1048
+ .. sourcecode:: html+jinja
1049
+
1050
+ <div class="columnwrapper">
1051
+ {%- for column in items|slice(3) %}
1052
+ <ul class="column-{{ loop.index }}">
1053
+ {%- for item in column %}
1054
+ <li>{{ item }}</li>
1055
+ {%- endfor %}
1056
+ </ul>
1057
+ {%- endfor %}
1058
+ </div>
1059
+
1060
+ If you pass it a second argument it's used to fill missing
1061
+ values on the last iteration.
1062
+ """
1063
+ seq = list(value)
1064
+ length = len(seq)
1065
+ items_per_slice = length // slices
1066
+ slices_with_extra = length % slices
1067
+ offset = 0
1068
+
1069
+ for slice_number in range(slices):
1070
+ start = offset + slice_number * items_per_slice
1071
+
1072
+ if slice_number < slices_with_extra:
1073
+ offset += 1
1074
+
1075
+ end = offset + (slice_number + 1) * items_per_slice
1076
+ tmp = seq[start:end]
1077
+
1078
+ if fill_with is not None and slice_number >= slices_with_extra:
1079
+ tmp.append(fill_with)
1080
+
1081
+ yield tmp
1082
+
1083
+
1084
+ @async_variant(sync_do_slice) # type: ignore
1085
+ async def do_slice(
1086
+ value: "t.Union[t.AsyncIterable[V], t.Iterable[V]]",
1087
+ slices: int,
1088
+ fill_with: t.Optional[t.Any] = None,
1089
+ ) -> "t.Iterator[t.List[V]]":
1090
+ return sync_do_slice(await auto_to_list(value), slices, fill_with)
1091
+
1092
+
1093
+ def do_batch(
1094
+ value: "t.Iterable[V]", linecount: int, fill_with: "t.Optional[V]" = None
1095
+ ) -> "t.Iterator[t.List[V]]":
1096
+ """
1097
+ A filter that batches items. It works pretty much like `slice`
1098
+ just the other way round. It returns a list of lists with the
1099
+ given number of items. If you provide a second parameter this
1100
+ is used to fill up missing items. See this example:
1101
+
1102
+ .. sourcecode:: html+jinja
1103
+
1104
+ <table>
1105
+ {%- for row in items|batch(3, '&nbsp;') %}
1106
+ <tr>
1107
+ {%- for column in row %}
1108
+ <td>{{ column }}</td>
1109
+ {%- endfor %}
1110
+ </tr>
1111
+ {%- endfor %}
1112
+ </table>
1113
+ """
1114
+ tmp: "t.List[V]" = []
1115
+
1116
+ for item in value:
1117
+ if len(tmp) == linecount:
1118
+ yield tmp
1119
+ tmp = []
1120
+
1121
+ tmp.append(item)
1122
+
1123
+ if tmp:
1124
+ if fill_with is not None and len(tmp) < linecount:
1125
+ tmp += [fill_with] * (linecount - len(tmp))
1126
+
1127
+ yield tmp
1128
+
1129
+
1130
+ def do_round(
1131
+ value: float,
1132
+ precision: int = 0,
1133
+ method: 'te.Literal["common", "ceil", "floor"]' = "common",
1134
+ ) -> float:
1135
+ """Round the number to a given precision. The first
1136
+ parameter specifies the precision (default is ``0``), the
1137
+ second the rounding method:
1138
+
1139
+ - ``'common'`` rounds either up or down
1140
+ - ``'ceil'`` always rounds up
1141
+ - ``'floor'`` always rounds down
1142
+
1143
+ If you don't specify a method ``'common'`` is used.
1144
+
1145
+ .. sourcecode:: jinja
1146
+
1147
+ {{ 42.55|round }}
1148
+ -> 43.0
1149
+ {{ 42.55|round(1, 'floor') }}
1150
+ -> 42.5
1151
+
1152
+ Note that even if rounded to 0 precision, a float is returned. If
1153
+ you need a real integer, pipe it through `int`:
1154
+
1155
+ .. sourcecode:: jinja
1156
+
1157
+ {{ 42.55|round|int }}
1158
+ -> 43
1159
+ """
1160
+ if method not in {"common", "ceil", "floor"}:
1161
+ raise FilterArgumentError("method must be common, ceil or floor")
1162
+
1163
+ if method == "common":
1164
+ return round(value, precision)
1165
+
1166
+ func = getattr(math, method)
1167
+ return t.cast(float, func(value * (10 ** precision)) / (10 ** precision))
1168
+
1169
+
1170
+ class _GroupTuple(t.NamedTuple):
1171
+ grouper: t.Any
1172
+ list: t.List
1173
+
1174
+ # Use the regular tuple repr to hide this subclass if users print
1175
+ # out the value during debugging.
1176
+ def __repr__(self) -> str:
1177
+ return tuple.__repr__(self)
1178
+
1179
+ def __str__(self) -> str:
1180
+ return tuple.__str__(self)
1181
+
1182
+
1183
+ @pass_environment
1184
+ def sync_do_groupby(
1185
+ environment: "Environment",
1186
+ value: "t.Iterable[V]",
1187
+ attribute: t.Union[str, int],
1188
+ default: t.Optional[t.Any] = None,
1189
+ ) -> "t.List[t.Tuple[t.Any, t.List[V]]]":
1190
+ """Group a sequence of objects by an attribute using Python's
1191
+ :func:`itertools.groupby`. The attribute can use dot notation for
1192
+ nested access, like ``"address.city"``. Unlike Python's ``groupby``,
1193
+ the values are sorted first so only one group is returned for each
1194
+ unique value.
1195
+
1196
+ For example, a list of ``User`` objects with a ``city`` attribute
1197
+ can be rendered in groups. In this example, ``grouper`` refers to
1198
+ the ``city`` value of the group.
1199
+
1200
+ .. sourcecode:: html+jinja
1201
+
1202
+ <ul>{% for city, items in users|groupby("city") %}
1203
+ <li>{{ city }}
1204
+ <ul>{% for user in items %}
1205
+ <li>{{ user.name }}
1206
+ {% endfor %}</ul>
1207
+ </li>
1208
+ {% endfor %}</ul>
1209
+
1210
+ ``groupby`` yields namedtuples of ``(grouper, list)``, which
1211
+ can be used instead of the tuple unpacking above. ``grouper`` is the
1212
+ value of the attribute, and ``list`` is the items with that value.
1213
+
1214
+ .. sourcecode:: html+jinja
1215
+
1216
+ <ul>{% for group in users|groupby("city") %}
1217
+ <li>{{ group.grouper }}: {{ group.list|join(", ") }}
1218
+ {% endfor %}</ul>
1219
+
1220
+ You can specify a ``default`` value to use if an object in the list
1221
+ does not have the given attribute.
1222
+
1223
+ .. sourcecode:: jinja
1224
+
1225
+ <ul>{% for city, items in users|groupby("city", default="NY") %}
1226
+ <li>{{ city }}: {{ items|map(attribute="name")|join(", ") }}</li>
1227
+ {% endfor %}</ul>
1228
+
1229
+ .. versionchanged:: 3.0
1230
+ Added the ``default`` parameter.
1231
+
1232
+ .. versionchanged:: 2.6
1233
+ The attribute supports dot notation for nested access.
1234
+ """
1235
+ expr = make_attrgetter(environment, attribute, default=default)
1236
+ return [
1237
+ _GroupTuple(key, list(values))
1238
+ for key, values in groupby(sorted(value, key=expr), expr)
1239
+ ]
1240
+
1241
+
1242
+ @async_variant(sync_do_groupby) # type: ignore
1243
+ async def do_groupby(
1244
+ environment: "Environment",
1245
+ value: "t.Union[t.AsyncIterable[V], t.Iterable[V]]",
1246
+ attribute: t.Union[str, int],
1247
+ default: t.Optional[t.Any] = None,
1248
+ ) -> "t.List[t.Tuple[t.Any, t.List[V]]]":
1249
+ expr = make_attrgetter(environment, attribute, default=default)
1250
+ return [
1251
+ _GroupTuple(key, await auto_to_list(values))
1252
+ for key, values in groupby(sorted(await auto_to_list(value), key=expr), expr)
1253
+ ]
1254
+
1255
+
1256
+ @pass_environment
1257
+ def sync_do_sum(
1258
+ environment: "Environment",
1259
+ iterable: "t.Iterable[V]",
1260
+ attribute: t.Optional[t.Union[str, int]] = None,
1261
+ start: V = 0, # type: ignore
1262
+ ) -> V:
1263
+ """Returns the sum of a sequence of numbers plus the value of parameter
1264
+ 'start' (which defaults to 0). When the sequence is empty it returns
1265
+ start.
1266
+
1267
+ It is also possible to sum up only certain attributes:
1268
+
1269
+ .. sourcecode:: jinja
1270
+
1271
+ Total: {{ items|sum(attribute='price') }}
1272
+
1273
+ .. versionchanged:: 2.6
1274
+ The `attribute` parameter was added to allow suming up over
1275
+ attributes. Also the `start` parameter was moved on to the right.
1276
+ """
1277
+ if attribute is not None:
1278
+ iterable = map(make_attrgetter(environment, attribute), iterable)
1279
+
1280
+ return sum(iterable, start)
1281
+
1282
+
1283
+ @async_variant(sync_do_sum) # type: ignore
1284
+ async def do_sum(
1285
+ environment: "Environment",
1286
+ iterable: "t.Union[t.AsyncIterable[V], t.Iterable[V]]",
1287
+ attribute: t.Optional[t.Union[str, int]] = None,
1288
+ start: V = 0, # type: ignore
1289
+ ) -> V:
1290
+ rv = start
1291
+
1292
+ if attribute is not None:
1293
+ func = make_attrgetter(environment, attribute)
1294
+ else:
1295
+
1296
+ def func(x: V) -> V:
1297
+ return x
1298
+
1299
+ async for item in auto_aiter(iterable):
1300
+ rv += func(item)
1301
+
1302
+ return rv
1303
+
1304
+
1305
+ def sync_do_list(value: "t.Iterable[V]") -> "t.List[V]":
1306
+ """Convert the value into a list. If it was a string the returned list
1307
+ will be a list of characters.
1308
+ """
1309
+ return list(value)
1310
+
1311
+
1312
+ @async_variant(sync_do_list) # type: ignore
1313
+ async def do_list(value: "t.Union[t.AsyncIterable[V], t.Iterable[V]]") -> "t.List[V]":
1314
+ return await auto_to_list(value)
1315
+
1316
+
1317
+ def do_mark_safe(value: str) -> Markup:
1318
+ """Mark the value as safe which means that in an environment with automatic
1319
+ escaping enabled this variable will not be escaped.
1320
+ """
1321
+ return Markup(value)
1322
+
1323
+
1324
+ def do_mark_unsafe(value: str) -> str:
1325
+ """Mark a value as unsafe. This is the reverse operation for :func:`safe`."""
1326
+ return str(value)
1327
+
1328
+
1329
+ @typing.overload
1330
+ def do_reverse(value: str) -> str:
1331
+ ...
1332
+
1333
+
1334
+ @typing.overload
1335
+ def do_reverse(value: "t.Iterable[V]") -> "t.Iterable[V]":
1336
+ ...
1337
+
1338
+
1339
+ def do_reverse(value: t.Union[str, t.Iterable[V]]) -> t.Union[str, t.Iterable[V]]:
1340
+ """Reverse the object or return an iterator that iterates over it the other
1341
+ way round.
1342
+ """
1343
+ if isinstance(value, str):
1344
+ return value[::-1]
1345
+
1346
+ try:
1347
+ return reversed(value) # type: ignore
1348
+ except TypeError:
1349
+ try:
1350
+ rv = list(value)
1351
+ rv.reverse()
1352
+ return rv
1353
+ except TypeError as e:
1354
+ raise FilterArgumentError("argument must be iterable") from e
1355
+
1356
+
1357
+ @pass_environment
1358
+ def do_attr(
1359
+ environment: "Environment", obj: t.Any, name: str
1360
+ ) -> t.Union[Undefined, t.Any]:
1361
+ """Get an attribute of an object. ``foo|attr("bar")`` works like
1362
+ ``foo.bar`` just that always an attribute is returned and items are not
1363
+ looked up.
1364
+
1365
+ See :ref:`Notes on subscriptions <notes-on-subscriptions>` for more details.
1366
+ """
1367
+ try:
1368
+ name = str(name)
1369
+ except UnicodeError:
1370
+ pass
1371
+ else:
1372
+ try:
1373
+ value = getattr(obj, name)
1374
+ except AttributeError:
1375
+ pass
1376
+ else:
1377
+ if environment.sandboxed:
1378
+ environment = t.cast("SandboxedEnvironment", environment)
1379
+
1380
+ if not environment.is_safe_attribute(obj, name, value):
1381
+ return environment.unsafe_undefined(obj, name)
1382
+
1383
+ return value
1384
+
1385
+ return environment.undefined(obj=obj, name=name)
1386
+
1387
+
1388
+ @typing.overload
1389
+ def sync_do_map(
1390
+ context: "Context", value: t.Iterable, name: str, *args: t.Any, **kwargs: t.Any
1391
+ ) -> t.Iterable:
1392
+ ...
1393
+
1394
+
1395
+ @typing.overload
1396
+ def sync_do_map(
1397
+ context: "Context",
1398
+ value: t.Iterable,
1399
+ *,
1400
+ attribute: str = ...,
1401
+ default: t.Optional[t.Any] = None,
1402
+ ) -> t.Iterable:
1403
+ ...
1404
+
1405
+
1406
+ @pass_context
1407
+ def sync_do_map(
1408
+ context: "Context", value: t.Iterable, *args: t.Any, **kwargs: t.Any
1409
+ ) -> t.Iterable:
1410
+ """Applies a filter on a sequence of objects or looks up an attribute.
1411
+ This is useful when dealing with lists of objects but you are really
1412
+ only interested in a certain value of it.
1413
+
1414
+ The basic usage is mapping on an attribute. Imagine you have a list
1415
+ of users but you are only interested in a list of usernames:
1416
+
1417
+ .. sourcecode:: jinja
1418
+
1419
+ Users on this page: {{ users|map(attribute='username')|join(', ') }}
1420
+
1421
+ You can specify a ``default`` value to use if an object in the list
1422
+ does not have the given attribute.
1423
+
1424
+ .. sourcecode:: jinja
1425
+
1426
+ {{ users|map(attribute="username", default="Anonymous")|join(", ") }}
1427
+
1428
+ Alternatively you can let it invoke a filter by passing the name of the
1429
+ filter and the arguments afterwards. A good example would be applying a
1430
+ text conversion filter on a sequence:
1431
+
1432
+ .. sourcecode:: jinja
1433
+
1434
+ Users on this page: {{ titles|map('lower')|join(', ') }}
1435
+
1436
+ Similar to a generator comprehension such as:
1437
+
1438
+ .. code-block:: python
1439
+
1440
+ (u.username for u in users)
1441
+ (getattr(u, "username", "Anonymous") for u in users)
1442
+ (do_lower(x) for x in titles)
1443
+
1444
+ .. versionchanged:: 2.11.0
1445
+ Added the ``default`` parameter.
1446
+
1447
+ .. versionadded:: 2.7
1448
+ """
1449
+ if value:
1450
+ func = prepare_map(context, args, kwargs)
1451
+
1452
+ for item in value:
1453
+ yield func(item)
1454
+
1455
+
1456
+ @typing.overload
1457
+ def do_map(
1458
+ context: "Context",
1459
+ value: t.Union[t.AsyncIterable, t.Iterable],
1460
+ name: str,
1461
+ *args: t.Any,
1462
+ **kwargs: t.Any,
1463
+ ) -> t.Iterable:
1464
+ ...
1465
+
1466
+
1467
+ @typing.overload
1468
+ def do_map(
1469
+ context: "Context",
1470
+ value: t.Union[t.AsyncIterable, t.Iterable],
1471
+ *,
1472
+ attribute: str = ...,
1473
+ default: t.Optional[t.Any] = None,
1474
+ ) -> t.Iterable:
1475
+ ...
1476
+
1477
+
1478
+ @async_variant(sync_do_map) # type: ignore
1479
+ async def do_map(
1480
+ context: "Context",
1481
+ value: t.Union[t.AsyncIterable, t.Iterable],
1482
+ *args: t.Any,
1483
+ **kwargs: t.Any,
1484
+ ) -> t.AsyncIterable:
1485
+ if value:
1486
+ func = prepare_map(context, args, kwargs)
1487
+
1488
+ async for item in auto_aiter(value):
1489
+ yield await auto_await(func(item))
1490
+
1491
+
1492
+ @pass_context
1493
+ def sync_do_select(
1494
+ context: "Context", value: "t.Iterable[V]", *args: t.Any, **kwargs: t.Any
1495
+ ) -> "t.Iterator[V]":
1496
+ """Filters a sequence of objects by applying a test to each object,
1497
+ and only selecting the objects with the test succeeding.
1498
+
1499
+ If no test is specified, each object will be evaluated as a boolean.
1500
+
1501
+ Example usage:
1502
+
1503
+ .. sourcecode:: jinja
1504
+
1505
+ {{ numbers|select("odd") }}
1506
+ {{ numbers|select("odd") }}
1507
+ {{ numbers|select("divisibleby", 3) }}
1508
+ {{ numbers|select("lessthan", 42) }}
1509
+ {{ strings|select("equalto", "mystring") }}
1510
+
1511
+ Similar to a generator comprehension such as:
1512
+
1513
+ .. code-block:: python
1514
+
1515
+ (n for n in numbers if test_odd(n))
1516
+ (n for n in numbers if test_divisibleby(n, 3))
1517
+
1518
+ .. versionadded:: 2.7
1519
+ """
1520
+ return select_or_reject(context, value, args, kwargs, lambda x: x, False)
1521
+
1522
+
1523
+ @async_variant(sync_do_select) # type: ignore
1524
+ async def do_select(
1525
+ context: "Context",
1526
+ value: "t.Union[t.AsyncIterable[V], t.Iterable[V]]",
1527
+ *args: t.Any,
1528
+ **kwargs: t.Any,
1529
+ ) -> "t.AsyncIterator[V]":
1530
+ return async_select_or_reject(context, value, args, kwargs, lambda x: x, False)
1531
+
1532
+
1533
+ @pass_context
1534
+ def sync_do_reject(
1535
+ context: "Context", value: "t.Iterable[V]", *args: t.Any, **kwargs: t.Any
1536
+ ) -> "t.Iterator[V]":
1537
+ """Filters a sequence of objects by applying a test to each object,
1538
+ and rejecting the objects with the test succeeding.
1539
+
1540
+ If no test is specified, each object will be evaluated as a boolean.
1541
+
1542
+ Example usage:
1543
+
1544
+ .. sourcecode:: jinja
1545
+
1546
+ {{ numbers|reject("odd") }}
1547
+
1548
+ Similar to a generator comprehension such as:
1549
+
1550
+ .. code-block:: python
1551
+
1552
+ (n for n in numbers if not test_odd(n))
1553
+
1554
+ .. versionadded:: 2.7
1555
+ """
1556
+ return select_or_reject(context, value, args, kwargs, lambda x: not x, False)
1557
+
1558
+
1559
+ @async_variant(sync_do_reject) # type: ignore
1560
+ async def do_reject(
1561
+ context: "Context",
1562
+ value: "t.Union[t.AsyncIterable[V], t.Iterable[V]]",
1563
+ *args: t.Any,
1564
+ **kwargs: t.Any,
1565
+ ) -> "t.AsyncIterator[V]":
1566
+ return async_select_or_reject(context, value, args, kwargs, lambda x: not x, False)
1567
+
1568
+
1569
+ @pass_context
1570
+ def sync_do_selectattr(
1571
+ context: "Context", value: "t.Iterable[V]", *args: t.Any, **kwargs: t.Any
1572
+ ) -> "t.Iterator[V]":
1573
+ """Filters a sequence of objects by applying a test to the specified
1574
+ attribute of each object, and only selecting the objects with the
1575
+ test succeeding.
1576
+
1577
+ If no test is specified, the attribute's value will be evaluated as
1578
+ a boolean.
1579
+
1580
+ Example usage:
1581
+
1582
+ .. sourcecode:: jinja
1583
+
1584
+ {{ users|selectattr("is_active") }}
1585
+ {{ users|selectattr("email", "none") }}
1586
+
1587
+ Similar to a generator comprehension such as:
1588
+
1589
+ .. code-block:: python
1590
+
1591
+ (u for user in users if user.is_active)
1592
+ (u for user in users if test_none(user.email))
1593
+
1594
+ .. versionadded:: 2.7
1595
+ """
1596
+ return select_or_reject(context, value, args, kwargs, lambda x: x, True)
1597
+
1598
+
1599
+ @async_variant(sync_do_selectattr) # type: ignore
1600
+ async def do_selectattr(
1601
+ context: "Context",
1602
+ value: "t.Union[t.AsyncIterable[V], t.Iterable[V]]",
1603
+ *args: t.Any,
1604
+ **kwargs: t.Any,
1605
+ ) -> "t.AsyncIterator[V]":
1606
+ return async_select_or_reject(context, value, args, kwargs, lambda x: x, True)
1607
+
1608
+
1609
+ @pass_context
1610
+ def sync_do_rejectattr(
1611
+ context: "Context", value: "t.Iterable[V]", *args: t.Any, **kwargs: t.Any
1612
+ ) -> "t.Iterator[V]":
1613
+ """Filters a sequence of objects by applying a test to the specified
1614
+ attribute of each object, and rejecting the objects with the test
1615
+ succeeding.
1616
+
1617
+ If no test is specified, the attribute's value will be evaluated as
1618
+ a boolean.
1619
+
1620
+ .. sourcecode:: jinja
1621
+
1622
+ {{ users|rejectattr("is_active") }}
1623
+ {{ users|rejectattr("email", "none") }}
1624
+
1625
+ Similar to a generator comprehension such as:
1626
+
1627
+ .. code-block:: python
1628
+
1629
+ (u for user in users if not user.is_active)
1630
+ (u for user in users if not test_none(user.email))
1631
+
1632
+ .. versionadded:: 2.7
1633
+ """
1634
+ return select_or_reject(context, value, args, kwargs, lambda x: not x, True)
1635
+
1636
+
1637
+ @async_variant(sync_do_rejectattr) # type: ignore
1638
+ async def do_rejectattr(
1639
+ context: "Context",
1640
+ value: "t.Union[t.AsyncIterable[V], t.Iterable[V]]",
1641
+ *args: t.Any,
1642
+ **kwargs: t.Any,
1643
+ ) -> "t.AsyncIterator[V]":
1644
+ return async_select_or_reject(context, value, args, kwargs, lambda x: not x, True)
1645
+
1646
+
1647
+ @pass_eval_context
1648
+ def do_tojson(
1649
+ eval_ctx: "EvalContext", value: t.Any, indent: t.Optional[int] = None
1650
+ ) -> Markup:
1651
+ """Serialize an object to a string of JSON, and mark it safe to
1652
+ render in HTML. This filter is only for use in HTML documents.
1653
+
1654
+ The returned string is safe to render in HTML documents and
1655
+ ``<script>`` tags. The exception is in HTML attributes that are
1656
+ double quoted; either use single quotes or the ``|forceescape``
1657
+ filter.
1658
+
1659
+ :param value: The object to serialize to JSON.
1660
+ :param indent: The ``indent`` parameter passed to ``dumps``, for
1661
+ pretty-printing the value.
1662
+
1663
+ .. versionadded:: 2.9
1664
+ """
1665
+ policies = eval_ctx.environment.policies
1666
+ dumps = policies["json.dumps_function"]
1667
+ kwargs = policies["json.dumps_kwargs"]
1668
+
1669
+ if indent is not None:
1670
+ kwargs = kwargs.copy()
1671
+ kwargs["indent"] = indent
1672
+
1673
+ return htmlsafe_json_dumps(value, dumps=dumps, **kwargs)
1674
+
1675
+
1676
+ def prepare_map(
1677
+ context: "Context", args: t.Tuple, kwargs: t.Dict[str, t.Any]
1678
+ ) -> t.Callable[[t.Any], t.Any]:
1679
+ if not args and "attribute" in kwargs:
1680
+ attribute = kwargs.pop("attribute")
1681
+ default = kwargs.pop("default", None)
1682
+
1683
+ if kwargs:
1684
+ raise FilterArgumentError(
1685
+ f"Unexpected keyword argument {next(iter(kwargs))!r}"
1686
+ )
1687
+
1688
+ func = make_attrgetter(context.environment, attribute, default=default)
1689
+ else:
1690
+ try:
1691
+ name = args[0]
1692
+ args = args[1:]
1693
+ except LookupError:
1694
+ raise FilterArgumentError("map requires a filter argument") from None
1695
+
1696
+ def func(item: t.Any) -> t.Any:
1697
+ return context.environment.call_filter(
1698
+ name, item, args, kwargs, context=context
1699
+ )
1700
+
1701
+ return func
1702
+
1703
+
1704
+ def prepare_select_or_reject(
1705
+ context: "Context",
1706
+ args: t.Tuple,
1707
+ kwargs: t.Dict[str, t.Any],
1708
+ modfunc: t.Callable[[t.Any], t.Any],
1709
+ lookup_attr: bool,
1710
+ ) -> t.Callable[[t.Any], t.Any]:
1711
+ if lookup_attr:
1712
+ try:
1713
+ attr = args[0]
1714
+ except LookupError:
1715
+ raise FilterArgumentError("Missing parameter for attribute name") from None
1716
+
1717
+ transfunc = make_attrgetter(context.environment, attr)
1718
+ off = 1
1719
+ else:
1720
+ off = 0
1721
+
1722
+ def transfunc(x: V) -> V:
1723
+ return x
1724
+
1725
+ try:
1726
+ name = args[off]
1727
+ args = args[1 + off :]
1728
+
1729
+ def func(item: t.Any) -> t.Any:
1730
+ return context.environment.call_test(name, item, args, kwargs)
1731
+
1732
+ except LookupError:
1733
+ func = bool # type: ignore
1734
+
1735
+ return lambda item: modfunc(func(transfunc(item)))
1736
+
1737
+
1738
+ def select_or_reject(
1739
+ context: "Context",
1740
+ value: "t.Iterable[V]",
1741
+ args: t.Tuple,
1742
+ kwargs: t.Dict[str, t.Any],
1743
+ modfunc: t.Callable[[t.Any], t.Any],
1744
+ lookup_attr: bool,
1745
+ ) -> "t.Iterator[V]":
1746
+ if value:
1747
+ func = prepare_select_or_reject(context, args, kwargs, modfunc, lookup_attr)
1748
+
1749
+ for item in value:
1750
+ if func(item):
1751
+ yield item
1752
+
1753
+
1754
+ async def async_select_or_reject(
1755
+ context: "Context",
1756
+ value: "t.Union[t.AsyncIterable[V], t.Iterable[V]]",
1757
+ args: t.Tuple,
1758
+ kwargs: t.Dict[str, t.Any],
1759
+ modfunc: t.Callable[[t.Any], t.Any],
1760
+ lookup_attr: bool,
1761
+ ) -> "t.AsyncIterator[V]":
1762
+ if value:
1763
+ func = prepare_select_or_reject(context, args, kwargs, modfunc, lookup_attr)
1764
+
1765
+ async for item in auto_aiter(value):
1766
+ if func(item):
1767
+ yield item
1768
+
1769
+
1770
+ FILTERS = {
1771
+ "abs": abs,
1772
+ "attr": do_attr,
1773
+ "batch": do_batch,
1774
+ "capitalize": do_capitalize,
1775
+ "center": do_center,
1776
+ "count": len,
1777
+ "d": do_default,
1778
+ "default": do_default,
1779
+ "dictsort": do_dictsort,
1780
+ "e": escape,
1781
+ "escape": escape,
1782
+ "filesizeformat": do_filesizeformat,
1783
+ "first": do_first,
1784
+ "float": do_float,
1785
+ "forceescape": do_forceescape,
1786
+ "format": do_format,
1787
+ "groupby": do_groupby,
1788
+ "indent": do_indent,
1789
+ "int": do_int,
1790
+ "join": do_join,
1791
+ "last": do_last,
1792
+ "length": len,
1793
+ "list": do_list,
1794
+ "lower": do_lower,
1795
+ "map": do_map,
1796
+ "min": do_min,
1797
+ "max": do_max,
1798
+ "pprint": do_pprint,
1799
+ "random": do_random,
1800
+ "reject": do_reject,
1801
+ "rejectattr": do_rejectattr,
1802
+ "replace": do_replace,
1803
+ "reverse": do_reverse,
1804
+ "round": do_round,
1805
+ "safe": do_mark_safe,
1806
+ "select": do_select,
1807
+ "selectattr": do_selectattr,
1808
+ "slice": do_slice,
1809
+ "sort": do_sort,
1810
+ "string": soft_str,
1811
+ "striptags": do_striptags,
1812
+ "sum": do_sum,
1813
+ "title": do_title,
1814
+ "trim": do_trim,
1815
+ "truncate": do_truncate,
1816
+ "unique": do_unique,
1817
+ "upper": do_upper,
1818
+ "urlencode": do_urlencode,
1819
+ "urlize": do_urlize,
1820
+ "wordcount": do_wordcount,
1821
+ "wordwrap": do_wordwrap,
1822
+ "xmlattr": do_xmlattr,
1823
+ "tojson": do_tojson,
1824
+ }