a
    VŸ$c	  ã                   @   s¶   d dl mZmZmZmZmZ d dlmZmZm	Z	m
Z
mZmZmZmZmZmZmZ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Zd dlZer˜ejZnejZdadd„ Zdd„ ZdS )	é    )ÚdivisionÚabsolute_importÚwith_statementÚprint_functionÚunicode_literals)ÚPY2Ú
basestringÚbchrÚbordÚchrÚopenÚpystrÚrangeÚroundÚstrÚtobytesÚunicodeNTc                  O   sŠ   t | i |¤Ž}tjjs|S tj ¡ jr*|S t ¡ jdkr<|S t	sD|S t
jd dkrhda	tƒ  t ¡  da	ttj ¡  d¡dt| ƒ ƒ |S )NÚ
MainThreadÚRENPY_DEBUG_MAIN_THREAD_OPENÚstackFTz%H:%M:%SzIn main thread: open)Ú	real_openÚrenpyÚgameÚcontextsÚcontextÚ
init_phaseÚ	threadingÚcurrent_threadÚnameÚreportÚosÚenvironÚprintÚ	tracebackÚprint_stackÚdatetimeÚnowÚstrftimeÚrepr)ÚargsÚkwargsÚrv© r,   úrenpy/debug.pyÚreplacement_open.   s     r.   c                   C   s   dt jvrd S tt_d S )Nr   )r    r!   r.   Úbuiltinsr   r,   r,   r,   r-   Úinit_main_thread_openJ   s    
r0   )Ú
__future__r   r   r   r   r   Úrenpy.compatr   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r%   r#   r    r/   Úior   r   r.   r0   r,   r,   r,   r-   Ú<module>   s   8