ó
	Q[c           @` sŅ   d  Z  d d l m Z d d l m Z d d l m Z d d l m Z d d d d	 g Z y d d
 l m	 Z
 Wn! e k
 r d d l m Z
 n Xd d l m Z d   Z d   Z d   Z d   Z d   Z d S(   u    Encodings and related functions.i    (   t   unicode_literals(   t   division(   t   absolute_import(   t   stru   encode_7or8bitu   encode_base64u   encode_noopu   encode_quopri(   t   encodebytes(   t   encodestringc         C` s"   t  |  d t } | j d d  S(   Nt	   quotetabsu    u   =20(   t   _encodestringt   Truet   replace(   t   st   enc(    (    s>   lib/python2.7/site-packages/future/backports/email/encoders.pyt   _qencode   s    c         C` s<   |  j    } t t |  d  } |  j |  d |  d <d S(   ul   Encode the message's payload in Base64.

    Also, add an appropriate Content-Transfer-Encoding header.
    u   asciiu   base64u   Content-Transfer-EncodingN(   t   get_payloadR   t   _bencodet   set_payload(   t   msgt   origt   encdata(    (    s>   lib/python2.7/site-packages/future/backports/email/encoders.pyt   encode_base64!   s    c         C` s3   |  j    } t |  } |  j |  d |  d <d S(   uv   Encode the message's payload in quoted-printable.

    Also, add an appropriate Content-Transfer-Encoding header.
    u   quoted-printableu   Content-Transfer-EncodingN(   R   R   R   (   R   R   R   (    (    s>   lib/python2.7/site-packages/future/backports/email/encoders.pyt   encode_quopri,   s    c         C` sð   |  j    } | d k r& d |  d <d Sy0 t | t  rH | j d  n | j d  Wn^ t k
 rķ |  j   } | o~ | j } | rĐ | j	   j
 d  rĐ d |  d <qÁ d |  d <n Xd |  d <t | t  sė |  j | j d d   n  d S(   u9   Set the Content-Transfer-Encoding header to 7bit or 8bit.u   7bitu   Content-Transfer-EncodingNu   asciiu	   iso-2022-u   8bitu   surrogateescape(   R   t   Nonet
   isinstanceR   t   encodet   decodet   UnicodeErrort   get_charsett   output_charsett   lowert
   startswithR   (   R   R   t   charsett   output_cset(    (    s>   lib/python2.7/site-packages/future/backports/email/encoders.pyt   encode_7or8bit7   s"    

c         C` s;   |  j    } t | t  s7 |  j | j d d   n  d S(   u   Do nothing.u   asciiu   surrogateescapeN(   R   R   R   R   R   (   R   R   (    (    s>   lib/python2.7/site-packages/future/backports/email/encoders.pyt   encode_noopS   s    N(   t   __doc__t
   __future__R    R   R   t   future.builtinsR   t   __all__t   base64R   R   t   ImportErrorR   t   quopriR   R   R   R   R    R!   (    (    (    s>   lib/python2.7/site-packages/future/backports/email/encoders.pyt   <module>   s$   					