???<!-- GIF89;a -->
123123123123
.....................................................................................................................................???<!-- GIF89;a -->
123123123123
.....................................................................................................................................
]              0   @   s	  d  d l  Z  d  d l Z d  d l Z e  j Z d d d d d d d d	 d
 d d d d d d d d d d g Z d d   Z d d   Z d e k r6d Z	 d Z
 d  d l Ty! d  d l m Z e j d  Wn e k
 r Yn Xd  d l Z y d  d l m Z Wn e k
 rYn Xd  d l Z e j e e   [ npd e k rd Z	 d  Z
 d  d l Ty! d  d l m Z e j d  Wn e k
 rYn Xd  d l Z d  d l Z e j e e   [ y d  d l m Z Wqe k
 rYqXn d! e k rd! Z	 d  Z
 d  d l Ty! d  d l m Z e j d  Wn e k
 r?Yn Xd  d l Z d  d l Z e j e e   [ y d  d l m Z Wqe k
 rYqXn e d"   e e  j d# <d  d$ l m Z m Z m Z m Z m Z m Z m Z m Z [ e d%  re    Z! d& d'   Z" e#   Z$ e" d( d)  e" d* d+  e" d, d-  e" d. d/  e" d0 d1  e" d2 d3  e" d4 d5  e" d6 d7  e" d8 d9  e" d: d;  e" d< d=  e" d> d?  e" d@ dA  e" dB dC  e" dB dD  e" dE d1  e$ Z% e#   Z$ e" d( d)  e$ Z& e#   Z$ e" dF dG  e" dH d+  e" dI d-  e" dJ dK  e" dL dM  e$ j' e  e" dN dO  e" dP d1  e" dQ d1  e" dR dS  e dT  re dU  re" dV dT  e$ Z( e#   Z$ e" d( d)  e" d, d-  e" d. d/  e" dW dX  e" dY d+  e dZ  r%e" d[ d-  e" d2 d3  e" d\ d1  e" d] d/  e" d. d/  e" dE d1  e" d^ d/  e$ Z) [$ [ [! [" d  Z* d_ Z+ d` Z, da db dc dd  Z- de df   Z. dg dh   Z/ e j dd df dh g  di d db dj dk  Z0 Gdl dm   dm  Z1 dn do   Z2 e j dk  e3 e h e% k rve4 e h e( k rvdp di d dq db dr d ds dt Z5 du dv   Z6 e j dt  y e7 Wn e8 k
 ri  Z7 Yn Xdw dx   Z9 dy dz   Z: d{ d|   Z; d} d~   Z< d d   Z= d d   Z> e j dx dz d| d~ d d g  d d d  Z? d d d  Z@ d  d lA mB ZB Gd d   d eB  ZC y
 eD ZE Wn e8 k
 rnd d   ZE Yn Xd e k re j d  y
 eF ZG Wn e8 k
 rd d   ZG Yn Xd e k re j d  d d   ZH eH   Z7 [H d d d  ZI e	 d k ZJ e j d  eJ r^d d   ZK eC e7 jL eK eM eK eM eE eG  ZN [K d d d  ZO e j d  d d   ZP eP   \ ZQ ZR [P e d  r	e d  r	e d  r	d  ZS d_ ZT ZU e j d d d g  d d   ZV d d   ZW d d   ZX d d   ZY d d   ZZ e j d d d d g  e d  rS	d d   Z[ d d   Z\ e j d d g  e d  r	d d   Z] d d   Z^ e j d d g  d d d d  Z_ Gd d   d  Z` d d   Za d S)    NaltsepcurdirpardirseppathseplinesepdefpathnamepathdevnullSEEK_SETSEEK_CURSEEK_ENDfsencodefsdecodeget_exec_pathfdopenpopenextsepc             C   s   |  t    k S)N)globals)r	    r   '/opt/alt/python35/lib64/python3.5/os.py_exists%   s    r   c             C   sA   y t  |  j  SWn) t k
 r< d d   t |   D SYn Xd  S)Nc             S   s&   g  |  ] } | d  d k r |  q S)r   _r   ).0nr   r   r   
<listcomp>,   s   	 z%_get_exports_list.<locals>.<listcomp>)list__all__AttributeErrordir)moduler   r   r   _get_exports_list(   s    r"   posix
)*)_exitr&   )_have_functionsntz
cezno os specific module foundzos.path)r   r   r   r   r   r   r   r   r'   c             C   s-   | t  k r) |  t k r) t j t  |  d  S)N)_globalsr'   _setadd)strfnr   r   r   _addy   s    r/   HAVE_FACCESSATaccessHAVE_FCHMODATchmodHAVE_FCHOWNATchownHAVE_FSTATATstatHAVE_FUTIMESATutimeHAVE_LINKATlinkHAVE_MKDIRATmkdirHAVE_MKFIFOATmkfifoHAVE_MKNODATmknodHAVE_OPENATopenHAVE_READLINKATreadlinkHAVE_RENAMEATrenameHAVE_SYMLINKATsymlinkHAVE_UNLINKATunlinkrmdirHAVE_UTIMENSATHAVE_FCHDIRchdirHAVE_FCHMODHAVE_FCHOWNHAVE_FDOPENDIRlistdirHAVE_FEXECVEexecveHAVE_FTRUNCATEtruncateHAVE_FUTIMENSHAVE_FUTIMESHAVE_FPATHCONFpathconfstatvfsfstatvfsHAVE_FSTATVFSHAVE_LCHFLAGSchflagsHAVE_LCHMODlchownHAVE_LCHOWNHAVE_LUTIMES
HAVE_LSTATZ
MS_WINDOWS      i  Fc             C   s   t  j |   \ } } | s0 t  j |  \ } } | r | r t  j |  r y t | | |  Wn t k
 rt Yn Xt } t | t  r t t d  } | | k r d  Sy t |  |  Wn, t	 k
 r | s t  j
 |   r   Yn Xd  S)NASCII)r
   splitexistsmakedirsFileExistsErrorr   
isinstancebytesr=   OSErrorisdir)r	   modeexist_okheadtailcdirr   r   r   rk      s$    
rk   c             C   s   t  |   t j |   \ } } | s: t j |  \ } } xI | r | r y t  |  Wn t k
 rl PYn Xt j |  \ } } q= Wd  S)N)rL   r
   ri   ro   )r	   rs   rt   r   r   r   
removedirs   s    
rv   c             C   s   t  j |  \ } } | r; | r; t  j |  r; t |  t |  |  t  j |   \ } } | r | r y t |  Wn t k
 r Yn Xd  S)N)r
   ri   rj   rk   rG   rv   ro   )oldnewrs   rt   r   r   r   renames  s    
ry   Tc          $   c   s  g  } g  } yF t  d k r9 t |  t  r9 t |   } n t |   } t |  } Wn? t k
 r } z | d  k	 r} | |  d  SWYd  d  } ~ Xn Xx | D] }	 y |	 j   }
 Wn t k
 r d }
 Yn X|
 r | j |	 j   n | j |	 j   | r |
 r | rd } n2 y |	 j	   } Wn t k
 r;d } Yn X| } | r t
 |	 j | | |  Ed  Hq W| r|  | | f Vt j t j } } xY | D]@ } | |  |  } | s| |  rt
 | | | |  Ed  HqWn |  | | f Vd  S)Nr(   FT)r	   rm   rn   _dummy_scandirscandirr   ro   is_dirappend
is_symlinkwalkr
   islinkjoin)toptopdownonerrorfollowlinksdirsnondirs
scandir_itentrieserrorentryr|   	walk_intor~   r   r   dirnamenew_pathr   r   r   r   *  sJ    ;
	r   c               @   sF   e  Z d  Z d d   Z d d d d  Z d d   Z d	 d
   Z d S)_DummyDirEntryc             C   s]   | |  _  t j | |  |  _ d  |  _ d  |  _ y |  j d d  Wn t k
 rX Yn Xd  S)Nfollow_symlinksF)r	   r
   r   _stat_lstatr7   ro   )selfr    r	   r   r   r   __init__  s    			z_DummyDirEntry.__init__r   Tc            C   s`   | r. |  j  d  k r' t |  j  |  _  |  j  S|  j d  k rU t |  j d d |  _ |  j Sd  S)Nr   F)r   r7   r
   r   )r   r   r   r   r   r7     s    z_DummyDirEntry.statc             C   sZ   |  j  d  k	 r> |  j   r> |  j d d  } t j | j  S|  j   } t j | j  S)Nr   F)r   r~   r7   stS_ISDIRst_mode)r   r7   r   r   r   r|     s
    z_DummyDirEntry.is_dirc             C   s"   |  j  d d  } t j | j  S)Nr   F)r7   r   S_ISLNKr   )r   r7   r   r   r   r~     s    z_DummyDirEntry.is_symlinkN)__name__
