ÿØÿà JFIF      ÿÛ „ 	 ( %!1!%)+//.383,7(-.+



-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ               ÿÄ J  	     ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ              ÿÄ *        !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍÑ¶¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
..............................................................................................................................................................................
.............................................................................                                                  
                                                                                                                                                                                     ÿØÿà JFIF      ÿÛ „ 	 ( %!1!%)+//.383,7(-.+



-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ               ÿÄ J  	     ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ              ÿÄ *        !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍÑ¶¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
..............................................................................................................................................................................
.............................................................................                                                  
                                                                                                                                                                                     3
nf\	                 @   s   d dl m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dlmZ ejdd	 Zd
d Zdd Zdd ZdddZdS )    )absolute_importN)BytesIO   )six)b)RequestFieldzutf-8   c              C   s$   t jtjd} tjr | jd} | S )zN
    Our embarrassingly-simple replacement for mimetools.choose_boundary.
       ascii)binasciiZhexlifyosurandomr   ZPY3decode)boundary r   /usr/lib/python3.6/filepost.pychoose_boundary   s    
r   c             c   sN   t | trtj| }nt| }x*|D ]"}t |tr:|V  q$tj| V  q$W dS )z
    Iterate over fields.

    Supports list of (k, v) tuples and dicts, and lists of
    :class:`~urllib3.fields.RequestField`.

    N)
isinstancedictr   	iteritemsiterr   Zfrom_tuples)fieldsifieldr   r   r   iter_field_objects   s    


r   c             C   s,   t | trdd tj| D S dd | D S )a-  
    .. deprecated:: 1.6

    Iterate over fields.

    The addition of :class:`~urllib3.fields.RequestField` makes this function
    obsolete. Instead, use :func:`iter_field_objects`, which returns
    :class:`~urllib3.fields.RequestField` objects.

    Supports list of (k, v) tuples and dicts.
    c             s   s   | ]\}}||fV  qd S )Nr   ).0kvr   r   r   	<genexpr>:   s    ziter_fields.<locals>.<genexpr>c             s   s   | ]\}}||fV  qd S )Nr   )r   r   r   r   r   r   r   <   s    )r   r   r   r   )r   r   r   r   iter_fields-   s    
r   c             C   s   t  }|dkrt }x|t| D ]p}|jtd|  t|j|j  |j}t|t	r^t
|}t|tjrzt|j| n
|j| |jd qW |jtd|  t
d| }|j |fS )aQ  
    Encode a dictionary of ``fields`` using the multipart/form-data MIME format.

    :param fields:
        Dictionary of fields or list of (key, :class:`~urllib3.fields.RequestField`).

    :param boundary:
        If not specified, then a random boundary will be generated using
        :func:`urllib3.filepost.choose_boundary`.
    Nz--%s
s   
z--%s--
z multipart/form-data; boundary=%s)r   r   r   writer   writerZrender_headersdatar   intstrr   Z	text_typegetvalue)r   r   Zbodyr   r"   Zcontent_typer   r   r   encode_multipart_formdata?   s     

r&   )N)Z
__future__r   r   codecsr   ior   Zpackagesr   Zpackages.sixr   r   r   lookupr!   r   r   r   r&   r   r   r   r   <module>   s   
