ó
\¬L\c           @` sn  d  d l  m Z m Z m Z m Z d  d l Z d  d l Z e j d  d k Z e j d  d k a	 e j
 j d ƒ a y d  d l m Z Wn! e k
 r© d  d l m Z n Xe rÌ d  d l m Z e ƒ  Z n= e j d d	 k  rý d  d l Z e j j ƒ  Z n d  d l Z t	 re Z e Z n e Z e Z e Z t	 r]d
 „  Z d „  Z d „  Z d „  Z  n$ d „  Z d „  Z d „  Z d „  Z  t	 r®d „  Z! d „  Z" d „  Z# d „  Z$ n0 d  d l% Z% e% j Z! e% j& Z" e% j' Z# e% j( Z$ d  d l) Z) d „  Z* d d „ Z+ d d „ Z, e- d „  e d ƒ Dƒ ƒ Z. e- d ƒ Z/ e. e/ Z0 d „  Z1 d „  Z2 d „  Z3 d  „  Z4 d! „  Z5 d S("   i    (   t   unicode_literalst   divisiont   absolute_importt   print_functionNi   i   u   win(   t   unquote(   t
   HTMLParseri   i   c         C` s   t  |  g ƒ S(   N(   t   bytes(   t   s(    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyt   bchrm   s    c         C` s*   t  |  t ƒ r t |  d ƒ St |  ƒ Sd  S(   Nu   latin-1(   t
   isinstancet   strR   (   R   (    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyt   bstrp   s    c         C` s   |  S(   N(    (   R   (    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyt   bordv   s    c         C` s   t  |  g ƒ S(   N(   R   (   R   (    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyt   bchary   s    c         C` s
   t  |  ƒ S(   N(   t   chr(   R   (    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyR   }   s    c         C` s
   t  |  ƒ S(   N(   R
   (   R   (    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyR   €   s    c         C` s
   t  |  ƒ S(   N(   t   ord(   R   (    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyR   ƒ   s    c         C` s   |  S(   N(    (   R   (    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyR   †   s    c          O` s   t  t |  | Ž  ƒ S(   N(   t   listt   range(   t   argst   kwargs(    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyt   lrange‹   s    c          O` s   t  t |  | Ž  ƒ S(   N(   R   t   zip(   R   R   (    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyt   lzipŽ   s    c          O` s   t  t |  | Ž  ƒ S(   N(   R   t   map(   R   R   (    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyt   lmap‘   s    c          O` s   t  t |  | Ž  ƒ S(   N(   R   t   filter(   R   R   (    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyt   lfilter”   s    c         C` s   t  j |  ƒ j d ƒ S(   Nu   ascii(   t   binasciit   hexlifyt   decode(   t   bdata(    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyR   ¡   s    u   utf-8c         C` sR   |  d  k r d  St |  t ƒ r, |  j d ƒ S| d k rN |  j | ƒ j d ƒ S|  S(   Nu   utf-8(   t   NoneR	   t	   text_typet   encodeR   (   t   pt   enc(    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyt   utf8_str¯   s    c         C` s0   |  d  k r d  St |  t ƒ r# |  S|  j | ƒ S(   N(   R   R	   R    R   (   R"   R#   (    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyt   unicode_str¹   s
    c         c` s   |  ] } t  | ƒ Vq d  S(   N(   R   (   t   .0t   x(    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pys	   <genexpr>À   s    i€   uD   ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789#_.-/~c         C` sq   t  |  t ƒ r! |  j d ƒ }  n  g  } x: |  D]2 } | t k rS d t | ƒ } n  | j | ƒ q. Wd j | ƒ S(   Nu   utf-8u   %%%02xu    (   R	   t   binary_typeR   t
   IRI_UNSAFER   t   appendt   join(   t   hreft   resultt   char(    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyt   quoteurlÇ   s    c         C` s1   t  |  t ƒ r! |  j d ƒ }  n  t |  ƒ }  |  S(   Nu   utf-8(   R	   R(   R   R   (   R,   (    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyt
   unquoteurlÒ   s    c         C` s   t  j |  ƒ S(   N(   t   _ht   unescape(   t   sval(    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyt
   unescapeitÙ   s    c          C` s¬  t  r t j St rd d l m }  m } m } m } m	 } d d l
 m } m } | j j } g  | _ | | _ | j j } | |  | ƒ g | _ |  | ƒ | _ | ƒ  }	 | d ƒ }
 | |	 | |
 ƒ ƒ } |
 j d k r|
 j t t j ƒ } g  t | |
 j ƒ D] } | | ^ qSd  Sg  } t j j } | d  k rFt j ƒ  } n  | d  k r[d } n  xF t j D]; } t | t ƒ rŠ| j | ƒ qe| j | j | ƒ ƒ qeW| Sd  S(   Ni    (   t   POINTERt   byreft   cdllt   c_intt   windll(   t   LPCWSTRt   LPWSTRu   utf-8(   t   PY3t   syst   argvt	   iswindowst   ctypesR5   R6   R7   R8   R9   t   ctypes.wintypesR:   R;   t   kernel32t   GetCommandLineWt   argtypest   restypet   shell32t   CommandLineToArgvWt   valuet   lenR   R   t   stdint   encodingt   getfilesystemencodingR	   R    R*   R   (   R5   R6   R7   R8   R9   R:   R;   RC   RG   t   cmdt   argcR>   t   startt   it   argvencodingt   arg(    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyt   unicode_argvà   s<    (			$	c           C` sB   t  r> y t j d ƒ Wq> t k
 r: t j d „  ƒ q> Xn  d  S(   Nu   cp65001c         S` s   |  d k r t  j d ƒ p d  S(   Nu   cp65001u   utf-8(   t   codecst   lookupR   (   t   name(    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyt   <lambda>  t    (   t   PY2RT   RU   t   LookupErrort   register(    (    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyt   add_cp65001_codec  s    (6   t
   __future__R    R   R   R   R=   RT   t   version_infoRY   R<   t   platformt
   startswithR?   t   urllib.parseR   t   ImportErrort   urllibR   R1   t   html.parsert   htmlt   parserR
   R    R   R(   t   xrangeR   t   unicodeR   R   R   R   R   R   R   R   t   __builtin__R   R   R   R   R   R$   R%   t   sett   ASCII_CHARSt   URL_SAFER)   R/   R0   R4   RS   R\   (    (    (    sB   /home/sid/Downloads/KindleUnpack-master/lib/compatibility_utils.pyt   <module>   sj   "	*															

				/