ROOTPLOIT
Server: LiteSpeed
System: Linux server71.web-hosting.com 4.18.0-513.18.1.lve.el8.x86_64 #1 SMP Thu Feb 22 12:55:50 UTC 2024 x86_64
User: niphet (1079)
PHP: 5.3.29
Disabled: NONE
Upload Files
File: //usr/lib64/python3.8/__pycache__/subprocess.cpython-38.opt-2.pyc
U

e5d1@sddlZddlZddlZddlZddlZddlZddlZddlZddlZddl	Z	ddlm
Zddddddd	d
ddd
dddgZzddl
Z
ddlZdZWn0ek
rdZddlZddlZddlZYnXddlmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%e&ddddddddddddd d!d"d#d$d%d&gGd'dde'Z(Gd(dde(Z)Gd)dde(Z*erGd*ddZ+Gd+d,d,e,Z-n&e.ed-d.Z/e0ed/rej1Z2nej3Z2erdZ4d0d1Z5ngZ4d2d1Z5d3Z6d4Z7d5Z8d6d7Z9d8d9Z:dd:d;dZ;d<dZ<dd:d=d
Z=Gd>dde>Z?ddddd?d@dZ@dAdBZAdCdZBdDd	ZCdEdFZDeDZEGdGdde>ZFdS)HN)	monotonicPopenPIPESTDOUTcall
check_callgetstatusoutput	getoutputcheck_outputrunCalledProcessErrorDEVNULLSubprocessErrorTimeoutExpiredCompletedProcessTF)CREATE_NEW_CONSOLECREATE_NEW_PROCESS_GROUPSTD_INPUT_HANDLESTD_OUTPUT_HANDLESTD_ERROR_HANDLESW_HIDESTARTF_USESTDHANDLESSTARTF_USESHOWWINDOWABOVE_NORMAL_PRIORITY_CLASSBELOW_NORMAL_PRIORITY_CLASSHIGH_PRIORITY_CLASSIDLE_PRIORITY_CLASSNORMAL_PRIORITY_CLASSREALTIME_PRIORITY_CLASSCREATE_NO_WINDOWDETACHED_PROCESSCREATE_DEFAULT_ERROR_MODECREATE_BREAKAWAY_FROM_JOBrrrrrrrrSTARTUPINFOrrrrrrrr r!r"c@seZdZdS)rN)__name__
__module____qualname__r'r'"/usr/lib64/python3.8/subprocess.pyr`sc@s8eZdZd	ddZddZeddZejddZdS)
rNcCs||_||_||_||_dSN)
returncodecmdoutputstderr)selfr*r+r,r-r'r'r(__init__jszCalledProcessError.__init__cCsh|jrT|jdkrTzd|jt|jfWStk
rPd|j|jfYSXnd|j|jfSdS)NrzCommand '%s' died with %r.z)Command '%s' died with unknown signal %d.z.Command '%s' returned non-zero exit status %d.)r*r+signalZSignals
ValueErrorr.r'r'r(__str__pszCalledProcessError.__str__cCs|jSr)r,r2r'r'r(stdout|szCalledProcessError.stdoutcCs
||_dSr)r4r.valuer'r'r(r5s)NNr$r%r&r/r3propertyr5setterr'r'r'r(rcs

c@s8eZdZd	ddZddZeddZejddZdS)
rNcCs||_||_||_||_dSr))r+timeoutr,r-)r.r+r;r,r-r'r'r(r/szTimeoutExpired.__init__cCsd|j|jfS)Nz'Command '%s' timed out after %s seconds)r+r;r2r'r'r(r3s
zTimeoutExpired.__str__cCs|jSr)r4r2r'r'r(r5szTimeoutExpired.stdoutcCs
||_dSr)r4r6r'r'r(r5s)NNr8r'r'r'r(rs

