MINI MINI MANI MO
3
  \                 @   s|  d Z ddlZddlZddlmZ ddlmZ	 ddl
mZ ddlm
ZmZ yddlmZ W n  ek
rx   ddlmZ Y nX dd	d
ddd
dddddddddddddddgZejZejZejZejZejZy
ejZ W n e!k
r   dZ Y nX ej"Z"[da#da$dd Z%dd Z&eZ'dd ZG d d! d!Z(e(Z)G d"d
 d
Z*G d#d dZ+G d$d de+Z,G d%d dZ-G d&d dZ.G d'd de/Z0e j1Z2e2  d@d)d*Z3e a4i Z5i Z6e Z7G d+d dZ8G d,d de8Z9G d-d. d.e8Z:G d/d0 d0e8Z;d1d Z<e<Z=d2d	 Z>e>Z?d3d4 Z@d5d ZAdd6lmBZB e: aCd7d8 ZDd9d: ZEd;d
 ZFydd<lmGZH W n" ek
rn   dd=lImHZH Y nX d>d? ZJdS )Az;Thread module emulating a subset of Java's threading model.    N)	monotonic)
format_exc)WeakSet)islicecount)deque	get_identactive_count	Conditioncurrent_thread	enumeratemain_threadTIMEOUT_MAXEventLockRLock	SemaphoreBoundedSemaphoreThreadBarrierBrokenBarrierErrorTimerThreadError
setprofilesettracelocal
stack_sizec             C   s   | a dS )zSet a profile function for all threads started from the threading module.
    The func will be passed to sys.setprofile() for each thread, before its
    run() method is called.
    N)
_profile_hook)func r   !/usr/lib64/python3.6/threading.pyr   2   s    c             C   s   | a dS )zSet a trace function for all threads started from the threading module.
    The func will be passed to sys.settrace() for each thread, before its run()
    method is called.
    N)_trace_hook)r   r   r   r    r   <