
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
U
    ¡ê,a‘k  ã                   @   sî  d ddddddddd	d
ddg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mZ ddlZddlZddlZejZejejB ejB ZeedƒržeejO ZeZeedƒr¶eejO ZeedƒrÈejZndZdZ eƒ Z!dd„ Z"dd„ Z#dd„ Z$G dd„ dƒZ%dd„ Z&dd„ Z'da(d d!„ Z)d"d#„ Z*d$d„ Z+d%d„ Z,da-d&d
„ Z.d'd„ Z/d<d)d„Z0d=d*d„Z1d+e dfd,d„Z2G d-d.„ d.ƒZ3G d/d0„ d0ƒZ4d>dd4œd5d „Z5ej6d6k�s¬ej7d7k�r²e5Z8need8ƒa9d?dd4œd9d„Z8G d:d„ dƒZ:G d;d„ de;ƒZ<dS )@ÚNamedTemporaryFileÚTemporaryFileÚSpooledTemporaryFileÚTemporaryDirectoryÚmkstempÚmkdtempÚmktempÚTMP_MAXÚgettempprefixÚtempdirÚ
gettempdirÚgettempprefixbÚgettempdirbé    N)ÚRandomÚ
O_NOFOLLOWÚO_BINARYi'  Ztmpc                 C   s.   zt  | ¡ W n tk
r$   Y dS X dS d S )NFT)Ú_osÚlstatÚOSError)Úfn© r   ú-/opt/alt/python38/lib64/python3.8/tempfile.pyÚ_existsK   s
    r   c                  G   s\   d }| D ]B}|d krqt |tƒr6|tkr0tdƒ‚t}q|tkrFtdƒ‚t}q|d krXtS |S )Nz1Can't mix bytes and non-bytes in path components.)Ú
isinstanceÚbytesÚstrÚ	TypeError)ÚargsZreturn_typeÚargr   r   r   Ú_infer_return_typeT   s    
r   c                 C   sd   t | ||ƒ}|d kr|ƒ }| d kr:|tkr0t} n
t t¡} |d krX|tkrRtƒ }ntƒ }| |||fS ©N)r   r   Útemplater   Úfsencoder   r   )ÚprefixÚsuffixÚdirÚoutput_typer   r   r   Ú_sanitize_paramsi   s    
r'   c                   @   s,   e Zd ZdZedd„ ƒZdd„ Zdd„ ZdS )	Ú_RandomNameSequenceZ%abcdefghijklmnopqrstuvwxyz0123456789_c                 C   s,   t  ¡ }|t| dd ƒkr&tƒ | _|| _| jS )NÚ_rng_pid)r   ÚgetpidÚgetattrÚ_RandomZ_rngr)   )ÚselfZcur_pidr   r   r   Úrng…   s
    z_RandomNameSequence.rngc                 C   s   | S r    r   ©r-   r   r   r   Ú__iter__�   s    z_RandomNameSequence.__iter__c                    s0   | j ‰ | jj‰‡ ‡fdd„tdƒD ƒ}d |¡S )Nc                    s   g | ]}ˆˆ ƒ‘qS r   r   )Ú.0Zdummy©ÚcZchooser   r   Ú
<listcomp>“   s     z0_RandomNameSequence.__next__.<locals>.<listcomp>é   Ú )Ú
charactersr.   ZchoiceÚrangeÚjoin)r-   Zlettersr   r2   r   Ú__next__�   s    z_RandomNameSequence.__next__N)Ú__name__Ú
__module__Ú__qualname__r7   Úpropertyr.   r0   r:   r   r   r   r   r(   {   s
   
r(   c               	   C   s¤   g } dD ]}t  |¡}|r|  |¡ qt jdkrX|  t j d¡t j d¡ddddg¡ n|  d	d
dg¡ z|  t  ¡ ¡ W n$ t	t
fk
rž   |  t j¡ Y nX | S )N)ZTMPDIRZTEMPZTMPÚntz~\AppData\Local\Tempz%SYSTEMROOT%\Tempzc:\tempzc:\tmpz\tempz\tmpz/tmpz/var/tmpz/usr/tmp)r   ÚgetenvÚappendÚnameÚextendÚpathÚ
expanduserÚ
expandvarsÚgetcwdÚAttributeErrorr   Úcurdir)ÚdirlistZenvnameÚdirnamer   r   r   Ú_candidate_tempdir_list–   s&    
 

   þrL   c                  C   sF  t ƒ } tƒ }|D �]}|tjkr,tj |¡}tdƒD � ]ø}t| ƒ}tj ||¡}zft 	|t
