3 \þã@stdddddddgZdZeZifd d„Zd d„Zd d„Zd d„Zddd„Zdd„Z Gdd„de ƒZ da da dd„Zd S)ÚerrorÚstart_new_threadÚexitÚ get_identÚ allocate_lockÚinterrupt_mainÚLockTypeééc CsŠt|ƒttƒƒkrtdƒ‚t|ƒttƒƒkr4tdƒ‚day|||ŽWn.tk rZYnddl}|jƒYnXdatr†dat ‚dS)Nz2nd arg must be a tuplez3rd arg must be a dictFéT) ÚtypeÚtupleÚ TypeErrorÚdictÚ_mainÚ SystemExitÚ tracebackÚ print_excÚ _interruptÚKeyboardInterrupt)ZfunctionÚargsÚkwargsr©rú%/usr/lib64/python3.6/_dummy_thread.pyrs cCst‚dS)N)rrrrrr=scCsdS)NééÿÿÿÿrrrrrrAscCstƒS)N)rrrrrrJsNcCs|dk rtdƒ‚dS)Nz'setting thread stack size not supportedr )r)ÚsizerrrÚ stack_sizeNsrcCstƒS)N)rrrrrÚ _set_sentinelTsrc@sBeZdZdd„Zddd„ZeZdd„Zd d „Zd d „Zd d„Z dS)rcCs d|_dS)NF)Ú locked_status)ÚselfrrrÚ__init__cszLockType.__init__NrcCsH|dks |rd|_dS|js&d|_dS|dkr@ddl}|j|ƒdSdS)NTr F)rÚtimeZsleep)rZwaitflagZtimeoutr!rrrÚacquirefs  zLockType.acquirecCs |jƒdS)N)Úrelease)rÚtypÚvalÚtbrrrÚ__exit__€szLockType.__exit__cCs|js t‚d|_dS)NFT)rr)rrrrr#ƒszLockType.releasecCs|jS)N)r)rrrrÚlockedŒszLockType.lockedcCs*d|jr dnd|jj|jjtt|ƒƒfS)Nz<%s %s.%s object at %s>r(Zunlocked)rÚ __class__Ú __module__Ú __qualname__ÚhexÚid)rrrrÚ__repr__�s  zLockType.__repr__r)Nr) Ú__name__r*r+r r"Ú __enter__r'r#r(r.rrrrrXs   FTcCstr t‚ndadS)NT)rrrrrrrrœsl)N)Ú__all__Ú TIMEOUT_MAXÚ RuntimeErrorrrrrrrrÚobjectrrrrrrrrÚs    @