U
    ;»{jø  ã                   @   sz   U d dl mZmZ d dlmZ d dlmZ ddiZeeef e	d< dZ
edd	œd
d„Ze
feeeeddf dœdd„ZdS )é    )ÚDictÚ	Generator)ÚResponse)ÚNetworkConnectionErrorzAccept-EncodingÚidentityÚHEADERSi   N)Ú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   ú</tmp/pip-install-zsn1f9xv/pip/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_chunks;   s    è
r   )Útypingr   r   Zpip._vendor.requests.modelsr   Úpip._internal.exceptionsr   r   ÚstrÚ__annotations__ZDOWNLOAD_CHUNK_SIZEr   Úintr   r   r   r   r   r   Ú<module>   s    ÿ þ