c@s,eZdZdddddddddZddZdS)r#rNdwFlags	hStdInput
hStdOutput	hStdErrorwShowWindowlpAttributeListcCs0||_||_||_||_||_|p(dgi|_dS)Nhandle_listr<)r.r=r>r?r@rArBr'r'r(r/szSTARTUPINFO.__init__cCs@|j}d|kr"t|d|d<t|j|j|j|j|j|dS)NrCr<)	rBcopylistr#r=r>r?r@rA)r.Z	attr_listr'r'r(rDs
zSTARTUPINFO.copy)r$r%r&r/rDr'r'r'r(r#s	c@s2eZdZdZejfddZddZddZeZ	dS)	HandleFcCs|jsd|_||dS)NT)closed)r.CloseHandler'r'r(CloseszHandle.ClosecCs |jsd|_t|StddS)NTzalready closed)rGintr1r2r'r'r(Detachsz
Handle.DetachcCsd|jjt|fS)Nz%s(%d))	__class__r$rJr2r'r'r(__repr__szHandle.__repr__N)
r$r%r&rG_winapirHrIrKrM__del__r'r'r'r(rFs
rFZPIPE_BUFiPollSelectorcCsdSr)r'r'r'r'r(_cleanupsrQc	Cs\tdkrdStddD]>}|jtjd}|dk	rzt|Wqtk
rTYqXqdS)N
_deadstate)_active_internal_pollsysmaxsizeremover1)instresr'r'r(rQscCs*g}tjj}|dkr&|dd||S)Nr-O)rVflagsoptimizeappend)argsr7r'r'r("_optim_args_from_interpreter_flagss
rdcCsVddddddd}t}|D].\}}ttj|}|dkr |d	||q tjjrd|d
n$tjjrv|dtjjr|dtj	dd}tjj
}ttd
i}d|k}|dkr|dn|r|d|r|d|D]}|d|q|r
|ddD]B}||kr||}	|	dkr4|}
nd||	f}
|d|
fq|S)NdBSvbq)debugdont_write_bytecodeno_siteverbose
bytes_warningquietrr^z-Iz-Ez-s	_xoptionsdevzerror::BytesWarningzdefault::BytesWarningdefaultz-W)-Xrr)ZfaulthandlertracemallocZ
importtimeZshowalloccountZshowrefcountutf8Tz%s=%sru)
rditemsgetattrrVr`rbisolatedignore_environmentno_user_sitewarnoptionsrorXextend)Zflag_opt_maprcflagoptrhZwarnoptsroZxoptionsdev_moder7argr'r'r(_args_from_interpreter_flagssP






rr;c
OsLt||8}z|j|dWW5QRS|YnXW5QRXdS)Nr)rwaitkill)r;	popenargskwargspr'r'r(rLscOs6t||}|r2|d}|dkr(|d}t||dS)Nrcr)rgetr)rrretcoder+r'r'r(r]s



cOsbd|krtdd|krJ|ddkrJ|ds8|dr>d}nd}||d<t|t|dd	|jS)
Nr5z3stdout argument not allowed, it will be overridden.inputuniversal_newlinestextT)r5r;check)r1rrrr5)r;rremptyr'r'r(r
ps#c@s&eZdZdddZddZddZdS)	rNcCs||_||_||_||_dSr))rcr*r5r-)r.rcr*r5r-r'r'r(r/szCompletedProcess.__init__cCshd|jd|jg}|jdk	r4|d|j|jdk	rP|d|jdt|jd|S)Nz	args={!r}zreturncode={!r}zstdout={!r}zstderr={!r}z{}({})z, )	formatrcr*r5rbr-typer$join)r.rcr'r'r(rMs



zCompletedProcess.__repr__cCs |jrt|j|j|j|jdSr))r*rrcr5r-r2r'r'r(check_returncodesz!CompletedProcess.check_returncode)NN)r$r%r&r/rMrr'r'r'r(rs
	)rcapture_outputr;rcOs |dk	r&|ddk	rtdt|d<|r^|ddk	sF|ddk	rNtdt|d<t|d<t||}z|j||d\}}Wn^tk
r}	z,|tr|\|	_|	_	n|
W5d}	~	XYn|YnX|}
|r|
rt|
|j
||dW5QRXt|j
|
||S)Nstdinz/stdin and input arguments may not both be used.r5r-z@stdout and stderr arguments may not be used with capture_output.rr,r-)rr1rrcommunicaterr
_mswindowsr5r-rpollrrcr)rrr;rrrZprocessr5r-excrr'r'r(rs8cCsg}d}ttj|D]}g}|r*|dd|kp>d|kp>|}|rN|d|D]b}|dkrj||qR|dkr|dt|dg}|dqR|r||g}||qR|r|||r|||dqd|S)	NF 	"\z\"r)maposfsdecoderblenr~r)seqresultZ	needquoterZbs_bufcr'r'r(list2cmdline	s4




rc
Cslzt|ddtd}d}Wn.tk
rF}z|j}|j}W5d}~XYnX|dddkrd|dd}||fS)NT)shellrr-rr[
)r
rrr,r*)r+dataZexitcodeZexr'r'r(rRscCst|dSNrs)r)r+r'r'r(r	qs
c
CststtdsdStjdkr dSzjtd}|jdd}t|dkrHt|d	}t	t
t|dd
}tjdkr|dkr|d
krWdSWnttt
fk
rYnXdS)Nposix_spawnFdarwinTCS_GNU_LIBC_VERSIONrs)maxsplitrr.ZlinuxZglibc)r)rhasattrrrVplatformconfstrsplitrr1tuplerrJAttributeErrorOSError)ZverpartsZlibcversionr'r'r(_use_posix_spawn~s 



rc@seZdZdZdJdddddd	Zed
dZejddZd
dZddZ	ddZ
eje
jfddZddZddZdKddZddZddZdLdd ZdMd!d"Zd#d$Zerd%d&Zd'd(Zd)d*Zd+d,Zdejejej fd-d.Z!d/d0Z"d1d2Z#d3d4Z$d5d6Z%d7d8Z&e&Z'nd9d&Zd:d;Z(d<d,Ze)j*e)j+e)j,e)j-e)j.e)j/fd=d>Z0de)j1e)j2e3j4fd?d.Z!d@dAZ5dBd0Z"dCd4Z$dDdEZ6dFd6Z%dGd8Z&dHdIZ'dS)NrFr[NTrr')encodingerrorsrcCsltt|_d|_d|_|dkr(d}t|ts:tdt	rP|dk	rt
dn8|rh|shtdt
d}|
dk	rxt
d|dkrt
d	||_d|_d|_d|_d|_d|_||_||_|dk	r|dk	rt|t|krtd
||||\}}}}}}t	rN|dkrt|d}|dkr4t|d}|dkrNt|d}|pb|pb|pb||_d|_d|_|jr|dkrd}d}nd}z|dkrt |d
||_|jrtj!|jd|||d|_|dkrt |d||_|jrtj!|j||d|_|dkr:t |d||_|jr:tj!|j||d|_|"||||||
||
||	||||||||Wnt#d|j|j|jfD]*}z|$Wnt%k
rYnXq|js`g}|t&kr|'||t&kr|'||t&kr|'|t(|dr|'|j)|D]H}z*t	r8t|t*r8|+n
t,$|Wnt%k
rZYnXqYnXdS)NFr[zbufsize must be an integerz0preexec_fn is not supported on Windows platformszpass_fds overriding close_fds.Tz2startupinfo is only supported on Windows platformsrz4creationflags is only supported on Windows platformszlCannot disambiguate when both text and universal_newlines are supplied but different. Pass one or the other.g?rswb)
write_throughline_bufferingrrrb)rr_devnull)-rQ	threadingZLock
_waitpid_lock_input_communication_started
isinstancerJ	TypeErrorrr1warningswarnRuntimeWarningrcrr5r-pidr*rrboolr_get_handlesmsvcrtZopen_osfhandlerK	text_mode_sigint_wait_secs_closed_child_pipe_fdsioopen
TextIOWrapper_execute_childfiltercloserrrbrrrFrIr)r.rcbufsize
executablerr5r-
preexec_fn	close_fdsrcwdenvrstartupinfo
creationflagsrestore_signalsstart_new_sessionpass_fdsrrrp2creadp2cwritec2preadc2pwriteerrreaderrwriterfZto_closefdr'r'r(r/s



















zPopen.__init__cCs|jSr))rr2r'r'r(r~szPopen.universal_newlinescCst||_dSr))rr)r.rr'r'r(rscCs |||}|ddddS)Nz
r
)decodereplace)r.rrrr'r'r(_translate_newlinesszPopen._translate_newlinescCs|Sr)r'r2r'r'r(	__enter__szPopen.__enter__cCs|jr|j|jr |jdz|jr4|jW5|tkr|jdkrrz|j|jdWntk
rpYnXd|_dS|XdS)Nrr)	r5rr-KeyboardInterruptr_waitrrr)r.exc_typer7	tracebackr'r'r(__exit__s 


zPopen.__exit__cCsT|js
dS|jdkr(|d|jt|d|j|d|jdkrPtdk	rPt|dS)Nzsubprocess %s is still running)sourcerR)_child_createdr*rResourceWarningrUrTrb)r.Z_maxsizeZ_warnr'r'r(rOs

z
Popen.__del__cCs"t|dsttjtj|_|jS)Nr)rrrdevnullO_RDWRrr2r'r'r(_get_devnulls
zPopen._get_devnullc
Cs|rZz|j|WnDtk
r(Yn2tk
rX}z|jtjkrFnW5d}~XYnXz|jWnDtk
r|Yn2tk
r}z|jtjkrnW5d}~XYnXdSr))rwriteBrokenPipeErrorrerrnoZEINVALr)r.rrr'r'r(_stdin_writes"zPopen._stdin_writecCsT|jr|rtd|dkr|js|j|j|jgddkrd}d}|jrT||n6|jrp|j}|jn|jr|j}|j|	n|dk	rt
|}nd}zz||||\}}Wnhtk
r,|dk	rt
|j||}n|j}d|_z|j|dWntk
r$YnXYnXW5d|_X|j	||d}||fS)Nz.Cannot send input after starting communicationrTrr)rr1rr5r-countrreadrr_time_communicaterminr_remaining_timerr)r.rr;r5r-endtimesigint_timeoutstsr'r'r(rsH




zPopen.communicatecCs|Sr))rUr2r'r'r(rsz
Popen.pollcCs|dkrdS|tSdSr))r)r.r	r'r'r(r"szPopen._remaining_timecCsL|dkrdS|st|krHt|j||r0d|nd|r@d|ndddS)Nrr)rrrcr)r.r	orig_timeoutZ
stdout_seqZ
stderr_seqskip_check_and_raiser'r'r(_check_timeout*szPopen._check_timeoutcCs|dk	rt|}z|j|dWStk
r|dk	rLt|j||}n|j}d|_z|j|dWntk
r|YnXYnXdS)Nrr)rrrrrrr)r.r;r	r
r'r'r(r6s 
z
Popen.waitc		Cst|dd}t}trX|dkr.||j|dkrB||j|dkr||jnr|dkr~|dkr~||kr~|tj||dkr|dkr||kr|tj||dkr|dkr||kr|tj||dk	r|tj|W5QRXd|_dS)Nrr[T)	ry
contextlib	ExitStackrcallbackrIrrr)	r.rrrrrrZ
devnull_fdstackr'r'r(_close_pipe_fdsMs$
zPopen._close_pipe_fdscCs~|dkr|dkr|dkrdSd\}}d\}}d\}}	|dkrtttj}|dkrtdd\}}
t|}t|
nh|tkrtdd\}}t|t|}}n<|tkrt	|
}n$t|trt	|}nt	|
}||}|dkr*ttj}|dkrtdd\}
}t|}t|
nn|tkrXtdd\}}t|t|}}n@|tkrrt	|
}n&t|trt	|}nt	|
}||}|dkrttj}	|	dkrdtdd\}
}	t|	}	t|
n~|tkrtdd\}}	t|t|	}}	nP|tkr$|}	n@|tkr>t	|
}	n&t|trVt	|}	nt	|
}	||	}	||||||	fS)N)r[r[r[r[r[r[r[r[r)rNZGetStdHandlerZ
CreatePiperFrHrr
rZ
get_osfhandlerrrJfileno_make_inheritablerrr)r.rr5r-rrrrrr_r'r'r(rnst












zPopen._get_handlescCs&tt|tddtj}t|S)Nrrs)rNZDuplicateHandleZGetCurrentProcessZDUPLICATE_SAME_ACCESSrF)r.handlehr'r'r(rszPopen._make_inheritablecCstdd|DS)NcSs,h|]$}|d@dks$t|tjkr|qS))rNZGetFileTypeZFILE_TYPE_CHAR).0rr'r'r(	<setcomp>sz,Popen._filter_handle_list.<locals>.<setcomp>)rE)r.rCr'r'r(_filter_handle_listszPopen._filter_handle_listcCszt|trnNt|tr.|
r"tdt|g}n,t|tjrR|
rFtdt|g}nt|}|dk	rlt|}|dkr|t}n|	}d|||fk}|r|j
tjO_
||_
||_||_|j}t|od|ko|d}|s|r^|r^|dkri}|_t|dg}|d<|r0|t|t|t|g7}|||dd<|r^|sZtdtd}|
r|j
tjO_
tj|_|stjd}|stjdd	}tj|d
d}tj|st dtj|r|}n|}d
!||}|dk	rt|}t"#d||||z,t%||ddt||	|||	\}}}}W5|$|||
|||Xd|_&t'||_(||_)t*|dS)Nz$bytes args is not allowed on Windows0path-like args is not allowed when shell is truer[rCz?startupinfo.lpAttributeList['handle_list'] overriding close_fdsFZComSpecZ
SystemRootrZSystem32zcmd.exez:shell not found: neither %ComSpec% nor %SystemRoot% is setz
{} /c "{}"subprocess.PopenT)+rstrbytesrrrPathLikerr#rDr=rNrr>r?r@rBrrErrJrrrrrrrAenvironpathrisabsFileNotFoundErrorrrVauditrZ
CreateProcessrrF_handlerrH)r.rcrrrrrrrrrrrrrrrZunused_restore_signalsZunused_start_new_sessionZuse_std_handlesZattribute_listZhave_handle_listrCZcomspecZsystem_rootZhpZhtrtidr'r'r(rs







zPopen._execute_childcCs,|jdkr&||jd|kr&||j|_|jSNr)r*r()r.rSZ_WaitForSingleObjectZ_WAIT_OBJECT_0Z_GetExitCodeProcessr'r'r(rUHs
zPopen._internal_pollcCs^|dkrtj}nt|d}|jdkrXt|j|}|tjkrJt|j|t	|j|_|jS)Ni)
rNZINFINITErJr*WaitForSingleObjectr(ZWAIT_TIMEOUTrrcGetExitCodeProcess)r.r;Ztimeout_millisrr'r'r(rYs

zPopen._waitcCs|||dSr))rbrr)r.Zfhbufferr'r'r(
_readerthreadiszPopen._readerthreadcCs\|jrBt|dsBg|_tj|j|j|jfd|_d|j_|j|j	rt|dsg|_
tj|j|j	|j
fd|_d|j_|j|jr|
||jdk	r|j|||jrt|j||j	dk	r|j|||jrt|j|d}d}|jr|j}|j|j	r0|j
}|j	|r>|dnd}|rP|dnd}||fS)N_stdout_buff)targetrcT_stderr_buffr)r5rr/rZThreadr.Z
stdout_threadZdaemonstartr-r1Z
stderr_threadrrrrZis_aliverrcr)r.rr	rr5r-r'r'r(rnsJ










zPopen._communicatecCsl|jdk	rdS|tjkr"|nF|tjkr>t|jtjn*|tjkrZt|jtjnt	d
|dS)NzUnsupported signal: {})r*r0SIGTERM	terminateZCTRL_C_EVENTrrrZCTRL_BREAK_EVENTr1rr.Zsigr'r'r(send_signals




zPopen.send_signalcCsX|jdk	rdSzt|jdWn2tk
rRt|j}|tjkrH||_YnXdSr)r*rNZTerminateProcessr(PermissionErrorr,ZSTILL_ACTIVE)r.Zrcr'r'r(r4s

zPopen.terminatec
Cs,d\}}d\}}d\}}	|dkr"n@|tkr8t\}}n*|tkrJ|}nt|trZ|}n|}|dkrln@|tkrt\}}n*|tkr|}nt|tr|}n|}|dkrnf|tkrt\}}	nP|tkr|dkr|}	n
t	j
}	n.|tkr|}	nt|tr|}	n|}	||||||	fS)Nrr[)rrpiper
rrrJrrrV
__stdout__)
r.rr5r-rrrrrrr'r'r(rsP





cCs|dkrtj}i}|rJg}dD]"}
tt|
d}|dk	r||q||d<g}|||	fD]}|dkrX|tj|fqX|df|df|
dffD]"\}}|dkr|tj||fq|r||d<tj|||f||_d|_	|
|||||	|
dS)	N)SIGPIPEZSIGXFZSIGXFSZZ	setsigdefr[rrsrfile_actionsT)rr#ryr0rbPOSIX_SPAWN_CLOSEPOSIX_SPAWN_DUP2rrrr)r.rcrrrrrrrrrrZsigsetZsignameZsignumr<rZfd2r'r'r(_posix_spawns<zPopen._posix_spawnc)st|ttfr|g}n(t|tjr6|
r.td|g}nt|}|
rlttdrPdnd}|dg|}rl|d<dkr||dt	d|||t
rtjr|dkr|s|s|dkr|dks|d	kr|dks|d	kr|dks|d	kr|s|
||||||
|||
dS}t\}}g}|d
krT||t|}q2|D]}t|qXzJz|dk	rg}|D]>\}}t|}d|krtd||dt|qnd}ttjrf}ntfd
dt|D}t|}||t|||tttt||||||
|||||||||_d|_W5t|X| |||
|||t!}t"|d}||7}|rt#|dkrqqW5t|X|rz6t$|jd\} }!| |jkr|%|!ntj&|_'Wnt(k
rYnXz|)dd	\}"}#}$|$*}$Wn,tk
rbd}"d}#d+t|}$YnXt,t-|"*dt.}%t/|%t0r|#rt|#d}&|$dk}'|'rd}$|}(n|}(|&dkrt1|&}$|%|&|$|(|%|$dS)NrZgetandroidapilevelz/system/bin/shz/bin/shz-crrr[rr=z!illegal environment variable namec3s"|]}tjt|VqdSr))rr$rfsencode)rdirrr'r(	<genexpr>rsz'Popen._execute_child.<locals>.<genexpr>TiP:sSubprocessError0z#Bad exception data from child: {!r}asciiZnoexecr)2rr r!rr"rrErrVr'_USE_POSIX_SPAWNr$dirnamer?r8rbduprrxrAr1r
get_exec_pathsetadd_posixsubprocessZ	fork_execsortedrrJrrr	bytearrayrrwaitpid_handle_exitstatusrWr*ChildProcessErrorrrrrybuiltinsr
issubclassrstrerror))r.rcrrrrrrrrrrrrrrrrrZ
unix_shellZorig_executableZerrpipe_readZ
errpipe_writeZlow_fds_to_closeZlow_fdZenv_listkrhZexecutable_listZfds_to_keepZerrpipe_datapartrrZexception_nameZ	hex_errnoerr_msgZchild_exception_typeZ	errno_numZchild_exec_never_calledZerr_filenamer'rCr(r s"	
	