__module____qualname__r   r7   r|   r~   r   r   r   r   r     s   
	r   c             c   s)   x" t  |   D] } t |  |  Vq Wd  S)N)rS   r   )r    r	   r   r   r   rz     s    rz   .r   dir_fdc            c   s   t  |  d d d | } t |  t d | } zO | s` t j | j  r{ t j | t  |   r{ t | |  | | |  Ed  HWd  t	 |  Xd  S)Nr   Fr   )
r7   rC   O_RDONLYr   r   r   r
   samestat_fwalkclose)r   r   r   r   r   orig_sttopfdr   r   r   fwalk  s    #r   c             c   s  t  |   } g  g  } } x | D] } y? t j t | d |  j  rW | j |  n | j |  Wq  t k
 r y5 t j t | d |  d d j  r | j |  Wn t k
 r w  Yn XYq  Xq  W| r | | | |  f Vx | D] } y1 t | d |  d | }	 t | t	 d |  }
 Wn> t k
 r`} z | d  k	 rK| |  w WYd  d  } ~ Xn XzO | st
 j |	 t |
   rt
 j | |  } t |
 | | | |  Ed  HWd  t |
  Xq W| s| | | |  f Vd  S)Nr   r   F)rS   r   r   r7   r   r}   ro   r   rC   r   r
   r   r   r   r   )r   toppathr   r   r   namesr   r   r	   r   dirfderrdirpathr   r   r   r     s<    $
r   c             G   s   t  |  |  d  S)N)execv)fileargsr   r   r   execlB  s    r   c             G   s(   | d } t  |  | d  d  |  d  S)Nrf   r   )rU   )r   r   envr   r   r   execleI  s    
r   c             G   s   t  |  |  d  S)N)execvp)r   r   r   r   r   execlpQ  s    r   c             G   s(   | d } t  |  | d  d  |  d  S)Nrf   r   r   )execvpe)r   r   r   r   r   r   execlpeX  s    
r   c             C   s   t  |  |  d  S)N)_execvpe)r   r   r   r   r   r   a  s    r   c             C   s   t  |  | |  d  S)N)r   )r   r   r   r   r   r   r   i  s    r   c             C   s{  | d  k	 r! t  } | | f } n t } | f } t } t j |   \ } } | rb | |  |  d  Sd  } } d  }	 t |  }
 t d k r t |   }  t t |
  }
 x |
 D] } t j	 | |   } y | | |  Wq t
 k
 rN} zW | } t j   d } | j t j k r<| j t j k r<| d  k r<| } | }	 WYd  d  } ~ Xq Xq W| rh| j |	   | j |   d  S)Nr(   rg   )rU   r   environr
   ri   r   r	   r   mapr   ro   sysexc_infoerrnoENOENTENOTDIRwith_traceback)r   r   r   	exec_funcargrestrs   rt   last_exc	saved_excsaved_tb	path_listr    fullnameetbr   r   r   r   t  s<    	
$r   c             C   s  d d  l  } |  d  k r t }  | j    | j d t  y |  j d  } Wn t k
 rh d  } Yn Xt r y |  d } Wn t t f k
 r Yn X| d  k	 r t	 d   | } | d  k	 r t
 | t  r t |  } Wd  QRX| d  k r t } | j t  S)Nr   ignorePATHs   PATHz*env cannot contain 'PATH' and b'PATH' keys)warningsr   catch_warningssimplefilterBytesWarningget	TypeErrorsupports_bytes_environKeyError
ValueErrorrm   rn   r   r   ri   r   )r   r   r   
path_listbr   r   r   r     s.    
	)MutableMappingc               @   s|   e  Z d  Z d d   Z d d   Z d d   Z d d   Z d	 d
   Z d d   Z d d   Z	 d d   Z
 d d   Z d S)_Environc             C   sC   | |  _  | |  _ | |  _ | |  _ | |  _ | |  _ | |  _ d  S)N)	encodekey	decodekeyencodevaluedecodevalueputenvunsetenv_data)r   datar   r   r   r   r   r   r   r   r   r     s    						z_Environ.__init__c             C   sK   y |  j  |  j |  } Wn! t k
 r= t |  d   Yn X|  j |  S)N)r   r   r   r   )r   keyvaluer   r   r   __getitem__  s
    z_Environ.__getitem__c             C   s?   |  j  |  } |  j |  } |  j | |  | |  j | <d  S)N)r   r   r   r   )r   r   r   r   r   r   __setitem__  s    z_Environ.__setitem__c             C   sR   |  j  |  } |  j |  y |  j | =Wn! t k
 rM t |  d   Yn Xd  S)N)r   r   r   r   )r   r   
encodedkeyr   r   r   __delitem__  s    z_Environ.__delitem__c             c   s2   t  |  j  } x | D] } |  j |  Vq Wd  S)N)r   r   r   )r   keysr   r   r   r   __iter__  s    z_Environ.__iter__c             C   s   t  |  j  S)N)lenr   )r   r   r   r   __len__  s    z_Environ.__len__c                s2   d j  d j   f d d     j j   D   S)Nzenviron({{{}}})z, c             3   s9   |  ]/ \ } } d  j    j |    j |   Vq d S)z
{!r}: {!r}N)formatr   r   )r   r   r   )r   r   r   	<genexpr>  s   z$_Environ.__repr__.<locals>.<genexpr>)r   r   r   items)r   r   )r   r   __repr__  s    z_Environ.__repr__c             C   s
   t  |   S)N)dict)r   r   r   r   copy  s    z_Environ.copyc             C   s   | |  k r | |  | <|  | S)Nr   )r   r   r   r   r   r   
setdefault  s    
z_Environ.setdefaultN)r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r     s   		r   c             C   s   d  S)Nr   )r   r   r   r   r   <lambda>   s    r   r   c             C   s   t  |  d  S)N )_putenv)r   r   r   r   r     s    r   c                 s   t  d k rl d d   }  |    t }   f d d   } i  } xi t j   D] \ } } | | | |  <qI Wn< t j     f d d      f d d	   }   } t } t | | |   | t t  S)
Nr(   c             S   s,   t  |  t  s( t d t |   j   |  S)Nzstr expected, not %s)rm   r-   r   typer   )r   r   r   r   	check_str  s    z!_createenviron.<locals>.check_strc                s     |   j    S)N)upper)r   )encoder   r   r     s    z!_createenviron.<locals>.encodekeyc                s8   t  |  t  s( t d t |   j   |  j   d  S)Nzstr expected, not %ssurrogateescape)rm   r-   r   r   r   r   )r   )encodingr   r   r     s    z_createenviron.<locals>.encodec                s   |  j    d  S)Nr   )decode)r   )r   r   r   r   "  s    z_createenviron.<locals>.decode)	r	   r-   r   r   r   getfilesystemencodingr   r   	_unsetenv)r   r   r   r   r   r   r   )r   r   r   _createenviron  s"    r   c             C   s   t  j |  |  S)N)r   r   )r   defaultr   r   r   getenv0  s    r   r   c             C   s,   t  |  t  s( t d t |   j   |  S)Nzbytes expected, not %s)rm   rn   r   r   r   )r   r   r   r   _check_bytes:  s    r   c             C   s   t  j |  |  S)N)environbr   )r   r   r   r   r   getenvbF  s    r   r   c                 s[   t  j       d k r! d  n d     f d d   }     f d d   } |  | f S)Nmbcsstrictr   c                sO   t  |  t  r |  St  |  t  r2 |  j     St d t |   j   d  S)Nzexpect bytes or str, not %s)rm   rn   r-   r   r   r   r   )filename)r   errorsr   r   r   U  s
    z_fscodec.<locals>.fsencodec                sO   t  |  t  r |  St  |  t  r2 |  j     St d t |   j   d  S)Nzexpect bytes or str, not %s)rm   r-   rn   r   r   r   r   )r  )r   r  r   r   r   b  s
    z_fscodec.<locals>.fsdecode)r   r   )r   r   r   )r   r  r   _fscodecN  s    	r  forkspawnvr   P_WAITP_NOWAIT	P_NOWAITOc          
   C   s   t    } | sW y0 | d  k r. | | |  n | | | |  Wq t d  Yq Xnw |  t k rg | Sxd t | d  \ } } t |  r qj qj t |  r t |  St |  r t |  St	 d   qj Wd  S)N   r   z"Not stopped, signaled or exited???)
r  r&   r  waitpid
WIFSTOPPEDWIFSIGNALEDWTERMSIG	WIFEXITEDWEXITSTATUSro   )rq   r   r   r   funcpidwpidstsr   r   r   	_spawnvef  s&    	
r  c             C   s   t  |  | | d  t  S)N)r  r   )rq   r   r   r   r   r   r    s    c             C   s   t  |  | | | t  S)N)r  rU   )rq   r   r   r   r   r   r   spawnve  s    r  c             C   s   t  |  | | d  t  S)N)r  r   )rq   r   r   r   r   r   spawnvp  s    r  c             C   s   t  |  | | | t  S)N)r  r   )rq   r   r   r   r   r   r   spawnvpe  s    r  c             G   s   t  |  | |  S)N)r  )rq   r   r   r   r   r   spawnl  s    r  c             G   s'   | d } t  |  | | d  d  |  S)Nrf   r   r   )r  )rq   r   r   r   r   r   r   spawnle  s    
r  c             G   s   t  |  | |  S)N)r  )rq   r   r   r   r   r   spawnlp  s    r  c             G   s'   | d } t  |  | | d  d  |  S)Nrf   r   r   )r  )rq   r   r   r   r   r   r   spawnlpe  s    
r  rc             C   s  t  |  t  s% t d t |     | d k rA t d |   | d k sY | d  k re t d   d d  l } d d  l } | d k r | j |  d d d	 | j d
 | } t	 | j
 | j  |  S| j |  d d d | j d
 | } t	 | j
 | j  |  Sd  S)Nz&invalid cmd type (%s, expected string)r  wzinvalid mode %rr   z+popen() does not support unbuffered streamsshellTstdoutbufsizestdin)r  r  )rm   r-   r   r   r   
subprocessioPopenPIPE_wrap_closeTextIOWrapperr   r"  )cmdrq   	bufferingr#  r$  procr   r   r   r     s$    				c               @   sX   e  Z d  Z d d   Z d d   Z d d   Z d d   Z d	 d
   Z d d   Z d S)r'  c             C   s   | |  _  | |  _ d  S)N)_stream_proc)r   streamr+  r   r   r   r     s    	z_wrap_close.__init__c             C   sH   |  j  j   |  j j   } | d k r, d  St d k r< | S| d >Sd  S)Nr   r(      )r,  r   r-  waitr	   )r   
returncoder   r   r   r     s    z_wrap_close.closec             C   s   |  S)Nr   )r   r   r   r   	__enter__$  s    z_wrap_close.__enter__c             G   s   |  j    d  S)N)r   )r   r   r   r   r   __exit__&  s    z_wrap_close.__exit__c             C   s   t  |  j |  S)N)getattrr,  )r   r	   r   r   r   __getattr__(  s    z_wrap_close.__getattr__c             C   s   t  |  j  S)N)iterr,  )r   r   r   r   r   *  s    z_wrap_close.__iter__N)	r   r   r   r   r   r2  r3  r5  r   r   r   r   r   r'    s   	r'  c             O   sD   t  |  t  s% t d t |     d d  l } | j |  | |  S)Nz&invalid fd type (%s, expected integer)r   )rm   intr   r   r$  rC   )fdr   kwargsr$  r   r   r   r   .  s    )r   r   )r   r   r   )br   r   r7   r   builtin_module_namesZ_namesr   r   r"   r	   r   r#   r&   r}   ImportError	posixpathr
   r'   extendr(   Zntpathr)   modulesZos.pathr   r   r   r   r   r   r   r   r   r*   r/   setr+   supports_dir_fdsupports_effective_idsr,   supports_fdsupports_follow_symlinksr   r   r   rk   rv   ry   r   r   rz   rC   rS   r   r   r   	NameErrorr   r   r   r   r   r   r   r   _collections_abcr   r   r   r   r   r   r   r   r   r   r   rn   r   r   r  r   r   r  r  r	  r  r  r  r  r  r  r  r  r  r   r'  r   r   r   r   r   <module>   s  	


:					 +$!,/		#-7

		#%
	
	
