£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>

fZ  c               @   s  d  Z  d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l Z d d l	 Z	 e
 e j j d  g  Z e
 e j j d  g  Z e
 e j j d  g  Z e
 e j j d  g  Z e e g Z e
 e j g  Z i  Z d d   Z i  Z d	 d
   Z Gd d   d  Z Gd d   d  Z d d   Z e d k ry e   Z Wn e k
 r}e d  Yn Xn  d S(   u3   Find modules used by a script, using introspection.i    Nu
   LOAD_CONSTu   IMPORT_NAMEu
   STORE_NAMEu   STORE_GLOBALc             C   s   t  j |  g   j |  d  S(   N(   u   packagePathMapu
   setdefaultu   append(   u   packagenameu   path(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   AddPackagePath   s    u   AddPackagePathc             C   s   | t  |  <d  S(   N(   u   replacePackageMap(   u   oldnameu   newname(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   ReplacePackage(   s    u   ReplacePackagec             B   s2   |  Ee  Z d  Z d d d d  Z d d   Z d S(   u   Modulec             C   s:   | |  _  | |  _ | |  _ d  |  _ i  |  _ i  |  _ d  S(   N(   u   __name__u   __file__u   __path__u   Noneu   __code__u   globalnamesu   starimports(   u   selfu   nameu   fileu   path(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   __init__.   s    					u   Module.__init__c             C   sj   d |  j  f } |  j d  k	 r6 | d |  j f } n  |  j d  k	 r\ | d |  j f } n  | d } | S(   Nu	   Module(%ru   , %ru   )(   u   __name__u   __file__u   Noneu   __path__(   u   selfu   s(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   __repr__;   s    
u   Module.__repr__N(   u   __name__u
   __module__u   __qualname__u   Noneu   __init__u   __repr__(   u
   __locals__(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   Module,   s   u   Modulec             B   sg  |  Ee  Z d  Z d5 d g  g  d d  Z d d   Z d d   Z d d	   Z d
 d   Z d d   Z	 d5 d5 d6 d d  Z
 d7 d d  Z d d   Z d d   Z d d d  Z d d   Z d d   Z d d   Z d d    Z d8 d! d"  Z e j d# d$  Z d% d&   Z d' d(   Z d) d*   Z d5 d+ d,  Z d- d.   Z d/ d0   Z d1 d2   Z d3 d4   Z d5 S(9   u   ModuleFinderi    c             C   sd   | d  k r t j } n  | |  _ i  |  _ i  |  _ | |  _ d |  _ | |  _ | |  _ g  |  _	 d  S(   Ni    (
   u   Noneu   sysu   pathu   modulesu
   badmodulesu   debugu   indentu   excludesu   replace_pathsu   processed_paths(   u   selfu   pathu   debugu   excludesu   replace_paths(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   __init__F   s    							u   ModuleFinder.__init__c             G   s~   | |  j  k rz x' t |  j  D] } t d d d q Wt | d d x$ | D] } t t |  d d qP Wt   n  d  S(   Nu      u   endu    (   u   debugu   rangeu   indentu   printu   repr(   u   selfu   levelu   stru   argsu   iu   arg(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   msgR   s    u   ModuleFinder.msgc             G   s=   | d } | |  j  k r9 |  j d |  _ |  j |   n  d  S(   Ni    i   (   u   debugu   indentu   msg(   u   selfu   argsu   level(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   msgin[   s    
u   ModuleFinder.msginc             G   s=   | d } | |  j  k r9 |  j d |  _ |  j |   n  d  S(   Ni    i   (   u   debugu   indentu   msg(   u   selfu   argsu   level(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   msgouta   s    
u   ModuleFinder.msgoutc             C   sT   |  j  d d |  t |  / } d d t j f } |  j d | | |  Wd  QXd  S(   Ni   u
   run_scriptu    u   ru   __main__(   u   msgu   openu   impu	   PY_SOURCEu   load_module(   u   selfu   pathnameu   fpu   stuff(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu
   run_scriptg   s    u   ModuleFinder.run_scriptc             C   sq   t  j j |  \ } } t  j j |  \ } } t |  / } | d t j f } |  j | | | |  Wd  QXd  S(   Nu   r(   u   osu   pathu   splitu   splitextu   openu   impu	   PY_SOURCEu   load_module(   u   selfu   pathnameu   diru   nameu   extu   fpu   stuff(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu	   load_filem   s
    u   ModuleFinder.load_filei   c       	      C   s   |  j  d d | | | |  |  j | d | } |  j | |  \ } } |  j | |  } | se | S| j r |  j | |  n  d  S(   Ni   u   import_hooku   level(   u   msgu   determine_parentu   find_head_packageu	   load_tailu   __path__u   ensure_fromlistu   None(	   u   selfu   nameu   calleru   fromlistu   levelu   parentu   qu   tailu   m(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   import_hookt   s    	u   ModuleFinder.import_hookc             C   s  |  j  d d | |  | s) | d k r= |  j d d  d  S| j } | d k r| j rh | d 8} n  | d k r |  j | } | | k s t  |  j d d |  | S| j d  | k  r t d   n  d j	 | j
 d  d  |   } |  j | } |  j d d |  | S| j rT|  j | } | | k s=t  |  j d d |  | Sd | k r| j d  } | d  |  } |  j | } | j | k st  |  j d d |  | S|  j d d  d  S(	   Ni   u   determine_parenti    u   determine_parent -> Nonei   u   determine_parent ->u   .u   relative importpath too deep(   u   msginu   msgoutu   Noneu   __name__u   __path__u   modulesu   AssertionErroru   countu   ImportErroru   joinu   splitu   rfind(   u   selfu   calleru   levelu   pnameu   parentu   i(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   determine_parent   sB    		#	u   ModuleFinder.determine_parentc             C   s>  |  j  d d | |  d | k rX | j d  } | d  |  } | | d d   } n | } d } | r d | j | f } n | } |  j | | |  } | r |  j d d | | f  | | f S| r| } d  } |  j | | |  } | r|  j d d | | f  | | f Sn  |  j d d |  t d	 |   d  S(
   Ni   u   find_head_packageu   .i   u    u   %s.%su   find_head_package ->u"   raise ImportError: No module namedu   No module named (   u   msginu   findu   __name__u   import_moduleu   msgoutu   Noneu   ImportError(   u   selfu   parentu   nameu   iu   headu   tailu   qnameu   q(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   find_head_package   s.    
u   ModuleFinder.find_head_packagec             C   s   |  j  d d | |  | } x | r | j d  } | d k  rO t |  } n  | d  |  | | d d   } } d | j | f } |  j | | |  } | s |  j d d |  t d |   q q W|  j d d	 |  | S(
   Ni   u	   load_tailu   .i    i   u   %s.%su"   raise ImportError: No module namedu   No module named u   load_tail ->(   u   msginu   findu   lenu   __name__u   import_moduleu   msgoutu   ImportError(   u   selfu   qu   tailu   mu   iu   headu   mname(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu	   load_tail   s    	 %u   ModuleFinder.load_tailc             C   s   |  j  d d | | |  x | D] } | d k ri | s |  j |  } | rf |  j | | d  qf q q  t | |  s  d | j | f } |  j | | |  } | s t d |   q q  q  Wd  S(   Ni   u   ensure_fromlistu   *i   u   %s.%su   No module named (   u   msgu   find_all_submodulesu   ensure_fromlistu   hasattru   __name__u   import_moduleu   ImportError(   u   selfu   mu   fromlistu	   recursiveu   subu   allu   subnameu   submod(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   ensure_fromlist   s    u   ModuleFinder.ensure_fromlistc       
      C   sE  | j  s d  Si  } g  } | t j j d  d   7} | t j j d  d   7} | t j j d  d   7} x | j  D] } y t j |  } Wn+ t j k
 r |  j	 d d |  wq Yn Xx| | D]t } d  } xF | D]> } t |  }	 | |	 d   | k r | d  |	  } Pq q W| r | d k r | | | <q q Wqq W| j   S(   Ni   u   can't list directoryu   __init__(   u   __path__u	   importlibu	   machineryu   EXTENSION_SUFFIXESu   SOURCE_SUFFIXESu   BYTECODE_SUFFIXESu   osu   listdiru   erroru   msgu   Noneu   lenu   keys(
   u   selfu   mu   modulesu   suffixesu   diru   namesu   nameu   modu   suffu   n(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   find_all_submodules   s.    	u    ModuleFinder.find_all_submodulesc             C   s\  |  j  d d | | |  y |  j | } Wn t k
 r> Yn X|  j d d |  | S| |  j k ry |  j d d  d  S| r | j d  k r |  j d d  d  Sy+ |  j | | o | j |  \ } } } Wn) t k
 r |  j d d d   d  SYn Xz |  j	 | | | |  } Wd  | r+| j
   n  X| rEt | | |  n  |  j d d |  | S(   Ni   u   import_moduleu   import_module ->u   import_module -> None(   u   msginu   modulesu   KeyErroru   msgoutu
   badmodulesu   Noneu   __path__u   find_moduleu   ImportErroru   load_moduleu   closeu   setattr(   u   selfu   partnameu   fqnameu   parentu   mu   fpu   pathnameu   stuff(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   import_module   s6    	"	u   ModuleFinder.import_modulec       
      C   su  | \ } } } |  j  d d | | o' d |  | t j k rf |  j | |  } |  j d d |  | S| t j k r t | j   d | d  }	 nu | t j k r| j d  t j	   k r |  j d d |  t
 d	 |   n  | j d
  t j |  }	 n d  }	 |  j |  } | | _ |	 r^|  j rB|  j |	  }	 n  |	 | _ |  j |	 |  n  |  j d d |  | S(   Ni   u   load_moduleu   fpu   load_module ->u   
u   execi   u#   raise ImportError: Bad magic numberu   Bad magic number in %si   (   u   msginu   impu   PKG_DIRECTORYu   load_packageu   msgoutu	   PY_SOURCEu   compileu   readu   PY_COMPILEDu	   get_magicu   ImportErroru   marshalu   loadu   Noneu
   add_moduleu   __file__u   replace_pathsu   replace_paths_in_codeu   __code__u	   scan_code(
   u   selfu   fqnameu   fpu   pathnameu	   file_infou   suffixu   modeu   typeu   mu   co(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   load_module  s0    			u   ModuleFinder.load_modulec             C   sQ   | |  j  k r i  |  j  | <n  | r< d |  j  | | j <n d |  j  | d <d  S(   Ni   u   -(   u
   badmodulesu   __name__(   u   selfu   nameu   caller(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   _add_badmodule0  s
    u   ModuleFinder._add_badmodulec             C   sP  | |  j  k r# |  j | |  d  Sy |  j | | d | WnN t k
 r } z. |  j d d t |   |  j | |  WYd  d  } ~ Xn X| rLx | D] } | |  j  k r |  j | |  q n  y  |  j | | | g d | Wq t k
 rD} z< |  j d d t |   | d | } |  j | |  WYd  d  } ~ Xq Xq Wn  d  S(   Nu   leveli   u   ImportError:u   .(   u
   badmodulesu   _add_badmoduleu   import_hooku   ImportErroru   msgu   str(   u   selfu   nameu   calleru   fromlistu   levelu   msgu   subu   fullname(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   _safe_import_hook8  s&    # u   ModuleFinder._safe_import_hookc             c   sk  | j  } | j } | j } t t t } x;| rft | d g  } | t k r | d | d d   \ } d | | f f V| d d   } q, n  | d  d d  | k r4| d | d  d   \ }	 }
 } | |	 } | d k rd | |
 | | f f Vn d	 | | |
 | | f f V| d d   } q, n  | t k rS| d d   } q, | d d   } q, Wd  S(
   Ni    u   <Hi   i   u   storei	   u   <xHxHxHu   absolute_importu   relative_import(   u   co_codeu   co_namesu	   co_constsu
   LOAD_CONSTu   IMPORT_NAMEu   bytesu	   STORE_OPSu   HAVE_ARGUMENT(   u   selfu   cou   unpacku   codeu   namesu   constsu   LOAD_LOAD_AND_IMPORTu   cu   opargu   oparg_1u   oparg_2u   oparg_3u   level(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   scan_opcodes_25O  s,    				"
u   ModuleFinder.scan_opcodes_25c             C   s<  | j  } |  j } x| |  D]\ } } | d k rP | \ } d | j | <q | d k r{| \ } } d }	 | d  k	 r d | k r d }	 n  d d   | D } n  |  j | | | d d |	 rd  }
 | j r |  j j | j d	 |  }
 n  |
 d  k r|  j j |  }
 n  |
 d  k	 rh| j j	 |
 j  | j
 j	 |
 j
  |
 j d  k rud | j
 | <quqxd | j
 | <qq | d
 k r| \ } } } | r|  j | | | d | q|  j | d | } |  j | j d  | d d q t |   q Wx9 | j D]. } t | t |   r|  j | |  qqWd  S(   Nu   storei   u   absolute_importi    u   *c             S   s"   g  |  ] } | d  k r |  q S(   u   *(    (   u   .0u   f(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu
   <listcomp>y  s   	 u*   ModuleFinder.scan_code.<locals>.<listcomp>u   levelu   .u   relative_import(   u   co_codeu   scan_opcodes_25u   globalnamesu   Noneu   _safe_import_hooku   __path__u   modulesu   getu   __name__u   updateu   starimportsu   __code__u   determine_parentu   RuntimeErroru	   co_constsu
   isinstanceu   typeu	   scan_code(   u   selfu   cou   mu   codeu   scanneru   whatu   argsu   nameu   fromlistu	   have_staru   mmu   levelu   parentu   c(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu	   scan_codel  sH    					 u   ModuleFinder.scan_codec             C   s   |  j  d d | |  t j |  } | r4 | } n  |  j |  } | | _ | g | _ | j t j | g   | _ |  j d | j  \ } } } z1 |  j | | | |  |  j	 d d |  | SWd  | r | j
   n  Xd  S(   Ni   u   load_packageu   __init__u   load_package ->(   u   msginu   replacePackageMapu   getu
   add_moduleu   __file__u   __path__u   packagePathMapu   find_moduleu   load_moduleu   msgoutu   close(   u   selfu   fqnameu   pathnameu   newnameu   mu   fpu   bufu   stuff(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   load_package  s    		u   ModuleFinder.load_packagec             C   s5   | |  j  k r |  j  | St |  |  j  | <} | S(   N(   u   modulesu   Module(   u   selfu   fqnameu   m(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu
   add_module  s    u   ModuleFinder.add_modulec             C   s   | d  k	 r  | j d | } n | } | |  j k rW |  j d d |  t |   n  | d  k r | t j k r d  d  d d t j f f S|  j	 } n  t j
 | |  S(   Nu   .i   u   find_module -> Excludedu    (   u   Noneu   __name__u   excludesu   msgoutu   ImportErroru   sysu   builtin_module_namesu   impu	   C_BUILTINu   pathu   find_module(   u   selfu   nameu   pathu   parentu   fullname(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   find_module  s    u   ModuleFinder.find_modulec             C   s  t    t  d d  t  d d  t |  j j    } xa | D]Y } |  j | } | j rn t  d d d n t  d d d t  d	 | | j p d
  q? W|  j   \ } } | rt    t  d  xF | D]; } t |  j | j    } t  d | d d j |   q Wn  | r~t    t  d d d t  d  xF | D]; } t |  j | j    } t  d | d d j |   q<Wn  d S(   u   Print a report to stdout, listing the found modules with their
        paths, as well as modules that are missing, or seem to be missing.
        u
     %-25s %su   Nameu   Fileu   ----u   Pu   endu    u   mu   %-25su    u   Missing modules:u   ?u   imported fromu   , u7   Submodules that appear to be missing, but could also beu#   global names in the parent package:N(   u   Nameu   File(   u   ----u   ----(	   u   printu   sortedu   modulesu   keysu   __path__u   __file__u   any_missing_maybeu
   badmodulesu   join(   u   selfu   keysu   keyu   mu   missingu   maybeu   nameu   mods(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   report  s0    	
#
u   ModuleFinder.reportc             C   s   |  j    \ } } | | S(   u   Return a list of modules that appear to be missing. Use
        any_missing_maybe() if you want to know which modules are
        certain to be missing, and which *may* be missing.
        (   u   any_missing_maybe(   u   selfu   missingu   maybe(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   any_missing  s    u   ModuleFinder.any_missingc             C   s.  g  } g  } x|  j  D] } | |  j k r1 q n  | j d  } | d k  r_ | j |  q n  | | d d  } | d |  } |  j j |  } | d k	 r | |  j  | k r | j |  q| | j k r q| j r | j |  q| j |  q | j |  q W| j	   | j	   | | f S(   u  Return two lists, one with modules that are certainly missing
        and one with modules that *may* be missing. The latter names could
        either be submodules *or* just global names in the package.

        The reason it can't always be determined is that it's impossible to
        tell which names are imported when "from module import *" is done
        with an extension module, short of actually importing it.
        u   .i    i   N(
   u
   badmodulesu   excludesu   rfindu   appendu   modulesu   getu   Noneu   globalnamesu   starimportsu   sort(   u   selfu   missingu   maybeu   nameu   iu   subnameu   pkgnameu   pkg(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   any_missing_maybe  s0    		

u   ModuleFinder.any_missing_maybec             C   s  t  j j | j  } } xD |  j D]9 \ } } | j |  r# | | t |  d   } Pq# q# W|  j r | |  j k r | | k r |  j	 d d | | f  n |  j	 d d | f  |  j j
 |  n  t | j  } xM t t |   D]9 } t | | t |   r |  j | |  | | <q q Wt j | j | j | j | j | j t |  | j | j | | j | j | j | j | j  S(   Ni   u   co_filename %r changed to %ru    co_filename %r remains unchanged(    u   osu   pathu   normpathu   co_filenameu   replace_pathsu
   startswithu   lenu   debugu   processed_pathsu   msgoutu   appendu   listu	   co_constsu   rangeu
   isinstanceu   typeu   replace_paths_in_codeu   typesu   CodeTypeu   co_argcountu
   co_nlocalsu   co_stacksizeu   co_flagsu   co_codeu   tupleu   co_namesu   co_varnamesu   co_nameu   co_firstlinenou	   co_lnotabu   co_freevarsu   co_cellvars(   u   selfu   cou   new_filenameu   original_filenameu   fu   ru   constsu   i(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   replace_paths_in_code!  s*    u"   ModuleFinder.replace_paths_in_codeNiii(   u   __name__u
   __module__u   __qualname__u   Noneu   __init__u   msgu   msginu   msgoutu
   run_scriptu	   load_fileu   import_hooku   determine_parentu   find_head_packageu	   load_tailu   ensure_fromlistu   find_all_submodulesu   import_moduleu   load_moduleu   _add_badmoduleu   _safe_import_hooku   structu   unpacku   scan_opcodes_25u	   scan_codeu   load_packageu
   add_moduleu   find_moduleu   reportu   any_missingu   any_missing_maybeu   replace_paths_in_code(   u
   __locals__(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   ModuleFinderD   s2   	#1".u   ModuleFinderc              C   sf  d d  l  }  y) |  j  t j d d   d  \ } } Wn6 |  j k
 rm } z t |  d  SWYd  d  } ~ Xn Xd } d } g  } g  } x | D] \ } }	 | d k r | d } n  | d k r d } n  | d k r | |	 j t j  } n  | d k rd } n  | d k r | j |	  q q W| s0d	 }
 n
 | d }
 t j	 d  d   } t j	 j
 |
  | d <| | } | d k rt d
  x$ | D] } t d t |   qWn  t | | |  } x | d d   D]z } | d k rd } qn  | r:| d d   d k r*| j | d  d  d  d g  qG| j |  q| j |  qW| j |
  | j   | S(   Ni    i   u   dmp:qx:u   -du   -mu   -pu   -qu   -xu   hello.pyu   path:u      i   u   .*u   *ii(   u   getoptu   sysu   argvu   erroru   printu   splitu   osu   pathsepu   appendu   pathu   dirnameu   repru   ModuleFinderu   import_hooku   Noneu	   load_fileu
   run_scriptu   report(   u   getoptu   optsu   argsu   msgu   debugu   domodsu   addpathu   excludeu   ou   au   scriptu   pathu   itemu   mfu   arg(    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   test=  sX    )
			


#
u   testu   __main__u   
[interrupted](   u   __doc__u   disu   impu   importlib.machineryu	   importlibu   marshalu   osu   sysu   typesu   structu   bytesu   opnameu   indexu
   LOAD_CONSTu   IMPORT_NAMEu
   STORE_NAMEu   STORE_GLOBALu	   STORE_OPSu   HAVE_ARGUMENTu   packagePathMapu   AddPackagePathu   replacePackageMapu   ReplacePackageu   Moduleu   ModuleFinderu   testu   __name__u   mfu   KeyboardInterruptu   print(    (    (    u1   /opt/alt/python33/lib64/python3.3/modulefinder.pyu   <module>   s6    ;