ó
^†êWc           @   sš   d  d l  Z  d  d l Z d  d l Z e  j d f e  j d f e  j d f e  j d f e  j d f e  j d f e  j	 d f g Z
 e j d	 ƒ Z d
 „  Z d S(   iÿÿÿÿNt   utf8t   utf16s   utf16-bes   utf16-let   utf32s   utf32-bes   utf32-les   coding[:=]\s*([-\w.]+)c         C   sÂ   x: t  D]2 \ } } |  j | ƒ r |  t | ƒ j | ƒ Sq Wxl |  j d ƒ d  D]W } | d d !d k rQ t j | ƒ rQ t j | ƒ j ƒ  d j d ƒ } |  j | ƒ SqQ W|  j t j	 t
 ƒ ƒ S(   sŠ   Check a bytes string for a BOM to correctly detect the encoding

    Fallback to locale.getpreferredencoding(False) like open() on Python3s   
i   i    i   t   #t   ascii(   t   BOMSt
   startswitht   lent   decodet   splitt   ENCODING_REt   searcht   groupst   localet   getpreferredencodingt   False(   t   datat   bomt   encodingt   line(    (    sc   /private/var/folders/3n/6h2rwf155rn1m71wwyxn79n80000gn/T/pip-build-IcAT_k/pip/pip/utils/encoding.pyt   auto_decode   s    ""(   t   codecsR   t   ret   BOM_UTF8t	   BOM_UTF16t   BOM_UTF16_BEt   BOM_UTF16_LEt	   BOM_UTF32t   BOM_UTF32_BEt   BOM_UTF32_LER   t   compileR
   R   (    (    (    sc   /private/var/folders/3n/6h2rwf155rn1m71wwyxn79n80000gn/T/pip-build-IcAT_k/pip/pip/utils/encoding.pyt   <module>   s   