
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
U
    ¡ê,a/  ã                   @   s  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m	Z	 ddgZ
G dd„ deƒZG dd„ deƒZdd	d
„Zd dd„Zefdd„ZG dd„ deƒZd!dd„Zd"dd„Zefdd„Zdd„ Zd#dd„Zedk�r
ee jƒdk � rôede jd� ne jd = ee jd  ƒ dS )$é    N)Ú	read_codeÚget_importerÚ
run_moduleÚrun_pathc                   @   s$   e Zd Zdd„ Zdd„ Zdd„ ZdS )Ú_TempModulec                 C   s   || _ t |¡| _g | _d S ©N)Úmod_nameÚtypesÚ
ModuleTypeÚmoduleÚ_saved_module©Úselfr   © r   ú*/opt/alt/python38/lib64/python3.8/runpy.pyÚ__init__   s    z_TempModule.__init__c                 C   sB   | j }z| j tj| ¡ W n tk
r0   Y nX | jtj|< | S r   )r   r   ÚappendÚsysÚmodulesÚKeyErrorr   r   r   r   r   Ú	__enter__    s    z_TempModule.__enter__c                 G   s.   | j r| j d tj| j< n
tj| j= g | _ d S ©Nr   )r   r   r   r   ©r   Úargsr   r   r   Ú__exit__)   s    
z_TempModule.__exit__N©Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r   r      s   	r   c                   @   s$   e Zd Zdd„ Zdd„ Zdd„ ZdS )Ú_ModifiedArgv0c                 C   s   || _ tƒ  | _| _d S r   )ÚvalueÚobjectÚ_saved_valueÚ	_sentinel)r   r    r   r   r   r   1   s    z_ModifiedArgv0.__init__c                 C   s0   | j | jk	rtdƒ‚tjd | _ | jtjd< d S )NzAlready preserving saved valuer   )r"   r#   ÚRuntimeErrorr   Úargvr    )r   r   r   r   r   5   s    z_ModifiedArgv0.__enter__c                 G   s   | j | _| jtjd< d S r   )r#   r    r"   r   r%   r   r   r   r   r   ;   s    z_ModifiedArgv0.__exit__Nr   r   r   r   r   r   0   s   r   c           
   	   C   sn   |d k	r|  |¡ |d kr(d }|}d }	n |j}|j}|j}	|d krH|j}|j |||	d |||d� t| |ƒ |S )N)r   Ú__file__Ú
__cached__Ú__doc__Ú
__loader__Ú__package__Ú__spec__)ÚupdateÚloaderÚoriginÚcachedÚparentÚexec)
ÚcodeZrun_globalsÚinit_globalsr   Úmod_specÚpkg_nameÚscript_namer-   Úfnamer/   r   r   r   Ú	_run_code@   s*    
ú
r8   c           	   
   C   s^   |d kr|n|j }t|ƒ�6}t|ƒ�" |jj}t| ||||||ƒ W 5 Q R X W 5 Q R X | ¡ S r   )r.   r   r   r   Ú__dict__r8   Úcopy)	r2   r3   r   r4   r5   r6   r7   Útemp_moduleÚmod_globalsr   r   r   Ú_run_module_codeZ   s       ÿr=   c                 C   s2  |   d¡r|dƒ‚|  d¡\}}}|rÀzt|ƒ W nH tk