d¡}z<z*tj	|ddd��}| d¡ W 5 Q R X W 5 t |¡ X W 5 t |¡ X |W     S  tk
rÊ   Y q4 tk
�r   tjdk�rtj |¡�rt |tj¡�rY q4Y  qY q4 tk
�r,   Y  qY q4X q4qttjd| ƒ‚d S )	Néd   é€  ÚwbF)Úclosefds   blatr?   z)No usable temporary directory found in %s)r(   rL   r   rI   rD   Úabspathr8   Únextr9   ÚopenÚ_bin_openflagsÚunlinkÚcloseÚ_ioÚwriteÚFileExistsErrorÚPermissionErrorrB   ÚisdirÚaccessÚW_OKr   ÚFileNotFoundErrorÚ_errnoZENOENT)ZnamerrJ   r%   ÚseqrB   ÚfilenameÚfdÚfpr   r   r   Ú_get_default_tempdir±   s@    	

ÿ
ÿÿrd   c                   C   s2   t d kr.t ¡  zt d kr tƒ a W 5 t ¡  X t S r    )Ú_name_sequenceÚ
_once_lockÚacquireÚreleaser(   r   r   r   r   Ú_get_candidate_namesà   s    

ri   c           
   	   C   sÞ   t ƒ }|tkrttj|ƒ}ttƒD ]ª}t|ƒ}tj 	| || | ¡}t
 d|¡ zt ||d¡}	W nV tk
rz   Y q"Y n@ tk
r¸   tjdkr²tj | ¡r²t | tj¡r²Y q"n‚ Y nX |	tj |¡f  S ttjdƒ‚d S )Nztempfile.mkstemprN   r?   z#No usable temporary file name found)ri   r   Úmapr   r"   r8   r   rR   rD   r9   Ú_sysÚauditrS   rY   rZ   rB   r[   r\   r]   rQ   r_   ÚEEXIST)
r%   ZpreZsufÚflagsr&   Únamesr`   rB   Úfilerb   r   r   r   Ú_mkstemp_innerî   s*    ÿÿrq   c                   C   s   t S r    )r!   r   r   r   r   r	     s    c                   C   s   t  tƒ ¡S r    )r   r"   r	   r   r   r   r   r     s    c                   C   s2   t d kr.t ¡  zt d kr tƒ a W 5 t ¡  X t S r    )r
   rf   rg   rh   rd   r   r   r   r   r     s    

c                   C   s   t  tƒ ¡S r    )r   r"   r   r   r   r   r   r   #  s    Fc                 C   s2   t || |ƒ\}} }}|rt}nt}t||| ||ƒS r    )r'   Ú_text_openflagsrT   rq   )r$   r#   r%   Útextr&   rn   r   r   r   r   '  s
    c              	   C   sä   t || |ƒ\}} }}tƒ }|tkr.ttj|ƒ}ttƒD ]œ}t|ƒ}tj	 
||| |  ¡}t d|¡ zt |d¡ W nV tk
rŒ   Y q6Y n@ tk
rÊ   tjdkrÄtj	 |¡rÄt |tj¡rÄY q6n‚ Y nX |  S ttjdƒ‚d S )Nztempfile.mkdtempéÀ  r?   z(No usable temporary directory name found)r'   ri   r   rj   r   r"   r8   r   rR   rD   r9   rk   rl   ÚmkdirrY   rZ   rB   r[   r\   r]   r_   rm   )r$   r#   r%   r&   ro   r`   rB   rp   r   r   r   r   N  s,    ÿÿr6   c                 C   s`   |d krt ƒ }tƒ }ttƒD ]2}t|ƒ}tj ||| |  ¡}t|ƒs|  S qt	t
jdƒ‚d S )Nz"No usable temporary filename found)r   ri   r8   r   rR   r   rD   r9   r   rY   r_   rm   )r$   r#   r%   ro   r`   rB   rp   r   r   r   r   v  s    
ÿc                   @   sH   e Zd ZdZdZddd„Zejdkr<ejfdd„Z	d	d
„ Z
ndd„ Z	dS )Ú_TemporaryFileCloserNFTc                 C   s   || _ || _|| _d S r    )rp   rB   Údelete©r-   rp   rB   rw   r   r   r   Ú__init__ž  s    z_TemporaryFileCloser.__init__r?   c                 C   s<   | j s8| jd k	r8d| _ z| j ¡  W 5 | jr6|| jƒ X d S ©NT)Úclose_calledrp   rw   rB   rV   )r-   rU   r   r   r   rV   ­  s    z_TemporaryFileCloser.closec                 C   s   |   ¡  d S r    )rV   r/   r   r   r   Ú__del__·  s    z_TemporaryFileCloser.__del__c                 C   s   | j sd| _ | j ¡  d S rz   )r{   rp   rV   r/   r   r   r   rV   »  s    )T)r;   r<   r=   rp   r{   ry   r   rB   rU   rV   r|   r   r   r   r   rv   –  s   



rv   c                   @   s>   e Zd Zddd„Zdd„ Zdd„ Zdd	„ Zd
d„ Zdd„ ZdS )Ú_TemporaryFileWrapperTc                 C   s$   || _ || _|| _t|||ƒ| _d S r    )rp   rB   rw   rv   Ú_closerrx   r   r   r   ry   É  s    z_TemporaryFileWrapper.__init__c                    s^   | j d }t||ƒ}t|dƒrD|‰ t ˆ ¡‡ fdd„ƒ}| j|_|}t|tƒsZt| ||ƒ |S )Nrp   Ú__call__c                     s
   ˆ | |ŽS r    r   )r   Úkwargs©Úfuncr   r   Úfunc_wrapper×  s    z7_TemporaryFileWrapper.__getattr__.<locals>.func_wrapper)	Ú__dict__r+   ÚhasattrÚ
