
    k"g'                         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	 ddlmZ 	 ddlmZ ddlZddlZd	 Zd
 Zd Zedk(  r e        yy# e$ r dZY /w xY w# e$ r	 dZdZdZY 1w xY w)z'Module containing bug report helper(s).    N)idna)urllib3   )__version__)chardet)	pyopensslc                  &   t        j                         } | dk(  rt        j                         }n| dk(  rdj                  t        j
                  j                  t        j
                  j                  t        j
                  j                        }t        j
                  j                  dk7  rbdj                  |t        j
                  j                  g      }n6| dk(  rt        j                         }n| dk(  rt        j                         }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_versions     R/var/www/html/djangosite/lib/python3.12/site-packages/pip/_vendor/requests/help.py_implementationr!      s     335N"!)!8!8!:	6	!!+!2!2!!''!!''!!''"

   --8%'WW')>)>)K)KL&" 
8	#!)!8!8!:	<	'!)!8!8!:!*"/EFF    c                  X   	 t        j                         t        j                         d} t	               }dt
        j                  i}ddi}ddi}t        rdt        j                  i}t        rdt        j                  i}ddd}t        r-t        j                  t        j                  j                  dd}dt        t        dd      i}dt        t        dd      i}t        j                  }d||dndi}	| ||	t         dut        du ||||||dt"        id	S # t        $ r ddd} Y w xY w)
z&Generate information for a bug report.)systemreleaser   r   Nr   )r   openssl_versionxr   )r   r   
system_sslusing_pyopensslusing_charset_normalizer	pyOpenSSLr   r   charset_normalizercryptographyr   requests)r   r$   r%   OSErrorr!   r   r   r,   r   OpenSSLSSLOPENSSL_VERSION_NUMBERgetattrr-   r   sslr   requests_version)
platform_infoimplementation_infourllib3_infocharset_normalizer_infochardet_infopyopenssl_infocryptography_info	idna_infor(   system_ssl_infos
             r    infor?   B   sd   	
oo''')
 *+w223L($/t$L#,.@.L.L"M!7#6#67 N **")++"D"DQ!G

 	7<; 	743I ++J z7MZNSUVO "-%$D0$+tO#5)'
 E  
 

s   )D D)(D)c                  V    t        t        j                  t               dd             y)z)Pretty-print the bug information as JSON.T   )	sort_keysindentN)printjsondumpsr?    r"   r    mainrH   }   s    	$**TVtA
67r"   __main__)__doc__rE   r   r4   r   pip._vendorr   r   r   r   r5   r,   r   ImportErrorpip._vendor.urllib3.contribr   r-   r0   r!   r?   rH   __name__rG   r"   r    <module>rO      s    -   
 
   - #5  GF8v8
 zF c  G
  IGLs"   A A! AA!A/.A/