£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>
3
Pf                 @   s|   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mZm	Z	 dd Z
dd Zd	d
 Zdd Zdd ZG dd deZdS )    N)CaseInsensitiveDict   )HTTPResponsepickle	text_typec             C   s   t j| jdS )Nascii)base64Z	b64encodedecode)b r   /usr/lib/python3.6/serialize.py_b64_encode_bytes   s    r   c             C   s   t | jdS )Nutf8)r   encode)sr   r   r   _b64_encode_str   s    r   c             C   s   t | trt| S t| S )N)
isinstancer   r   r   )r   r   r   r   _b64_encode   s    
r   c             C   s   t j| jdS )Nr   )r   Z	b64decoder   )r
   r   r   r   _b64_decode_bytes   s    r   c             C   s   t | jdS )Nr   )r   r	   )r   r   r   r   _b64_decode_str   s    r   c               @   s>   e Zd ZdddZdd Zdd Zdd	 Zd
d Zdd ZdS )
SerializerNc          	   C   s   t |j}|d kr*|jdd}tj||_dt|tdd |jj D |j	|j
t|j|j|jdi}i |d< d|kr|d jd}x*|D ]"}|j }|jj|d |d |< qW td	d |d j D |d< d
jdtjtj|dddjdgS )NF)decode_contentresponsec             s   s"   | ]\}}t |t |fV  qd S )N)r   ).0kvr   r   r   	<genexpr>9   s   z#Serializer.dumps.<locals>.<genexpr>)bodyheadersstatusversionreasonstrictr   vary,c             s   s.   | ]&\}}t ||d k	r t |n|fV  qd S )N)r   )r   r   r   r   r   r   r   N   s      ,s   cc=2:T)Z
separatorsZ	sort_keysr   )r$   r&   )r   r   readioBytesIOZ_fpr   dictitemsr   r    r   r!   r"   r   splitstripgetjoinzlibcompressjsondumpsr   )selfrequestr   r   Zresponse_headersdataZvaried_headersheaderr   r   r   r3   #   s:    

zSerializer.dumpsc             C   s   |sd S y|j dd\}}W n tk
r4   d}Y nX |d d dkrR|| }d}|j ddd	 jd}yt| dj|||S  tk
r   d S X d S )
Nr%   r   s   cc=0   s   cc=   =r   z_loads_v{0})r,   
ValueErrorr	   getattrformatAttributeError)r4   r5   r6   Zverr   r   r   loads[   s    
zSerializer.loadsc             C   s   d|j di krdS x2|j di j D ]\}}|jj |d|kr&dS q&W |d jd}t|d d d}|j dd	d
kr|jd ||d d< ytj|}W n$ tk
r   tj|jd}Y nX t	f |dd|d S )z`Verify our vary headers match and construct a real urllib3
        HTTPResponse object.
        *r#   Nr   r   r   )r6   ztransfer-encoding Zchunkedr   F)r   Zpreload_content)
r.   r+   r   popr   r(   r)   	TypeErrorr   r   )r4   r5   cachedr7   valueZbody_rawr   r   r   r   r   prepare_responsex   s$    
zSerializer.prepare_responsec             C   s   d S )Nr   )r4   r5   r6   r   r   r   	_loads_v0   s    zSerializer._loads_v0c             C   s0   yt j|}W n tk
r"   d S X | j||S )N)r   r?   r;   rF   )r4   r5   r6   rD   r   r   r   	_loads_v1   s
    zSerializer._loads_v1c             C   s   yt jtj|jd}W n tk
r.   d S X t|d d |d d< tdd |d d j D |d d< t	|d d |d d< tdd |d	 j D |d	< | j
||S )
Nr   r   r   c             s   s"   | ]\}}t |t |fV  qd S )N)r   )r   r   r   r   r   r   r      s   z'Serializer._loads_v2.<locals>.<genexpr>r   r!   c             s   s.   | ]&\}}t ||d k	r t |n|fV  qd S )N)r   )r   r   r   r   r   r   r      s   r#   )r2   r?   r0   Z
decompressr	   r;   r   r*   r+   r   rF   )r4   r5   r6   rD   r   r   r   	_loads_v2   s    zSerializer._loads_v2)N)	__name__
__module____qualname__r3   r?   rF   rG   rH   rI   r   r   r   r   r   !   s   
8(r   )r   r(   r2   r0   Zpip._vendor.requests.structuresr   compatr   r   r   r   r   r   r   r   objectr   r   r   r   r   <module>   s   