_functoolsÚwrapsr~   r   ÚintÚsetattr)r-   rB   rp   Úarƒ   r   r�   r   Ú__getattr__Ï  s    



z!_TemporaryFileWrapper.__getattr__c                 C   s   | j  ¡  | S r    )rp   Ú	__enter__r/   r   r   r   rŒ   ä  s    
z_TemporaryFileWrapper.__enter__c                 C   s   | j  |||¡}|  ¡  |S r    )rp   Ú__exit__rV   )r-   ÚexcÚvalueÚtbÚresultr   r   r   r�   ê  s    z_TemporaryFileWrapper.__exit__c                 C   s   | j  ¡  d S r    )r~   rV   r/   r   r   r   rV   ï  s    z_TemporaryFileWrapper.closec                 c   s   | j D ]
}|V  qd S r    )rp   )r-   Úliner   r   r   r0   ö  s    
z_TemporaryFileWrapper.__iter__N)T)	r;   r<   r=   ry   r‹   rŒ   r�   rV   r0   r   r   r   r   r}   Á  s   
r}   úw+béÿÿÿÿT©Úerrorsc                C   s˜   t |||ƒ\}}}}	t}
tjdkr0|r0|
tjO }
t||||
|	ƒ\}}z$tj|| ||||d�}t|||ƒW S  t	k
r’   t 
|¡ t |¡ ‚ Y nX d S )Nr?   ©Ú	bufferingÚnewlineÚencodingr–   )r'   rT   r   rB   ZO_TEMPORARYrq   rW   rS   r}   ÚBaseExceptionrU   rV   )Úmoder˜   rš   r™   r$   r#   r%   rw   r–   r&   rn   rb   rB   rp   r   r   r   r      s     

  ÿ

ÚposixÚcygwinÚ	O_TMPFILEc                C   sò   t |||ƒ\}}}}t}	tržz$|	tjB tj @ }
t ||
d¡}W n* tk
rX   daY nF tk
rj   Y n4X zt	j|| ||||d�W S    t 
|¡ ‚ Y nX t||||	|ƒ\}}z"t |¡ t	j|| ||||d�W S    t 
|¡ ‚ Y nX d S )NrN   Fr—   )r'   rT   Ú_O_TMPFILE_WORKSr   rŸ   ÚO_CREATrS   ÚIsADirectoryErrorr   rW   rV   rq   rU   )rœ   r˜   rš   r™   r$   r#   r%   r–   r&   rn   Zflags2rb   rB   r   r   r   r   2  s<    
 þ


  ÿ
