i dZddlZddlZddlZddlZddlZddlZddlmZ  ddl Z n #e $rdZ YnwxYw ddl Z n #e $rdZ YnwxYw ddl mZddlZddlZn#e $r dZdZdZYnwxYwdZdZdZed kr edSdS) z'Module containing bug report helper(s).N) __version__) pyopensslctj}|dkrtj}n|dkratj}|jd|jd|j}tjjdkr&d |tjjg}n6|dkrtj}n|dkrtj}nd}||d S) aReturn a dict with the Python implementation and version. Provide both the name and the version of the Python implementation currently running. For example, on CPython 3.10.3 it will return {'name': 'CPython', 'version': '3.10.3'}. This function works best on CPython and PyPy: in particular, it probably doesn't work for Jython or IronPython. Future investigation should be done to work out the correct shape of the code for those platforms. CPythonPyPy.finalJython IronPythonUnknown)nameversion) platformpython_implementationpython_versionsyspypy_version_infomajorminormicro releaseleveljoin)implementationimplementation_versionpypys ;C:\PYTHON\_runtimes\venv\Lib\site-packages\requests/help.py_implementationr"s355N""!)!8!:!: 6 ! !$$(J!J!J!J!Jdj!J!J  - 8 8%'WW')>)KL&& " 8 # #!)!8!:!: < ' '!)!8!:!:!*"/E F FFc F tjtjd}n#t$rddd}YnwxYwt }dt ji}ddi}ddi}trdtji}trdtji}ddd}tr tjtj j dd}dttddi}dttddi}tj }d||dndi} ||| t dutdu||||||dt"id S) z&Generate information for a bug report.)systemreleaserrNr )ropenssl_versionxr) rr system_sslusing_pyopensslusing_charset_normalizer pyOpenSSLurllib3chardetcharset_normalizer cryptographyidnarequests)rr"r#OSErrorrr*rr,r+OpenSSLSSLOPENSSL_VERSION_NUMBERgetattrr-r.sslrrequests_version) platform_infoimplementation_info urllib3_infocharset_normalizer_info chardet_infopyopenssl_infocryptography_info idna_infor&system_ssl_infos rinfor@Bs  o'''))          *++w23L($/t$LN#,.@.L"M8!7#67 N *")+"DHH   7<;; 7433I+J z7MZ"3"3"3SUVO"-%$D0$+tO#5) '   s '*<<cfttjtdddS)z)Pretty-print the bug information as JSON.T) sort_keysindentN)printjsondumpsr@r rmainrI}s+ $*TVVtA 6 6 677777r __main__)__doc__rFrr5rr.r*r rr6r, ImportErrorr+urllib3.contribrr-r1rr@rI__name__rHr rrOsx--  ------NNNNGGG)))))) NNNN IGLLLGGG@888v888  zDFFFFFs-'11:AAA A%$A%