cCsL||r|||_n2||r*|||_n||r@|||_ntddS)NzUnknown child exit status!)r*r)r.rZ_WIFSIGNALEDZ	_WTERMSIGZ
_WIFEXITEDZ_WEXITSTATUSZ_WIFSTOPPEDZ	_WSTOPSIGr'r'r(rSszPopen._handle_exitstatusc
Cs|jdkr|jdsdSzz>|jdk	r4|jWWpS||j|\}}||jkrX||WnBtk
r}z$|dk	r|||_n|j|krd|_W5d}~XYnXW5|jX|jS)NFr)r*racquirereleaserrSrr)r.rSZ_waitpidZ_WNOHANGZ_ECHILDrrer'r'r(rUs 	



cCs>zt|j|\}}Wntk
r4|j}d}YnX||fSr*)rrRrrT)r.Z
wait_flagsrrr'r'r(	_try_waits
zPopen._try_waitc	Cs|jdk	r|jS|dk	rt|}d}|jdr~z>|jdk	rDW0q|tj\}}||jkrn|	|WqW5|jX|
|}|dkrt|j|t
|d|d}t|q&n\|jdkr|jB|jdk	rW5QRq|d\}}||jkr
|	|W5QRXq|jS)NgMb@?Frrg?)r*rrr[r\r^rWNOHANGrrSrrrcrtimesleep)r.r;r	ZdelayrrZ	remainingr'r'r(rs6







c
Cs"|jrX|jsXz|jWntk
r.YnX|sXz|jWntk
rVYnXd}d}|jsi|_|jr~g|j|j<|jrg|j|j<|jr|j|j}|jr|j|j}|||j	rt
|j	}t}|jr|r||jt
j|jr|jjs||jt
j|jr6|jjs6||jt
j|r||}|dk	rz|dkrz|j||||ddtd||}	||||||	D]\}
}|
j|jkr6||j|jt}z|jt|
j|7_Wn,tk
r
||
j|
jYn*X|jt|j	kr||
j|
jnP|
j|j|jfkrt|
jd}
|
st||
j|
j|j|
j|
qq6W5QRX|j ||d|dk	rd!|}|dk	rd!|}|j"r|dk	r|#||jj$|jj%}|dk	r|#||jj$|jj%}||fS)NrT)r
zN_check_timeout(..., skip_check_and_raise=True) failed to raise TimeoutExpired.irr)&rrflushrrZ_fileobj2outputr5r-_save_inputr
memoryview_PopenSelectorregister	selectorsZEVENT_WRITErGZ
EVENT_READZget_maprrRuntimeErrorselectZfileobj
_input_offset	_PIPE_BUFrrrZ
unregisterrrrbrrrrrr)r.rr	rr5r-Z
input_viewZselectorr;ZreadykeyZeventschunkrr'r'r(r's







$





cCsF|jrB|jdkrBd|_||_|dk	rB|jrB|j|jj|jj|_dSr*)rrrjrencoderr)r.rr'r'r(rcszPopen._save_inputcCs|jdkrt|j|dSr))r*rrrr5r'r'r(r6s
cCs|tjdSr))r6r0r3r2r'r'r(r4scCs|tjdSr))r6r0SIGKILLr2r'r'r(rsz
Popen.kill)r[NNNNNTFNNNNrTFr')NN)F)N)7r$r%r&rr/r9rr:rrrrVrWrrrOrrrrrrrrrrrrrrNr+Z
WAIT_OBJECT_0r,rUrr.rr6r4rr?rWIFSIGNALEDWTERMSIG	WIFEXITEDWEXITSTATUS
WIFSTOPPEDWSTOPSIGrSrRr_rZECHILDr^rcr'r'r'r(rs.


D	

H	
|
26'

#
)f)GrUrrrr`r0rVrrrrr__all__rrNrModuleNotFoundErrorrOrirgrrrrrrrrrrrrrrrr r!r"r~	Exceptionrrrr#rJrFryrkrrPreZSelectSelectorrTrQrrr
rdrrrr
objectrrrrr	rrIrr'r'r'r(<module>,sP

%	


;3"EI
/