-í
ç¶<c       s”   d  Z  d k Z d k Z d k Z e e e d „ Z d „  Z d „  Z d „  Z d d „ Z	 d „  Z
 d	 „  Z e i Z e i Z e e _ e e _ d S(
   s   An Python re-implementation of hierarchical module import.

This code is intended to be read, not executed.  However, it does work
-- all you need to do to enable it is "import knee".

(The name is a pun on the klunkier predecessor of this module, "ni".)

Nc    si   t  | ƒ } t | |  ƒ \ } } t | | ƒ } | o | Sn t
 | d ƒ o t | | ƒ n | Sd  S(   Ns   __path__(   s   determine_parents   globalss   parents   find_head_packages   names   qs   tails	   load_tails   ms   fromlists   hasattrs   ensure_fromlist(   s   names   globalss   localss   fromlists   parents   ms   tails   q(    (    s   /usr/lib/python2.2/knee.pys   import_hook s    c    s“   |  p |  i d ƒ o t Sn |  d } |  i d ƒ o t i | } | Sn d | j o. | i d ƒ } | |  } t i | } | Sn t Sd  S(   Ns   __name__s   __path__s   .(	   s   globalss   has_keys   Nones   pnames   syss   moduless   parents   rfinds   i(   s   globalss   pnames   parents   i(    (    s   /usr/lib/python2.2/knee.pys   determine_parent s    
 
 c    sÞ   d | j o+ | i d ƒ } | |  } | | d } n | } d } |  o d |  i | f } n | } t | | |  ƒ } | o | | f Sn |  o7 | } t
 }  t | | |  ƒ } | o | | f Sn n t d | ‚ d  S(   Ns   .i   s    s   %s.%ss   No module named (   s   names   finds   is   heads   tails   parents   __name__s   qnames   import_modules   qs   Nones   ImportError(   s   parents   names   qs   heads   is   tails   qname(    (    s   /usr/lib/python2.2/knee.pys   find_head_package( s&    
  c    s¥   |  } x” | oŒ | i d ƒ } | d j  o t | ƒ } n | |  | | d f \ } } d | i | f } t	 | | | ƒ } | o t
 d | ‚ n q	 W| Sd  S(   Ns   .i    i   s   %s.%ss   No module named (   s   qs   ms   tails   finds   is   lens   heads   __name__s   mnames   import_modules   ImportError(   s   qs   tails   is   mnames   ms   head(    (    s   /usr/lib/python2.2/knee.pys	   load_tail= s      i    c    sÈ   xÁ | D]¹ } | d j oF | o7 y |  i } Wn t j
 o n Xt |  | d ƒ n q n | d j o t |  | ƒ oB d |  i	 | f } t | | |  ƒ } | o t d | ‚ n n q Wd  S(   Ns   *i   s   %s.%ss   No module named (   s   fromlists   subs	   recursives   ms   __all__s   alls   AttributeErrors   ensure_fromlists   hasattrs   __name__s   subnames   import_modules   submods   ImportError(   s   ms   fromlists	   recursives   alls   submods   subnames   sub(    (    s   /usr/lib/python2.2/knee.pys   ensure_fromlistI s     c    sÀ   y t  i | SWn t j
 o n Xy) t i |  | o | i ƒ \ } } } Wn t j
 o t Sn Xz t i | | | | ƒ } Wd  | o | i ƒ  n X| o t | |  | ƒ n | Sd  S(   N(   s   syss   moduless   fqnames   KeyErrors   imps   find_modules   partnames   parents   __path__s   fps   pathnames   stuffs   ImportErrors   Nones   load_modules   ms   closes   setattr(   s   partnames   fqnames   parents   fps   ms   stuffs   pathname(    (    s   /usr/lib/python2.2/knee.pys   import_moduleZ s"    	 	  c    sl   |  i } d | j o t | | t ƒ Sn | i d ƒ } | |  } t i	 | } t | | d | | ƒ Sd  S(   Ns   .i   (   s   modules   __name__s   names   import_modules   Nones   rfinds   is   pnames   syss   moduless   parent(   s   modules   pnames   names   parents   i(    (    s   /usr/lib/python2.2/knee.pys   reload_hookn s    	
(   s   __doc__s   syss   imps   __builtin__s   Nones   import_hooks   determine_parents   find_head_packages	   load_tails   ensure_fromlists   import_modules   reload_hooks
   __import__s   original_imports   reloads   original_reload(   s   import_hooks   original_imports   reload_hooks   find_head_packages   __builtin__s   syss   imps   determine_parents	   load_tails   original_reloads   ensure_fromlists   import_module(    (    s   /usr/lib/python2.2/knee.pys   ? s   
								