c                   @   sþ   e Zd ZdZd9ddœdd„Zd	d
„ Zdd„ Zdd„ Zdd„ Zdd„ Z	dd„ Z
edd„ ƒZedd„ ƒZedd„ ƒZdd„ Zdd„ Zdd „ Zed!d"„ ƒZed#d$„ ƒZed%d&„ ƒZd'd(„ Zd)d*„ Zd+d,„ Zd-d.„ Zed/d0„ ƒZd1d2„ Zd:d3d4„Zd5d6„ Zd7d8„ ZdS );r   Fr   r“   r”   Nr•   c	          
   	   C   sT   d|krt  ¡ | _nt jt  ¡ ||	|d�| _|| _d| _||||||||	dœ| _d S )NÚb)rš   r–   r™   F)rœ   r˜   r$   r#   rš   r™   r%   r–   )rW   ÚBytesIOÚ_fileÚTextIOWrapperÚ	_max_sizeÚ_rolledÚ_TemporaryFileArgs)
r-   Úmax_sizerœ   r˜   rš   r™   r$   r#   r%   r–   r   r   r   ry   u  s"    
 þ   ýzSpooledTemporaryFile.__init__c                 C   s,   | j r
d S | j}|r(| ¡ |kr(|  ¡  d S r    )r¨   r§   ÚtellÚrollover)r-   rp   rª   r   r   r   Ú_check…  s
     zSpooledTemporaryFile._checkc                 C   sr   | j r
