a „oe#ã@sòdZddlZddlZddlZddlZddlZddlZddlmZ z ddl Z Wne ybdZ Yn0z ddl Z Wne y†dZ Yn0zddl mZWne y¶dZdZdZYn0ddlZddlZdd„Zdd „Zd d „Zed krîeƒdS) z'Module containing bug report helper(s).éNé)Ú __version__)Ú pyopensslcCsŽt ¡}|dkrt ¡}nj|dkr\d tjjtjjtjj¡}tjj dkr„d  |tjj g¡}n(|dkrnt ¡}n|dkr€t ¡}nd}||d œS) aÙReturn 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. ZCPythonZPyPyz{}.{}.{}ÚfinalÚZJythonZ IronPythonÚUnknown)ÚnameÚversion) ÚplatformZpython_implementationZpython_versionÚformatÚsysZpypy_version_infoÚmajorÚminorÚmicroÚ releaselevelÚjoin)ÚimplementationZimplementation_version©rú.C:\Program Files\Certbot\pkgs\requests\help.pyÚ_implementation"s&  ý  ÿ  rc Csúzt ¡t ¡dœ}Wnty2dddœ}Yn0tƒ}dtji}ddi}ddi}trbdtji}trpdtji}dddœ}t r’t jt j j d›dœ}dt t ddƒi}dt tddƒi}tj }d|durÊ|d›ndi} ||| tdutdu||||||dtid œ S) z&Generate information for a bug report.)ÚsystemÚreleaserr Nr)r Zopenssl_versionÚxr) r rÚ system_sslZusing_pyopensslZusing_charset_normalizerZ pyOpenSSLÚurllib3ÚchardetÚcharset_normalizerÚ cryptographyÚidnaZrequests)r rrÚOSErrorrrrrrÚOpenSSLZSSLZOPENSSL_VERSION_NUMBERÚgetattrrrÚsslrÚrequests_version) Z platform_infoZimplementation_infoZ urllib3_infoZcharset_normalizer_infoZ chardet_infoZpyopenssl_infoZcryptography_infoZ idna_inforZsystem_ssl_inforrrÚinfoEsVþ  þ    þ þ ÿ ÿÿôr$cCsttjtƒddd�ƒdS)z)Pretty-print the bug information as JSON.Té)Z sort_keysÚindentN)ÚprintÚjsonÚdumpsr$rrrrÚmain€sr*Ú__main__)Ú__doc__r(r r"r rrrrr#rÚ ImportErrorrZurllib3.contribrr rrr$r*Ú__name__rrrrÚs8         #;