ÿØÿà JFIF      ÿÛ „ 	 ( %!1!%)+//.383,7(-.+



-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ               ÿÄ J  	     ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ              ÿÄ *        !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍÑ¶¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
..............................................................................................................................................................................
.............................................................................                                                  
                                                                                                                                                                                     ÿØÿà JFIF      ÿÛ „ 	 ( %!1!%)+//.383,7(-.+



-%%-////---/-.+/--+------/------/--0+--/-/-----.-----ÿÀ  ¥2" ÿÄ               ÿÄ J  	     ! 1AQ"aq2‘#BR‚¡ÁÑ3br’¢±Âð$CSƒ²á4c“%DsÓñÿÄ              ÿÄ *        !1AQa‘"2q3±ð#b¡ÿÚ   ? ¼QxJQaÍuò¸Zö Úü8,ÐÚú
"SSn<rçù–´âE—^ªBÖ9À\†¸ÔÁT­ÃÛ5
ëd´³Í#Ý;Þ38œî ¶H£M:wÎ3…³…âpÔF&‚FK¸9„â4àGEõªfÿ ‘ñ(ßw­pŽF|È¥ù®häðÍÑ¶¹‘[ÒinÙW¶ùñY˜Q{›K"išÒ[Ú8žë\F¹@-?v"ÔU”,ìöžkÿ {I‡£šÍ?e
ríV
..............................................................................................................................................................................
.............................................................................                                                  
                                                                                                                                                                                     
fc           @   s  d  Z  d d l m Z d d l m Z m Z d d l m Z d d l m	 Z	 d d l
 Z
 d d l Z d d l Z d d l Z d d l Z d d l m Z d d l m Z m Z m Z d d	 l m Z d d
 l m Z d d l m Z y# d d l m Z m Z d   Z Wn0 e k
 r9d d l m  Z  m Z d   Z n Xd   Z! d   Z" d   Z# d e f d     YZ$ e% j& d j'    Z( d   Z) d   Z* d   Z+ i d e, 6d e- 6Z. d   Z/ d   Z0 d   Z1 d d d  d! g Z2 d" d" e, d# d$  Z3 d S(%   s6   setuptools.command.bdist_egg

