
Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­Â�Â­
<!DOCTYPE html>
<html>
3

  \v)  ã               @   s¨   d dl Z d dlZd dlZd dlmZmZ ddddgZG dd„ dƒZG dd„ deƒZdd	d„Z	e
d
kr¤ejƒ Zejdddd� ejƒ Zejs’e jjr˜dZndZe	eƒ dS )é    N)ÚCommandCompilerÚcompile_commandÚInteractiveInterpreterÚInteractiveConsoleÚinteractr   c               @   sB   e Zd Zddd„Zddd„Zdd	„ Zdd
d„Zdd„ Zdd„ ZdS )r   Nc             C   s$   |d krdd dœ}|| _ tƒ | _d S )NZ__console__)Ú__name__Ú__doc__)Úlocalsr   Úcompile)Úselfr	   © r   ú/usr/lib64/python3.6/code.pyÚ__init__   s    	
zInteractiveInterpreter.__init__ú<input>Úsinglec             C   sR   y| j |||ƒ}W n$ tttfk
r6   | j|ƒ dS X |d krDdS | j|ƒ dS )NFT)r
   ÚOverflowErrorÚSyntaxErrorÚ
ValueErrorÚshowsyntaxerrorÚruncode)r   ÚsourceÚfilenameZsymbolÚcoder   r   r   Ú	runsource'   s    

z InteractiveInterpreter.runsourcec             C   s>   yt || jƒ W n( tk
r&   ‚ Y n   | jƒ  Y nX d S )N)Úexecr	   Ú
SystemExitÚshowtraceback)r   r   r   r   r   r   N   s    zInteractiveInterpreter.runcodec             C   s¬   t jƒ \}}}|t _|t _|t _|rp|tkrpy|j\}\}}}}	W n tk
rV   Y nX t|||||	fƒ}|t _t jt j	kršt
j||ƒ}
| jdj|
ƒƒ nt j|||ƒ d S )NÚ )ÚsysÚexc_infoÚ	last_typeÚ
last_valueÚlast_tracebackr   Úargsr   Ú
excepthookÚ__excepthook__Ú	tracebackÚformat_exception_onlyÚwriteÚjoin)r   r   ÚtypeÚvalueÚtbÚmsgZdummy_filenameÚlinenoÚoffsetÚlineÚlinesr   r   r   r   a   s    z&InteractiveInterpreter.showsyntaxerrorc             C   s|   t jƒ  \t _t _}}|t _zPtj|d |d |jƒ}t jt j	krT| j
dj|ƒƒ nt j|d |d |ƒ W d d  }}X d S )Nr   é   r   )r   r   r    r!   r"   r&   Úformat_exceptionÚtb_nextr$   r%   r(   r)   )r   Zlast_tbZeir1   r   r   r   r   „   s    z$InteractiveInterpreter.showtracebackc             C   s   t jj|ƒ d S )N)r   Ústderrr(   )r   Údatar   r   r   r(   ™   s    zInteractiveInterpreter.write)N)r   r   )N)	r   Ú
__module__Ú__qualname__r   r   r   r   r   r(   r   r   r   r   r      s   	

'
#c               @   s:   e Zd Zddd„Zdd„ Zddd„Zd	d
„ Zddd„ZdS )r   Nú	<console>c             C   s   t j| |ƒ || _| jƒ  d S )N)r   r   r   Úresetbuffer)r   r	   r   r   r   r   r   «   s    
zInteractiveConsole.__init__c             C   s
   g | _ d S )N)Úbuffer)r   r   r   r   r:   ¹   s    zInteractiveConsole.resetbufferc          !   C   sP  y
t j W n tk
r$   dt _Y nX y
t j W n tk
rJ   dt _Y nX d}|d krx| jdt jt j|| jjf ƒ n|rŽ| jdt	|ƒ ƒ d}x‚yP|r¢t j}nt j}y| j
|ƒ}W n  tk
rÖ   | jdƒ P Y nX | j|ƒ}W q” tk
�r   | jdƒ | jƒ  d}Y q”X q”W |d k�r4| jd	| jj ƒ n|d
k�rL| jd| ƒ d S )Nz>>> z... zFType "help", "copyright", "credits" or "license" for more information.zPython %s on %s
%s
(%s)
z%s
r   Ú
z
KeyboardInterrupt
znow exiting %s...
r   )r   Zps1ÚAttributeErrorZps2r(   ÚversionÚplatformÚ	__class__r   ÚstrÚ	raw_inputÚEOFErrorÚpushÚKeyboardInterruptr:   )r   ÚbannerÚexitmsgZcprtÚmoreÚpromptr0   r   r   r   r   ½   sF    






zInteractiveConsole.interactc             C   s6   | j j|ƒ dj| j ƒ}| j|| jƒ}|s2| jƒ  |S )Nr<   )r;   Úappendr)   r   r   r:   )r   r0   r   rH   r   r   r   rD   ó   s    zInteractiveConsole.pushr   c             C   s   t |ƒS )N)Úinput)r   rI   r   r   r   rB     s    zInteractiveConsole.raw_input)Nr9   )NN)r   )r   r7   r8   r   r:   r   rD   rB   r   r   r   r   r   £   s
   

6c             C   sJ   t |ƒ}|d k	r||_n"ydd l}W n tk
r8   Y nX |j| |ƒ d S )Nr   )r   rB   ÚreadlineÚImportErrorr   )rF   ZreadfuncZlocalrG   ZconsolerL   r   r   r   r     s    Ú__main__z-qÚ
store_truez*don't print version and copyright messages)ÚactionÚhelpr   )NNNN)r   r&   ÚargparseZcodeopr   r   Ú__all__r   r   r   r   ÚArgumentParserÚparserÚadd_argumentÚ
parse_argsr#   ÚqÚflagsÚquietrF   r   r   r   r   Ú<module>   s$    t