d S | j}tf | jŽ }| _| `| ¡ }t|dƒrN|j | ¡  	¡ ¡ n| | 	¡ ¡ | 
|d¡ d| _ d S )NÚbufferr   T)r¨   r¥   r   r©   r«   r…   r®   rX   ÚdetachÚgetvalueÚseek)r-   rp   ZnewfileÚposr   r   r   r¬   ‹  s     
zSpooledTemporaryFile.rolloverc                 C   s   | j jrtdƒ‚| S )Nz%Cannot enter context with closed file)r¥   ÚclosedÚ
ValueErrorr/   r   r   r   rŒ      s    zSpooledTemporaryFile.__enter__c                 C   s   | j  ¡  d S r    ©r¥   rV   ©r-   rŽ   r�   r�   r   r   r   r�   ¥  s    zSpooledTemporaryFile.__exit__c                 C   s
   | j  ¡ S r    )r¥   r0   r/   r   r   r   r0   ©  s    zSpooledTemporaryFile.__iter__c                 C   s   | j  ¡  d S r    rµ   r/   r   r   r   rV   ¬  s    zSpooledTemporaryFile.closec                 C   s   | j jS r    )r¥   r³   r/   r   r   r   r³   ¯  s    zSpooledTemporaryFile.closedc                 C   s   | j jS r    )r¥   rš   r/   r   r   r   rš   ³  s    zSpooledTemporaryFile.encodingc                 C   s   | j jS r    )r¥   r–   r/   r   r   r   r–   ·  s    zSpooledTemporaryFile.errorsc                 C   s   |   ¡  | j ¡ S r    )r¬   r¥   Úfilenor/   r   r   r   r·   »  s    zSpooledTemporaryFile.filenoc                 C   s   | j  ¡  d S r    )r¥   Úflushr/   r   r   r   r¸   ¿  s    zSpooledTemporaryFile.flushc                 C   s
   | j  ¡ S r    )r¥   Úisattyr/   r   r   r   r¹   Â  s    zSpooledTemporaryFile.isattyc                 C   s.   z
| j jW S  tk
r(   | jd  Y S X d S )Nrœ   )r¥   rœ   rH   r©   r/   r   r   r   rœ   Å  s    
zSpooledTemporaryFile.modec                 C   s&   z
| j jW S  tk
r    Y d S X d S r    )r¥   rB   rH   r/   r   r   r   rB   Ì  s    
zSpooledTemporaryFile.namec                 C   s   | j jS r    )r¥   Únewlinesr/   r   r   r   rº   Ó  s    zSpooledTemporaryFile.newlinesc                 G   s   | j j|Ž S r    )r¥   Úread©r-   r   r   r   r   r»   ×  s    zSpooledTemporaryFile.readc                 G   s   | j j|Ž S r    )r¥   Úreadliner¼   r   r   r   r½   Ú  s    zSpooledTemporaryFile.readlinec                 G   s   | j j|Ž S r    )r¥   Ú	readlinesr¼   r   r   r   r¾   Ý  s    zSpooledTemporaryFile.readlinesc                 G   s   | j j|Ž S r    )r¥   r±   r¼   r   r   r   r±   à  s    zSpooledTemporaryFile.seekc                 C   s   | j jS r    )r¥   Ú	softspacer/   r   r   r   r¿   ã  s    zSpooledTemporaryFile.softspacec                 C   s
   | j  ¡ S r    )r¥   r«   r/   r   r   r   r«   ç  s    zSpooledTemporaryFile.tellc                 C   s6   |d kr| j  ¡  n|| jkr&|  ¡  | j  |¡ d S r    )r¥   Útruncater§   r¬   )r-   Úsizer   r   r   rÀ   ê  s
    
zSpooledTemporaryFile.truncatec                 C   s   | j }| |¡}|  |¡ |S r    )r¥   rX   r­   )r-   Úsrp   Úrvr   r   r   rX   ò  s    

zSpooledTemporaryFile.writec                 C   s   | j }| |¡}|  |¡ |S r    )r¥   Ú
writelinesr­   )r-   Úiterablerp   rÃ   r   r   r   rÄ   ø  s    

zSpooledTemporaryFile.writelines)r   r“   r”   NNNNN)N)r;   r<   r=   r¨   ry   r­   r¬   rŒ   r�   r0   rV   r>   r³   rš   r–   r·   r¸   r¹   rœ   rB   rº   r»   r½   r¾   r±   r¿   r«   rÀ   rX   rÄ   r   r   r   r   r   n  sR            þþ







c                   @   sN   e Zd Zddd„Zedd„ ƒZedd„ ƒZdd	„ Zd
d„ Zdd„ Z	dd„ Z
dS )r   Nc                 C   s0   t |||ƒ| _tj| | j| jd | ¡d�| _d S )NzImplicitly cleaning up {!r})Úwarn_message)r   rB   Ú_weakrefZfinalizeÚ_cleanupÚformatÚ
_finalizer)r-   r$   r#   r%   r   r   r   ry     s      þzTemporaryDirectory.__init__c                    s    ‡ ‡fdd„}t jˆ|d� d S )Nc              	      sš   t |d tƒr„dd„ }zV|ˆkr0|tj |¡ƒ ||ƒ zt |¡ W n" ttfk
rh   ˆ  |¡ Y nX W q– tk
r€   Y q–X nt |d tƒr”n‚ d S )Nr   c                 S   s6   zt  | d¡ W n tk
r$   Y nX t  | d¡ d S )Nr   rt   )r   ZchflagsrH   Úchmod)rD   r   r   r   Ú
resetperms  s
    z?TemporaryDirectory._rmtree.<locals>.onerror.<locals>.resetperms)	Ú
issubclassrZ   r   rD   rK   rU   r¢   Ú_rmtreer^   )r‚   rD   Úexc_inforÌ   ©ÚclsrB   r   r   Úonerror  s    z+TemporaryDirectory._rmtree.<locals>.onerror)rÒ   )Ú_shutilZrmtree)rÑ   rB   rÒ   r   rÐ   r   rÎ     s    zTemporaryDirectory._rmtreec                 C   s   |   |¡ t |t¡ d S r    )rÎ   Ú	_warningsÚwarnÚResourceWarning)rÑ   rB   rÆ   r   r   r   rÈ   /  s    
zTemporaryDirectory._cleanupc                 C   s   d  | jj| j¡S )Nz	<{} {!r}>)rÉ   Ú	__class__r;   rB   r/   r   r   r   Ú__repr__4  s    zTemporaryDirectory.__repr__c                 C   s   | j S r    )rB   r/   r   r   r   rŒ   7  s    zTemporaryDirectory.__enter__c                 C   s   |   ¡  d S r    )Úcleanupr¶   r   r   r   r�   :  s    zTemporaryDirectory.__exit__c                 C   s   | j  ¡ r|  | j¡ d S r    )rÊ   r¯   rÎ   rB   r/   r   r   r   rÙ   =  s    
zTemporaryDirectory.cleanup)NNN)r;   r<   r=   ry   ÚclassmethodrÎ   rÈ   rØ   rŒ   r�   rÙ   r   r   r   r   r   ÿ  s   


)NNNF)NNN)r“   r”   NNNNNT)r“   r”   NNNNN)=Ú__all__Ú	functoolsr†   ÚwarningsrÔ   ÚiorW   Úosr   ZshutilrÓ   Úerrnor_   Zrandomr   r,   Úsysrk   ÚweakrefrÇ   Ú_threadÚallocate_lockZ_allocate_lockÚO_RDWRr¡   ÚO_EXCLrr   r…   r   rT   r   r   r!   rf   r   r   r'   r(   rL   rd   re   ri   rq   r	   r   r
   r   r   r   r   r   rv   r}   r   rB   Úplatformr   r    r   Úobjectr   r   r   r   r   Ú<module>   sš         ù




	-
'
( +?         þþ'
       þþ< 