grthtrhthjhtyjytjytkergtrhtrjytjerhrfh4:24 29/09/2026 й¼] æã@sddlZejdkZddlZddlZddlZddlZddlZddlZddl Z ddlm Z Gdd„de ƒZ Gdd„de ƒZGdd „d e ƒZerddlZddlZddlZGd d „d ƒZn‹ddlZddlZddlZyddlZWnek rUddlZYnXeed d ƒZeedƒrƒejZn ejZddddddddddddd dgZer7ddlm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'ej(dddddd d!d"gƒGd#d$„d$e)ƒZ*gZ+d%d&„Z,d:Z-d;Z.d<Z/d*d+„Z0d,dd-d„Z1d.d„Z2d,dd/d„Z3Gd0d„de4ƒZ5d1dd,dd2d3d4d„Z6d5d6„Z7d7d„Z8d8d„Z9e4ƒZ:Gd9d„de4ƒZ;dS)=éNÚwin32)Ú monotonicc@seZdZdS)ÚSubprocessErrorN)Ú__name__Ú __module__Ú __qualname__©rrú//opt/alt/python35/lib64/python3.5/subprocess.pyr9s rc@sUeZdZdddd„Zdd„Zedd„ƒZejdd„ƒZdS) ÚCalledProcessErrorNcCs(||_||_||_||_dS)N)Ú returncodeÚcmdÚoutputÚstderr)Úselfr r r rrrr Ú__init__Cs   zCalledProcessError.__init__cCsd|j|jfS)Nz-Command '%s' returned non-zero exit status %d)r r )rrrr Ú__str__IszCalledProcessError.__str__cCs|jS)N)r )rrrr ÚstdoutLszCalledProcessError.stdoutcCs ||_dS)N)r )rÚvaluerrr rQs)rrrrrÚpropertyrÚsetterrrrr r <s  r c@sUeZdZdddd„Zdd„Zedd„ƒZejdd„ƒZdS) ÚTimeoutExpiredNcCs(||_||_||_||_dS)N)r Útimeoutr r)rr rr rrrr r_s   zTimeoutExpired.__init__cCsd|j|jfS)Nz'Command '%s' timed out after %s seconds)r r)rrrr reszTimeoutExpired.__str__cCs|jS)N)r )rrrr riszTimeoutExpired.stdoutcCs ||_dS)N)r )rrrrr rms)rrrrrrrrrrrr rXs  rc@s.eZdZdZdZdZdZdZdS)Ú STARTUPINFOrN)rrrÚdwFlagsÚ hStdInputÚ hStdOutputÚ hStdErrorÚ wShowWindowrrrr rxs rÚPIPE_BUFiÚ PollSelectorÚPopenÚPIPEÚSTDOUTÚcallÚ check_callÚgetstatusoutputÚ getoutputÚ check_outputÚrunÚDEVNULLÚCompletedProcess)ÚCREATE_NEW_CONSOLEÚCREATE_NEW_PROCESS_GROUPÚSTD_INPUT_HANDLEÚSTD_OUTPUT_HANDLEÚSTD_ERROR_HANDLEÚSW_HIDEÚSTARTF_USESTDHANDLESÚSTARTF_USESHOWWINDOWr+r,r-r.r/r0r1r2c@sLeZdZdZejdd„Zdd„Zdd„ZeZ eZ dS) ÚHandleFcCs |jsd|_||ƒdS)NT)Úclosed)rÚ CloseHandlerrr ÚClose©s  z Handle.ClosecCs,|jsd|_t|ƒStdƒ‚dS)NTzalready closed)r4ÚintÚ ValueError)rrrr ÚDetach®s   z Handle.DetachcCsd|jjt|ƒfS)Nz%s(%d))Ú __class__rr7)rrrr Ú__repr__´szHandle.__repr__N) rrrr4Ú_winapir5r6r9r;Ú__del__rrrrr r3¦s   r3c Csfx_tdd…D]M}|jdtjƒ}|dk rytj|ƒWqtk r]YqXqWdS)NÚ _deadstate)Ú_activeÚ_internal_pollÚsysÚmaxsizeÚremover8)ÚinstÚresrrr Ú_cleanupÁs  rFééécCs»ddddddddd d d d d dddddi }g}xM|jƒD]?\}}ttj|ƒ}|dkrO|jd||ƒqOWx"tjD]}|jd|ƒqœW|S)NÚdebugÚdÚoptimizeÚOÚdont_write_bytecodeÚBÚ no_user_siteÚsÚno_siteÚSÚignore_environmentÚEÚverboseÚvÚ bytes_warningÚbÚquietÚqrú-z-W)ÚitemsÚgetattrrAÚflagsÚappendÚ warnoptions)Ú flag_opt_mapÚargsÚflagÚoptrWrrr Ú_args_from_interpreter_flagsÕs"  rfrcOsSt||Ž�=}y|jd|ƒSWn|jƒ|jƒ‚YnXWdQRXdS)Nr)r ÚwaitÚkill)rÚ popenargsÚkwargsÚprrr r#ïs  cOsMt||Ž}|rI|jdƒ}|dkr:|d}t||ƒ‚dS)Nrcr)r#Úgetr )rirjÚretcoder rrr r$s   c Osxd|krtdƒ‚d|krV|ddkrV|jddƒrLdnd|dr FrGNrTcCs@tƒtjƒ|_d|_d|_|dkr:d}t|tƒsUtdƒ‚t rÖ|dk rst dƒ‚|dk p”|dk p”|dk }|t kr»|r²d}qÓd}q;|r;|r;t dƒ‚ne|t krèd}|r | r t j dtƒd}| dk r#t dƒ‚|d kr;t d ƒ‚||_d|_d|_d|_d|_d|_| |_|j|||ƒ\}}}}}}t r|dkrËtj|jƒd ƒ}|dkrïtj|jƒd ƒ}|dkrtj|jƒd ƒ}|dkrdtj|d |ƒ|_| rdtj|jd dd |dkƒ|_|dkr£tj|d|ƒ|_| r£tj|jƒ|_|dkrâtj|d|ƒ|_| râtj|jƒ|_d|_yD|j|||||| | | || ||||||||ƒWn xLtd|j|j|jfƒD])}y|j ƒWqWt!k rYqWXqWW|js4g}|t"kr¬|j#|ƒ|t"krÅ|j#|ƒ|t"krÞ|j#|ƒt$|dƒrý|j#|j%ƒx4|D],}yt&j |ƒWqt!k r/YqXqW‚YnXdS)NFrGzbufsize must be an integerz0preexec_fn is not supported on Windows platformsTzSclose_fds is not supported on Windows platforms if you redirect stdin/stdout/stderrzpass_fds overriding close_fds.z2startupinfo is only supported on Windows platformsrz4creationflags is only supported on Windows platformsÚwbÚ write_throughÚline_bufferingÚrbÚ_devnullrŠrŠrŠrŠrŠrŠrŠ)'rFÚ threadingÚLockÚ _waitpid_lockÚ_inputÚ_communication_startedÚ isinstancer7Ú TypeErrorÚ _mswindowsr8Ú_PLATFORM_DEFAULT_CLOSE_FDSÚwarningsÚwarnÚRuntimeWarningrcrwrrÚpidr roÚ _get_handlesÚmsvcrtÚopen_osfhandler9ÚioÚopenÚ TextIOWrapperÚ_closed_child_pipe_fdsÚ_execute_childÚfilterÚcloseÚOSErrorr!r`Úhasattrr’Úos)rrcÚbufsizeÚ executablerwrrÚ preexec_fnÚ close_fdsrˆÚcwdÚenvroÚ startupinfoÚ creationflagsÚrestore_signalsÚstart_new_sessionÚpass_fdsÚ any_stdio_setÚp2creadÚp2cwriteÚc2preadÚc2pwriteÚerrreadÚerrwriteÚfÚto_closeÚfdrrr r3s°                         '         (            zPopen.__init__cCs+|j|ƒ}|jddƒjddƒS)Nz r‰ú )ÚdecodeÚreplace)rr‹Úencodingrrr Ú_translate_newlinesÀszPopen._translate_newlinescCs|S)Nr)rrrr Ú __enter__ÄszPopen.__enter__c CsX|jr|jjƒ|jr,|jjƒz|jrE|jjƒWd|jƒXdS)N)rr©rrwrg)rrtrÚ tracebackrrr Ú__exit__Çs     zPopen.__exit__cCsI|js dS|jd|ƒ|jdkrEtdk rEtj|ƒdS)Nr>)Ú_child_createdr@r r?r`)rÚ_maxsizerrr r=Ós  z Popen.__del__cCs1t|dƒs*tjtjtjƒ|_|jS)Nr’)r«r¬r¤ÚdevnullÚO_RDWRr’)rrrr Ú _get_devnullÝszPopen._get_devnullcCsÑ|rky|jj|ƒWnNtk r.Yn=tk rj}z|jtjkrUn‚WYdd}~XnXy|jjƒWnNtk r�Yn=tk rÌ}z|jtjkr·n‚WYdd}~XnXdS)N)rwÚwriteÚBrokenPipeErrorrªÚerrnoÚEINVALr©)rrnÚexcrrr Ú _stdin_writeâs"  zPopen._stdin_writec CsJ|jr|rtdƒ‚|dkr×|j r×|j|j|jgjdƒdkr×d}d}|jr}|j|ƒnM|jr¥|jjƒ}|jjƒn%|jrÊ|jjƒ}|jjƒ|j ƒni|dk rót ƒ|}nd}z|j |||ƒ\}}Wdd|_X|j d|j |ƒƒ}||fS)Nz.Cannot send input after starting communicationrHTr) r—r8rwrrÚcountrÔÚreadr©rgÚ_timeÚ _communicateÚ_remaining_time)rrnrrrÚendtimeÚstsrrr rxûs. '       zPopen.communicatecCs |jƒS)N)r@)rrrr ry,sz Popen.pollcCs|dkrdS|tƒSdS)N)r×)rrÚrrr rÙ2s zPopen._remaining_timecCs5|dkrdStƒ|kr1t|j|ƒ‚dS)N)r×rrc)rrÚÚ orig_timeoutrrr Ú_check_timeout:s zPopen._check_timeoutc CsŒ|dkr(|dkr(|dkr(d Sd \}}d\}}d\}} |dkrªtjtjƒ}|dkrDtjddƒ\}} t|ƒ}tj| ƒnš|tkrêtjddƒ\}}t|ƒt|ƒ}}nZ|tkrtj |j ƒƒ}n6t |t ƒr/tj |ƒ}ntj |j ƒƒ}|j|ƒ}|dkr±tjtjƒ}|dkrKtjddƒ\} }t|ƒ}tj| ƒnš|tkrñtjddƒ\}}t|ƒt|ƒ}}nZ|tkrtj |j ƒƒ}n6t |t ƒr6tj |ƒ}ntj |j ƒƒ}|j|ƒ}|dkr¸tjtjƒ} | dkrgtjddƒ\} } t| ƒ} tj| ƒn¯|tkrøtjddƒ\}} t|ƒt| ƒ}} no|tkr |} nZ|tkr1tj |j ƒƒ} n6t |t ƒrRtj |ƒ} ntj |j ƒƒ} |j| ƒ} |||||| fS)NrGrrŠrŠrŠrŠrŠrŠ)rŠrŠrŠrŠrŠrŠrŠrŠ)rŠrŠrŠrŠ)rŠrŠrŠrŠ)rŠrŠ)r<Z GetStdHandler-Z CreatePiper3r5r!r)r¡Z get_osfhandlerÎr˜r7ÚfilenoÚ_make_inheritabler.r/r") rrwrrr¹rºr»r¼r½r¾Ú_rrr r Fsn$                    zPopen._get_handlescCs7tjtjƒ|tjƒddtjƒ}t|ƒS)NrrG)r<ZDuplicateHandleZGetCurrentProcessZDUPLICATE_SAME_ACCESSr3)rÚhandleÚhrrr rߎs   zPopen._make_inheritablecCs’t|tƒst|ƒ}|dkr0tƒ}d| ||fkrr|jtjO_| |_||_||_ | r½|jtj O_tj |_ t jjddƒ}dj||ƒ}z>tj||ddt| ƒ| |||ƒ \}}}}Wd| dkr| jƒ|d kr*|jƒ|d kr@|jƒt|dƒr_t j|jƒXd|_t|ƒ|_||_tj|ƒdS) NrGZCOMSPECzcmd.exez {} /c "{}"r’TrŠrŠrŠrŠ)r˜Ústrr‡rrr<r1rrrr2r0rr¬ÚenvironrlrsZ CreateProcessr7r6r«r©r’rÊr3Ú_handlerŸr5)rrcr®r¯r°r·r±r²r³r´rˆr¹rºr»r¼r½r¾Zunused_restore_signalsZunused_start_new_sessionZcomspecZhpZhtrŸÚtidrrr r§—sD                  zPopen._execute_childcCs@|jdkr9||jdƒ|kr9||jƒ|_|jS)Nr)r rå)rr>Z_WaitForSingleObjectZ_WAIT_OBJECT_0Z_GetExitCodeProcessrrr r@Ôs zPopen._internal_pollcCs¤|dk r|j|ƒ}|dkr3tj}nt|dƒ}|jdkr�tj|j|ƒ}|tjkrˆt|j |ƒ‚tj |jƒ|_|jS)Niè) rÙr<ZINFINITEr7r ÚWaitForSingleObjectråZ WAIT_TIMEOUTrrcÚGetExitCodeProcess)rrrÚZtimeout_millisr‚rrr rgås     z Popen.waitcCs!|j|jƒƒ|jƒdS)N)r`rÖr©)rZfhÚbufferrrr Ú _readerthread÷szPopen._readerthreadcCsò|jret|dƒ reg|_tjd|jd|j|jfƒ|_d|j_|jjƒ|j rÊt|dƒ rÊg|_ tjd|jd|j |j fƒ|_ d|j _|j jƒ|j rà|j |ƒ|jdk r)|jj|j|ƒƒ|jjƒr)t|j|ƒ‚|j dk rr|j j|j|ƒƒ|j jƒrrt|j|ƒ‚d}d}|jr�|j}|jjƒ|j r¼|j }|j jƒ|dk rÒ|d}|dk rè|d}||fS)NÚ _stdout_buffÚtargetrcTÚ _stderr_buffr)rr«rër“ÚThreadrêZ stdout_threadÚdaemonÚstartrríZ stderr_threadrwrÔrurÙÚis_aliverrcr©)rrnrÚrÜrrrrr rØüsF                  zPopen._communicatecCs˜|jdk rdS|tjkr/|jƒne|tjkrWtj|jtjƒn=|tjkrtj|jtjƒnt dj |ƒƒ‚dS)NzUnsupported signal: {}) r ÚsignalÚSIGTERMÚ terminateZ CTRL_C_EVENTr¬rhrŸZCTRL_BREAK_EVENTr8rs)rÚsigrrr Ú send_signal0s zPopen.send_signalc Csp|jdk rdSytj|jdƒWn?tk rktj|jƒ}|tjkr^‚||_YnXdS)NrG)r r<ZTerminateProcessråÚPermissionErrorrèZ STILL_ACTIVE)rÚrcrrr rô>s zPopen.terminatec Csºd\}}d\}}d \}} |dkr3n`|tkrTtjƒ\}}n?|tkro|jƒ}n$t|tƒr‡|}n |jƒ}|dkr¢n`|tkrÃtjƒ\}}n?|tkrÞ|jƒ}n$t|tƒrö|}n |jƒ}|dkrn“|tkr2tjƒ\}} nr|tkre|d krS|} q¤t j jƒ} n?|tkr€|jƒ} n$t|tƒr˜|} n |jƒ} |||||| fS) NrGrŠrŠ)rŠrŠrŠrŠ)rŠrŠrŠrŠ)rŠrŠrŠ) r!r¬Úpiper)rÎr˜r7rÞr"rAÚ __stdout__) rrwrrr¹rºr»r¼r½r¾rrr r SsJ                     c&"s»t|ttfƒr!|g}n t|ƒ}| rSddg|}ˆrSˆ|d<ˆdkri|d‰ˆ}tjƒ\}}g}x,|dkrµ|j|ƒtj|ƒ}qŠWx|D]}tj|ƒq½WzqzO|dk rQg}xh|j ƒD]Q\}}tj |ƒ}d|kr,t dƒ‚|j|dtj |ƒƒqùWnd}tj ˆƒ‰tj j ˆƒr„ˆf}n(t‡fdd†tj|ƒDƒƒ}t|ƒ}|j|ƒtj|||tttt|ƒƒƒ||| | | ||||||||ƒ|_d |_Wdtj|ƒXt|d dƒ}| dkrz| dkrz| |krztj| ƒ|dkr«| dkr«||kr«tj|ƒ|dkrÜ|dkrÜ||krÜtj|ƒ|dk rõtj|ƒd |_tƒ}x:tj|d ƒ}||7}| s?t|ƒd kr Pq WWdtj|ƒX|r·ytj|jdƒWntk r‡YnXy|j d dƒ\} }!}"Wn.t k r×d} d}!dt!|ƒ}"YnXtt"| j#dƒt$ƒ}#|"j#ddƒ}"t%|#t&ƒr«|!r«t|!dƒ}$|"dk}%|%rAd}"|$dkrœtj'|$ƒ}"|$t(j)krœ|%rˆ|"dt!|ƒ7}"n|"dt!|ƒ7}"|#|$|"ƒ‚|#|"ƒ‚dS)Nz/bin/shz-crrIó=z!illegal environment variable namec3s-|]#}tjjtj|ƒˆƒVqdS)N)r¬ÚpathruÚfsencode)Ú.0Údir)r®rr ú Ász'Popen._execute_child..Tr’rGiPÃó:rHsSubprocessErroró0sBad exception data from child: ÚasciiÚerrorsÚ surrogatepasséÚnoexecrpz: rŠrŠrŠrŠrŠrŠ)*r˜rãÚbytesÚlistr¬rùr`Údupr©r]rýr8rüÚdirnameÚtupleÚ get_exec_pathÚsetÚaddÚ_posixsubprocessÚ fork_execÚsortedÚmapr7rŸrÊr^r¦Ú bytearrayrÖrÚwaitpidÚChildProcessErrorÚsplitÚreprÚbuiltinsrÃrÚ issubclassrªÚstrerrorrÑÚENOENT)&rrcr®r¯r°r·r±r²r³r´rˆr¹rºr»r¼r½r¾rµr¶Úorig_executableÚ errpipe_readÚ errpipe_writeÚlow_fds_to_closeÚlow_fdÚenv_listÚkrWÚexecutable_listÚ fds_to_keepÚ devnull_fdÚ errpipe_dataÚpartÚexception_nameÚ hex_errnoÚerr_msgÚchild_exception_typeÚ errno_numÚchild_exec_never_calledr)r®r r§‰s¶           %     $ $ $            cCsl||ƒr||ƒ |_nI||ƒr=||ƒ|_n+||ƒr\||ƒ |_n tdƒ‚dS)NzUnknown child exit status!)r r)rrÛÚ _WIFSIGNALEDÚ _WTERMSIGÚ _WIFEXITEDÚ _WEXITSTATUSÚ _WIFSTOPPEDÚ _WSTOPSIGrrr Ú_handle_exitstatus s   zPopen._handle_exitstatuscCsç|jdkrà|jjdƒs%dSzªyN|jdk rA|jS||j|ƒ\}}||jkru|j|ƒWnUtk rÍ}z5|dk r£||_n|j|kr»d|_WYdd}~XnXWd|jjƒX|jS)NFr)r r•ÚacquirerŸr5rªrÑÚrelease)rr>Ú_waitpidÚ_WNOHANGÚ_ECHILDrŸrÛÚerrr r@s    c CsMytj|j|ƒ\}}Wn!tk rB|j}d}YnX||fS)Nr)r¬rrŸr)rÚ wait_flagsrŸrÛrrr Ú _try_waitBs    zPopen._try_waitc Cs¬|jdk r|jS|dk s.|dk re|dkrJtƒ|}n|dkre|j|ƒ}|dk r=d}x+|jjdƒræzI|jdk rŸP|jtjƒ\}}||jkrÔ|j |ƒPWd|jj ƒX|j|ƒ}|dkrt |j |ƒ‚t |d|dƒ}tj|ƒqzWnhxe|jdkr¤|j�F|jdk riP|jdƒ\}}||jkrš|j |ƒWdQRXq@W|jS)Ngü©ñÒMb@?FrrHgš™™™™™©?)r r×rÙr•r6r=r¬ÚWNOHANGrŸr5r7rrcÚminÚtimeÚsleep)rrrÚÚdelayrŸrÛÚ remainingrrr rgOs@      c#CsÐ|jre|j rey|jjƒWntk r8YnX|sey|jjƒWntk rdYnXd}d}|jsµi|_|jrœg|j|j<|jrµg|j|j<|jrÎ|j|j}|jrç|j|j}|j|ƒ|j r t |j ƒ}t ƒ�}|jr=|r=|j |jt jƒ|jr\|j |jt jƒ|jr{|j |jt jƒx¡|jƒr|j|ƒ}|dk rÃ|dkrÃt|j|ƒ‚|j|ƒ} |j||ƒx6| D].\} } | j|jkr­||j|jt…} y"|jtj| j| ƒ7_Wn/tk rt|j| jƒ| jjƒYqX|jt|j ƒkr|j| jƒ| jjƒqé| j|j|jfkrétj| jdƒ} | s|j| jƒ| jjƒ|j| jj| ƒqéWq~WWdQRX|j d|j|ƒƒ|dk rZdj!|ƒ}|dk rudj!|ƒ}|j"rÆ|dk r¢|j#||jj$ƒ}|dk rÆ|j#||jj$ƒ}||fS)Nri€rrq)%rwr—ÚflushrÐr©Ú_fileobj2outputrrÚ _save_inputr–Ú memoryviewÚ_PopenSelectorÚregisterÚ selectorsÚ EVENT_WRITEÚ EVENT_READÚget_maprÙrrcÚselectrÝÚfileobjÚ _input_offsetÚ _PIPE_BUFr¬rÏrÁÚ unregisterrrÖr`rgrurorÆrÅ)rrnrÚrÜrrÚ input_viewÚselectorrÚreadyÚkeyÚeventsÚchunkr‹rrr rØ€sŠ              "  &       cCs^|jrZ|jdkrZd|_||_|jrZ|dk rZ|jj|jjƒ|_dS)Nr)rwr–rProÚencoderÅ)rrnrrr rFßs   zPopen._save_inputcCs&|jdkr"tj|j|ƒdS)N)r r¬rhrŸ)rrõrrr röêscCs|jtjƒdS)N)röròró)rrrr rôðscCs|jtjƒdS)N)röròÚSIGKILL)rrrr rhõsz Popen.killrŠ)/rrrrÊr›rrÆrÇrÉrArBr=rÎrÔrxryrÙrÝršr rßr§r<rçZ WAIT_OBJECT_0rèr@rgrêrØrörôrhr¬Ú WIFSIGNALEDÚWTERMSIGÚ WIFEXITEDÚ WEXITSTATUSÚ WIFSTOPPEDÚWSTOPSIGr5rr>rÑZECHILDr=rFrrrr r s^ )  ‡     1    H =  4    6 „   " 1 _  rŠéþÿÿÿéýÿÿÿ),sl                 :     ,!2 I