rz } z*|jd ksh|j|krj|  |jd ¡sj‚ W 5 d }~X Y nX tj | ¡}|d k	rÀt|dƒsÀddl	m
} dj| |d�}|t|ƒƒ ztj | ¡}W nJ ttttfk
�r }	 z"d}|| | t|	ƒj|	¡ƒ|	‚W 5 d }	~	X Y nX |d k�r2|d	|  ƒ‚|jd k	�r´| d
k�sT|  d¡�r\|dƒ‚z| d }
t|
|ƒW S  |k
�r² } z"| tjk�r’‚ |d|| f ƒ‚W 5 d }~X Y nX |j}|d k�rÐ|d|  ƒ‚z| | ¡}W n2 tk
�r } z|t|ƒƒ|‚W 5 d }~X Y nX |d k�r(|d|  ƒ‚| ||fS )NÚ.z#Relative module names not supportedÚ__path__r   )Úwarnzš{mod_name!r} found in sys.modules after import of package {pkg_name!r}, but prior to execution of {mod_name!r}; this may result in unpredictable behaviour)r   r5   z:Error while finding module specification for {!r} ({}: {})zNo module named %sÚ__main__z	.__main__z%Cannot use package as __main__ modulez3%s; %r is a package and cannot be directly executedz0%r is a namespace package and cannot be executedzNo code object available for %s)Ú
startswithÚ
rpartitionÚ
__import__ÚImportErrorÚnamer   r   ÚgetÚhasattrÚwarningsr@   ÚformatÚRuntimeWarningÚ	importlibÚutilÚ	find_specÚAttributeErrorÚ	TypeErrorÚ
ValueErrorÚtyper   Úsubmodule_search_locationsÚendswithÚ_get_module_detailsr-   Úget_code)r   Úerrorr5   Ú_ÚeZexistingr@   ÚmsgÚspecZexZpkg_main_namer-   r2   r   r   r   rU   h   sd    
ÿ ý,
ÿ
ÿ 
rU   c                   @   s   e Zd ZdS )Ú_ErrorN)r   r   r   r   r   r   r   r\   ¢   s   r\   Tc              
   C   s˜   z0|s| dkr t | tƒ\} }}nttƒ\} }}W n: tk
rj } zdtj|f }t |¡ W 5 d }~X Y nX tjd j}|rˆ|jtj	d< t
||d d|ƒS )NrA   z%s: %sr   )rU   r\   Ú_get_main_module_detailsr   Ú
executableÚexitr   r9   r.   r%   r8   )r   Z
alter_argvr4   r2   ÚexcrZ   Zmain_globalsr   r   r   Ú_run_module_as_main©   s     ÿra   Fc                 C   s@   t | ƒ\} }}|d kr| }|r,t||||ƒS t|i |||ƒS d S r   )rU   r=   r8   )r   r3   Úrun_nameZ	alter_sysr4   r2   r   r   r   r   Å   s    c              
   C   s„   d}t j| }t j|= z\zt|ƒW W ¢NS  tk
rn } z*|t|ƒkr\| d|t jd f ƒ|‚‚ W 5 d }~X Y nX W 5 |t j|< X d S )NrA   zcan't find %r module in %rr   )r   r   rU   rE   ÚstrÚpath)rW   Z	main_nameZ
saved_mainr`   r   r   r   r]   Ô   s    
ÿÿr]   c              	   C   sf   t j t  |¡¡}t |¡�}t|ƒ}W 5 Q R X |d kr^t |¡�}t| ¡ |dƒ}W 5 Q R X ||fS )Nr1   )	Úosrd   ÚabspathÚfsdecodeÚioÚ	open_coder   ÚcompileÚread)rb   r7   Zdecoded_pathÚfr2   r   r   r   Ú_get_code_from_fileç   s    rm   c                 C   s$  |d krd}|  d¡d }t| ƒ}d}t|ƒjdkrFt|ƒjdkrFd}t|td ƒƒsX|rxt|| ƒ\}}t|||||d�S tj	 
d| ¡ zntƒ \}}	}t|ƒ�P}
t| ƒ�< |
jj}t|||||	|ƒ ¡ W  5 Q R £ W  5 Q R £ W ¢S Q R X W 5 Q R X W 5 ztj	 | ¡ W n tk
�r   Y nX X d S )	Nz
<run_path>r>   r   FZimpZNullImporterT)r5   r6   )rC   r   rR   r   r   Ú
isinstancerm   r=   r   rd   ÚinsertÚremoverQ   r]   r   r   r   r9   r8   r:   )Z	path_namer3   rb   r5   ZimporterZis_NullImporterr2   r7   r   r4   r;   r<   r   r   r   r   ò   s<    
 ÿ
ÿ  ÿ8rA   é   z!No module specified for execution)Úfile)NNNNN)NNNNN)T)NNF)NN)r   Úimportlib.machineryrL   Úimportlib.utilrh   r	   re   Zpkgutilr   r   Ú__all__r!   r   r   r8   r=   rE   rU   Ú	Exceptionr\   ra   r   r]   rm   r   r   Úlenr%   ÚprintÚstderrr   r   r   r   Ú<module>   sL    ÿ       þ
       þ
:
    ÿ

1
