U
    ƒIÀdé  ã                   @   sz   U d dl mZmZ d dlmZmZ d dlmZ ddiZee	e	f e
d< eddœd	d
„Zefeeeeddf dœdd„ZdS )é    )ÚDictÚ	Generator)ÚCONTENT_CHUNK_SIZEÚResponse)ÚNetworkConnectionErrorzAccept-EncodingÚidentityÚHEADERSN)ÚrespÚreturnc                 C   sÄ   d}t | jtƒrDz| j d¡}W qJ tk
r@   | j d¡}Y qJX n| j}d| j  kr`dk r~n n| j› d|› d| j› �}n2d| j  kr”dk r°n n| j› d	|› d| j› �}|rÀt|| d
�‚d S )NÚ zutf-8z
iso-8859-1i�  iô  z Client Error: z
 for url: iX  z Server Error: )Úresponse)Ú
isinstanceÚreasonÚbytesÚdecodeÚUnicodeDecodeErrorÚstatus_codeÚurlr   )r	   Úhttp_error_msgr   © r   úT/home/sam/Atlas/atlas_env/lib/python3.8/site-packages/pip/_internal/network/utils.pyÚraise_for_status   s    ÿÿr   )r   Ú
chunk_sizer
   c                 c   sT   z | j j|dd�D ]
}|V  qW n. tk
rN   | j  |¡}|sBqJ|V  q0Y nX dS )z3Given a requests Response, provide the data chunks.F)Údecode_contentN)ÚrawÚstreamÚAttributeErrorÚread)r   r   Úchunkr   r   r   Úresponse_chunks9   s    è
r   )Útypingr   r   Zpip._vendor.requests.modelsr   r   Úpip._internal.exceptionsr   r   ÚstrÚ__annotations__r   Úintr   r   r   r   r   r   Ú<module>   s    ÿ þ