Build .egg distributionsi(   t   DistutilsSetupError(   t   remove_treet   mkpath(   t   log(   t   CodeTypeN(   t   six(   t   get_build_platformt   Distributiont   ensure_directory(   t
   EntryPoint(   t   Library(   t   Command(   t   get_patht   get_python_versionc           C   s
   t  d  S(   Nt   purelib(   R   (    (    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyt   _get_purelib   s    (   t   get_python_libR   c           C   s
   t  t  S(   N(   R   t   False(    (    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyR      s    c         C   sE   d |  k r% t  j j |   d }  n  |  j d  rA |  d  }  n  |  S(   Nt   .i    t   modulei(   t   ost   patht   splitextt   endswith(   t   filename(    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyt   strip_module#   s
    c         c   sI   xB t  j |   D]1 \ } } } | j   | j   | | | f Vq Wd S(   sb   Do os.walk in a reproducible way,
    independent of indeterministic filesystem readdir order
    N(   R   t   walkt   sort(   t   dirt   baset   dirst   files(    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyt   sorted_walk+   s    

c         C   sB   t  j d  j   } t | d   } | j | |   Wd  QXd  S(   NsR  
        def __bootstrap__():
            global __bootstrap__, __loader__, __file__
            import sys, pkg_resources, imp
            __file__ = pkg_resources.resource_filename(__name__, %r)
            __loader__ = None; del __bootstrap__, __loader__
            imp.load_dynamic(__name__,__file__)
        __bootstrap__()
        t   w(   t   textwrapt   dedentt   lstript   opent   write(   t   resourcet   pyfilet   _stub_templatet   f(    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyt
   write_stub5   s    t	   bdist_eggc           B   s   e  Z d  Z d d d d e   f d d	 d
 d d f d  d! g Z d	 d d g Z d   Z d   Z d   Z	 d   Z
 d   Z d   Z d   Z d   Z d   Z d   Z d   Z RS("   s   create an "egg" distributions
   bdist-dir=t   bs1   temporary directory for creating the distributions
   plat-name=t   ps;   platform name to embed in generated filenames (default: %s)s   exclude-source-filess+   remove all .py files from the generated eggs	   keep-tempt   ks/   keep the pseudo-installation tree around after s!   creating the distribution archives	   dist-dir=t   ds-   directory to put final built distributions ins
   skip-builds2   skip rebuilding everything (for testing/debugging)c         C   sC   d  |  _ d  |  _ d |  _ d  |  _ d |  _ d  |  _ d  |  _ d  S(   Ni    (   t   Nonet	   bdist_dirt	   plat_namet	   keep_tempt   dist_dirt
   skip_buildt
   egg_outputt   exclude_source_files(   t   self(    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyt   initialize_optionsZ   s    						c         C   s   |  j  d  } |  _ | j |  _ |  j d  k r^ |  j  d  j } t j j | d  |  _ n  |  j	 d  k r| t
   |  _	 n  |  j d d  |  j d  k r t d  d  | j | j t   |  j j   o |  j	  j   } t j j |  j | d  |  _ n  d  S(   Nt   egg_infot   bdistt   eggR5   s   .egg(   R5   R5   (   t   get_finalized_commandt   ei_cmdR;   R2   R1   t
   bdist_baseR   R   t   joinR3   R   t   set_undefined_optionsR7   R   t   egg_namet   egg_versionR   t   distributiont   has_ext_modulesR5   (   R9   R?   R@   t   basename(    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyt   finalize_optionsc   s    !c         C   s_  |  j  |  j d  _ t j j t j j t     } |  j j	 g  } |  j _	 x | D] } t
 | t  rt |  d k rt j j | d  rt j j | d  } t j j |  } | | k s | j | t j  r| t |  d | d f } qqn  |  j j	 j |  qV Wz0 t j d |  j   |  j d d d d d  Wd  | |  j _	 Xd  S(	   Nt   installi   i    i   s   installing package data to %st   install_datat   forcet   root(   R2   R>   t   install_libR   R   t   normcaset   realpathR   RE   t
   data_filest
   isinstancet   tuplet   lent   isabst
   startswitht   sept   appendR   t   infot   call_commandR1   (   R9   t   site_packagest   oldt   itemRO   t
   normalized(    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyt   do_install_data{   s     !!'c         C   s
   |  j  g S(   N(   R7   (   R9   (    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyt   get_outputs   s    c         K   sm   x! t  D] } | j | |  j  q W| j d |  j  | j d |  j  |  j | |  } |  j |  | S(   s8   Invoke reinitialized command `cmdname` with keyword argsR6   t   dry_run(   t   INSTALL_DIRECTORY_ATTRSt
   setdefaultR2   R6   R`   t   reinitialize_commandt   run_command(   R9   t   cmdnamet   kwt   dirnamet   cmd(    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyRY      s    c      	   C   s  |  j  d  t j d |  j  |  j d  } | j } d  | _ |  j j   rj |  j	 rj |  j  d  n  |  j
 d d d } | | _ |  j   \ } } g  |  _ g  } x t |  D] \ } } t j j |  \ }	 }
 t j j |  j t |	  d  } |  j j |  t j d	 |  |  j sAt t j j |  |  n  | j |  | j t j d
  | | <q W| r| j |  n  |  j j r|  j   n  |  j } t j j | d  } |  j |  |  j j rt j j | d  } t j d |  |  j
 d d | d d n  |  j |  t j j | d  } | rt j d |  |  j st |  t  | d  } | j! d j |   | j! d  | j"   qn> t j j# |  rt j d |  |  j st j$ |  qn  t% t j j | d  |  j&    t j j' t j j |  j( d   r3t j) d  n  |  j* rI|  j+   n  t, |  j- | d |  j. d |  j d |  j/   |  j0 st1 |  j d |  j n  t2 |  j d g   j d t3   |  j- f  d  S(   NR;   s   installing library code to %sRI   t
   build_clibRM   t   warn_diri    s   .pys   creating stub loader for %st   /s   EGG-INFOt   scriptss   installing scripts to %st   install_scriptst   install_dirt   no_epi   s   native_libs.txts
   writing %st   wts   
s   removing %ss   depends.txtsx   WARNING: 'depends.txt' will not be used by setuptools 0.6!
Use the install_requires/extras_require setup() args instead.t   verboseR`   t   modet
   dist_filesR,   (4   Rd   R   RX   R2   R>   RL   R1   RE   t   has_c_librariesR6   RY   t   get_ext_outputst   stubst	   enumerateR   R   R   RA   R   RW   R`   R+   RG   t   replaceRV   t   byte_compileRP   R^   R   Rl   t   copy_metadata_toR   R%   R&   t   closet   isfilet   unlinkt   write_safety_flagt   zip_safet   existsR;   t   warnR8   t   zap_pyfilest   make_zipfileR7   Rq   t
   gen_headerR4   R   t   getattrR   (   R9   t   instcmdt   old_rootRh   t   all_outputst   ext_outputst
   to_compileR.   t   ext_nameR   t   extR(   t   archive_rootR;   t
   script_dirt   native_libst	   libs_file(    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyt   run   sz    				
		
	
	$
		c   
      C   s-  t  j d  xt |  j  D]\ } } } x | D] } t j j | |  } | j d  r} t  j d |  t j	 |  n  | j d  r3 | } d } t
 j | |  } t j j | t j | j d  d  }	 t  j d | |	 f  y t j |	  Wn t k
 rn Xt j | |	  q3 q3 Wq Wd  S(	   Ns+   Removing .py files from temporary directorys   .pys   Deleting %st   __pycache__s#   (?P<name>.+)\.(?P<magic>[^.]+)\.pyct   names   .pycs   Renaming file from [%s] to [%s](   R   RX   t   walk_eggR2   R   R   RA   R   t   debugR}   t   ret   matcht   pardirt   groupt   removet   OSErrort   rename(
   R9   R   R   R   R   R   t   path_oldt   patternt   mt   path_new(    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyR      s*    	c         C   sE   t  |  j d d   } | d  k	 r% | St j d  t |  j |  j  S(   NR   s4   zip_safe flag not set; analyzing archive contents...(   R   RE   R1   R   R   t   analyze_eggR2   Rv   (   R9   t   safe(    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyR     s
    c   
      C   s!  t  j |  j j p d  } | j d i   j d  } | d  k rF d S| j sY | j ro t d | f   n  t	 j
 d  } | j } d j | j  } | j d } t j j |  j  } d	 t   } |  j st t j j |  j  d
 |  j t |  j d  }	 |	 j |  |	 j   n  d S(   Nt    s   setuptools.installationt   eggsecutableR!   sG   eggsecutable entry point (%r) cannot have 'extras' or refer to a modulei   R   i    sH  #!/bin/sh
if [ `basename $0` = "%(basename)s" ]
then exec python%(pyver)s -c "import sys, os; sys.path.insert(0, os.path.abspath('$0')); from %(pkg)s import %(base)s; sys.exit(%(full)s())" "$@"
else
  echo $0 is not the correct name for this egg file.
  echo Please rename it back to %(basename)s and try again.
  exec false
fi
R`   t   a(   R	   t	   parse_mapRE   t   entry_pointst   getR1   t   attrst   extrasR    t   syst   versiont   module_nameRA   R   R   RG   R7   t   localsR`   R   Rg   R%   R&   R{   (
   R9   t   epmt   ept   pyvert   pkgt   fullR   RG   t   headerR*   (    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyR     s*    	
	"c         C   s   t  j j |  j  } t  j j | d  } xb |  j j j D]Q } | j |  r: t  j j | | t	 |   } t
 |  |  j | |  q: q: Wd S(   s*   Copy metadata (egg info) to the target_dirR   N(   R   R   t   normpathR;   RA   R?   t   filelistR   RU   RS   R   t	   copy_file(   R9   t
   target_dirt   norm_egg_infot   prefixR   t   target(    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyRz   :  s    
c         C   s  g  } g  } i d |  j  6} x t |  j   D] \ } } } xH | D]@ } t j j |  d j   t k rB | j | | |  qB qB Wx3 | D]+ } | | | d | t j j | |  <q Wq, W|  j	 j
   r}|  j d  } x | j D] }	 t |	 t  rq n  | j |	 j  }
 | j |
  } t j j |  j d  s t j j t j j |  j  |   rv| j |  qvq q Wn  | | f S(   sA   Get a list of relative paths to C extensions in the output distroR   i   Rk   t	   build_exts   dl-(   R2   R    R   R   R   t   lowert   NATIVE_EXTENSIONSRW   RA   RE   RF   R>   t
   extensionsRQ   R
   t   get_ext_fullnameR   t   get_ext_filenameRG   RU   R   (   R9   R   R   t   pathsR   R   R   R   t	   build_cmdR   t   fullname(    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyRu   F  s(    "-$(   s
   bdist-dir=R-   s1   temporary directory for creating the distributionN(   s   exclude-source-filesNs+   remove all .py files from the generated egg(   s	   dist-dir=R0   s-   directory to put final built distributions in(   s
   skip-buildNs2   skip rebuilding everything (for testing/debugging)(   t   __name__t
   __module__t   descriptionR   R1   t   user_optionst   boolean_optionsR:   RH   R^   R_   RY   R   R   R   R   Rz   Ru   (    (    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyR,   C   s4    	
   							
	Q			'	s   .dll .so .dylib .pydc         c   se   t  |   } t |  \ } } } d | k r= | j d  n  | | | f Vx | D] } | VqR Wd S(   s@   Walk an unpacked egg's contents, skipping the metadata directorys   EGG-INFON(   R    t   nextR   (   t   egg_dirt   walkerR   R   R   t   bdf(    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyR   f  s    c   	      C   s   xB t  j   D]4 \ } } t j j t j j |  d |   r | Sq Wt   sR t St } x t	 |   D] \ } } } xn | D]f } | j
 d  s{ | j
 d  r q{ q{ | j
 d  s | j
 d  r{ t |  | | |  o | } q{ q{ Wqe W| S(   Ns   EGG-INFOs   .pys   .pyws   .pycs   .pyo(   t   safety_flagst   itemsR   R   R   RA   t   can_scanR   t   TrueR   R   t   scan_module(	   R   Rv   t   flagt   fnR   R   R   R   R   (    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyR   q  s    $	&c         C   s   x t  j   D] \ } } t j j |  |  } t j j |  rq | d  k s^ t |  | k r t j |  q q | d  k	 r t |  | k r t	 | d  } | j
 d  | j   q q Wd  S(   NRp   s   
(   R   R   R   R   RA   R   R1   t   boolR}   R%   R&   R{   (   R   R   R   R   R*   (    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyR~     s    s   zip-safes   not-zip-safec         C   s  t  j j | |  } | d  | k r) t S| t |   d j t  j d  } | | r[ d p^ d t  j j |  d } t j	 d k  r d } n t j	 d k  r d	 } n d
 } t
 | d  } | j |  t j |  }	 | j   t }
 t j t |	   } x< d d g D]. } | | k r	t j d | |  t }
 q	q	Wd | k rxZ d d d d d d d d d d d g D]. } | | k rot j d | |  t }
 qoqoWn  |
 S(   s;   Check whether module possibly uses unsafe-for-zipfile stuffii   R   R   i    i   i   i   i   i   t   rbt   __file__t   __path__s   %s: module references %st   inspectt	   getsourcet
   getabsfilet   getsourcefilet   getfilegetsourcelinest
   findsourcet   getcommentst   getframeinfot   getinnerframest   getouterframest   stackt   traces"   %s: module MAY be using inspect.%s(   i   i   (   i   i   (   R   R   RA   R   RS   Rx   RV   R   R   t   version_infoR%   t   readt   marshalt   loadR{   t   dictt   fromkeyst   iter_symbolsR   R   R   (   R   R   R   Rv   R   R   R   t   skipR*   t   codeR   t   symbolst   bad(    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyR     s:    #*		
	c         c   sy   x |  j  D] } | Vq
 WxY |  j D]N } t | t j  rC | Vq# t | t  r# x t |  D] } | Vq_ Wq# q# Wd S(   sB   Yield names and strings used by `code` and its nested code objectsN(   t   co_namest	   co_constsRQ   R   t   string_typesR   R   (   R   R   t   const(    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyR     s    	c           C   sD   t  j j d  r& t  j d k r& t St j d  t j d  d  S(   Nt   javat   clis1   Unable to analyze compiled code on this platform.sf   Please ask the author to include a 'zip_safe' setting (either True or False) in the package's setup.py(   R   t   platformRU   R   R   R   (    (    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyR     s    "RM   Rn   RJ   t   install_basei    R!   c            s   d d l  } t t j j |   d  t j d |        f d   } | r\ | j n | j }  s | j	 |  | d | }	 x- t
    D] \ }
 } } | |	 |
 |  q W|	 j   n0 x- t
    D] \ }
 } } | d |
 |  q W|  S(   sq  Create a zip file from all the files under 'base_dir'.  The output
    zip file will be named 'base_dir' + ".zip".  Uses either the "zipfile"
    Python module (if available) or the InfoZIP "zip" utility (if installed
    and found on the default search path).  If neither tool is available,
    raises DistutilsExecError.  Returns the name of the output zip file.
    iNR`   s#   creating '%s' and adding '%s' to itc            s   x | D]y } t  j j t  j j | |   } t  j j |  r | t    d }  sm |  j | |  n  t j d |  q q Wd  S(   Ni   s   adding '%s'(	   R   R   R   RA   R|   RS   R&   R   R   (   t   zRg   t   namesR   R   R.   (   t   base_dirR`   (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyt   visit  s    !t   compression(   t   zipfileR   R   R   Rg   R   RX   t   ZIP_DEFLATEDt
   ZIP_STOREDt   ZipFileR    R{   R1   (   t   zip_filenameR   Rq   R`   t   compressRr   R   R   R   R   Rg   R   R   (    (   R   R`   s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyR     s    	(4   t   __doc__t   distutils.errorsR    t   distutils.dir_utilR   R   t	   distutilsR   t   typesR   R   R   R   R"   R   t   setuptools.externR   t   pkg_resourcesR   R   R   R	   t   setuptools.extensionR
   t
   setuptoolsR   t	   sysconfigR   R   R   t   ImportErrort   distutils.sysconfigR   R   R    R+   R,   R   R   t   splitR   R   R   R~   R   R   R   R   R   R   Ra   R   (    (    (    s@   /usr/lib/python2.7/site-packages/setuptools/command/bdist_egg.pyt   <module>   sL   		
	 !			
	$			