a
    3g'                     @   s   d Z ddlZddlZddlZddlZddlmZ ddlmZ ddlm	Z
 dZzddlmZ W n eyr   dZY n0 zddlmZ W n ey   dZdZdZY n0 ddlZddlZd	d
 Zdd Zdd Zedkre  dS )z'Module containing bug report helper(s).    N)idna)urllib3   )__version__)chardet)	pyopensslc                  C   s   t  } | dkrt  }nj| dkr\dtjjtjjtjj}tjj	dkrd
|tjj	g}n(| dkrnt  }n| dkrt  }nd}| |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.
    CPythonPyPyz{}.{}.{}final Jython
IronPythonUnknown)nameversion)platformpython_implementationpython_versionformatsyspypy_version_infomajorminormicroreleaseleveljoin)implementationimplementation_version r   g/var/www/html/cobodadashboardai.evdpl.com/venv/lib/python3.9/site-packages/pip/_vendor/requests/help.py_implementation   s&    



r    c            
      C   s   zt  t  d} W n ty2   ddd} Y n0 t }dtji}ddi}ddi}trbdtji}trpdtji}ddd}t	rt	jt	j
jdd}dttddi}dttddi}tj}d|dur|dndi}	| ||	tdutdu ||||||dtid	S )
z&Generate information for a bug report.)systemreleaser   r   Nr   )r   openssl_versionxr   )r   r   
system_sslZusing_pyopensslZusing_charset_normalizerZ	pyOpenSSLr   r   charset_normalizercryptographyr   requests)r   r!   r"   OSErrorr    r   r   r&   r   OpenSSLZSSLOPENSSL_VERSION_NUMBERgetattrr'   r   sslr   requests_version)
Zplatform_infoZimplementation_infoZurllib3_infoZcharset_normalizer_infoZchardet_infoZpyopenssl_infoZcryptography_infoZ	idna_infor%   Zsystem_ssl_infor   r   r   infoB   sV    




r/   c                   C   s   t tjt ddd dS )z)Pretty-print the bug information as JSON.T   )	sort_keysindentN)printjsondumpsr/   r   r   r   r   main}   s    r6   __main__)__doc__r4   r   r-   r   pip._vendorr   r   r   r   r.   r&   r   ImportErrorpip._vendor.urllib3.contribr   r*   r'   r    r/   r6   __name__r   r   r   r   <module>   s2   

#;