;ò
Fkø=c               sè   d  k  Z  d  k Z e i d ƒ Z h  d d f d <d d f d <d d	 f d
 <d d f d <d d f d <d d f d <d d f d <d d f d <d d f d <Z d Z d „  Z d „  Z d  Z d! Z	 d" „  Z
 d# „  Z d  S($   Ns   ii    s   Match words exactlys   exacti   s   Match prefixess   prefixi   s*   Match substring occurring anywhere in words	   substringi   s   Match suffixess   suffixi   s   Match using SOUNDEX algorithms   soundexi   s+   Match words within Levenshtein distance ones   levi   s    POSIX 1003.2 regular expressionss   rei   s   fnmatch-like (* ? as wildcards)s   fnmatchi   s   metaphone algorithms	   metaphones@   ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/c            s   d } d } x_ t d d d ƒ D]K } |  d | ?d d d @} | o | o q n d } | t | 7} q Wt | ƒ o | Sn	 t d Sd S(	   st   Takes as input an integer val and returns a string of it encoded
    with the base64 algorithm used by dict indexes.i    s    i   iÿÿÿÿi   i   i   N(   s
   startfounds   retvals   ranges   is   vals   thisparts   b64_lists   len(   s   vals   thisparts   is
   startfounds   retval(    (    s
   ./utils.pys
   b64_encode   s      c            s|   t  |  ƒ o d Sn d } d } xO t t  |  ƒ d d d ƒ D]1 } t i |  | ƒ } | | | >B} | d 7} q? W| Sd S(   sv   Takes as input a string and returns an integer value of it decoded
    with the base64 algorithm used by dict indexes.i    i   iÿÿÿÿi   N(	   s   lens   strs   retvals   shiftvals   ranges   is   b64_lists   indexs   val(   s   strs   shiftvals   vals   is   retval(    (    s
   ./utils.pys
   b64_decode)   s      s   
s   	c            s2   t  i |  d d ƒ }  t  i |  d t ƒ }  |  Sd  S(   Ns   
.s   
..s   
(   s   strings   replaces   ss   CRLF(   s   s(    (    s
   ./utils.pys   quote_reply9   s    c            sC   t  |  d d ƒ i ƒ  } t  | d d ƒ i ƒ  } t | | ƒ Sd  S(   Ni    s   utf-8(   s   unicodes   v1s   lowers   u1s   v2s   u2s   cmp(   s   v1s   v2s   u2s   u1(    (    s
   ./utils.pys   dict_compareA   s    (   s   strings   structs   calcsizes   INT_SIZEs
   strategiess   b64_lists
   b64_encodes
   b64_decodes   CRLFs   TABs   quote_replys   dict_compare(   s   quote_replys   strings   INT_SIZEs   b64_lists
   b64_decodes   CRLFs   TABs   dict_compares
   strategiess
   b64_encodes   struct(    (    s
   ./utils.pys   ?   s   			