+
    i                     H   ^ RI t ^ RIt^ RIt^ RIHtHtHtHtHtH	t	H
t
HtHt ^ RIHt ]! R4      P                  t^t^zt^tRt]P*                  P,                  tRR ltR t ! R R]P2                  4      t].]P6                  n        ]]P6                  n        ]].]P<                  n        ]]P<                  n        ]! ]4      ]P<                  n        ]]P@                  ! ]4      .]PB                  n        ]]PB                  n        ]! ]4      ]PB                  n        ]]P@                  ! ]4      .]PD                  n        ]]PD                  n        ]! ]4      ]PD                  n        . ]PF                  n        ]]PF                  n        ]]].]PH                  n        ]]PH                  n        ]! ]4      ]PH                  n        ]]]	].]PJ                  n        ]]PJ                  n        ]! ]4      ]PJ                  n        ] PL                  R	 4       t'R
 t(R t)RR lt*R# )    N)	BOOLCHARDWORDHANDLELONGLPWSTRMAX_PATHPDWORDULONG)SHELL_NAMESi   c                    a  V 3R  lpV# )c                 @   < V S8X  d   \         P                  ! 4       hV # N)ctypesWinError)retfuncargs	error_vals   &&&.lib/python3.14/site-packages/shellingham/nt.pycheck_check_handle.<locals>.check   s    )//##
     )r   r   s   f r   _check_handler      s    
 Lr   c                    a  V 3R  lpV# )c                    < V '       d   R # \         P                  ! 4       pVS8X  d   R# \         P                  ! V4      h)TF)r   GetLastErrorr   )r   r   r   codeexpecteds   &&& r   r   _check_expected.<locals>.check(   s1    ""$8ood##r   r   )r    r   s   f r   _check_expectedr"   '   s    $ Lr   c                       ] tR t^3tR]3R]3R]3R]P                  ! ]4      3R]3R]3R]3R]3R	]3R
]	]
,          33
tRtR# )ProcessEntry32dwSizecntUsageth32ProcessIDth32DefaultHeapIDth32ModuleID
cntThreadsth32ParentProcessIDpcPriClassBasedwFlags	szExeFiler   N)__name__
__module____qualname____firstlineno__r   r   POINTERr   r   r   r	   _fields___static_attributes__r   r   r   r$   r$   3   sf    	5	U	% 	fnnU34		u	&	4 	E	dXo&Hr   r$   c              /      "   V ! V/ VB p Vx  \         P                  V4       R #   \         P                  T4       i ; i5ir   )kernel32CloseHandle)fr   kwargshandles   &*, r   _handler<   g   s:     F%V$V$s   	A' A>Ac               #   V  "   \         P                  p \        V \        ^ 4      ;_uu_ 4       p\	        4       p\
        P                  ! V4      Vn        \         P                  W4      pV'       d   Vx  \         P                  W4      pK#   RRR4       R#   + '       g   i     R# ; i5i)r   N)
r7   CreateToolhelp32Snapshotr<   TH32CS_SNAPPROCESSr$   r   sizeofr%   Process32FirstProcess32Next)r9   snapentryr   s       r   _iter_processesrE   p   su     ))A	&	*	*d }}U+%%d2K((5C 	 
+	*	*	*s#   *B)AB/B
B)B&	 	B)c                     \        \        4      p \        P                  ! RVP                  4      p\
        P                  V ^ W!4      '       d   VP                  # V;P                  ^,          un        Kf  )T )r   r	   r   create_unicode_buffervaluer7   QueryFullProcessImageNameW)prochsize	path_buffs   &  r   _get_full_pathrN   {   sP    ?D
00TZZ@	..uaII??"

a
r   c                    \        4        Uu/ uF&  pVP                  VP                  VP                  3bK(  	  ppT ;'       g    \        P
                  ! 4       p \        ^ V^,           4       F  p W0,          w  rV\        T\        4      '       d   TP                  RR4      pTP                  R4      ^ ,          P                  4       pT\        9  d   Tp Kk  \        p\        \         P"                  T^ T 4      ;_uu_ 4       p	T\%        T	4      3uuRRR4       u # 	  R# u upi   \         d      R# i ; i  + '       g   i     K  ; i)r   mbcsreplace.N)rE   r'   r+   r.   osgetpidrangeKeyError
isinstancebytesdecode
rpartitionlowerr   !PROCESS_QUERY_LIMITED_INFORMATIONr<   r7   OpenProcessrN   )
pid	max_depthprocproc_map_ppid
executablenamekeyrK   s
   &&        r   	get_shellrg      s+    $%%D 	T55t~~FF%   

C1i!m$	'}D j%((#**69=J$$S)!,224{"C/X))33775./0 87+ %0 =  	( +	$ 877s#   ,D 1
D%D8%D54D58E	)r   )N
   )+
contextlibr   rS   ctypes.wintypesr   r   r   r   r   r   r	   r
   r   shellingham._corer   rI   INVALID_HANDLE_VALUEERROR_NO_MORE_FILESERROR_INSUFFICIENT_BUFFERr?   r\   windllr7   r   r"   	Structurer$   r8   argtypesrestyper>   errcheckr3   rA   rB   GetCurrentProcessIdr]   rJ   contextmanagerr<   rE   rN   rg   r   r   r   <module>rw      s     	
 
 
 * bz''    $* ! ==!!	V%%  "(   #   .3U^ ! ! *,2 ! ! )-:. ! ! * %+FNN>,J#K    "&   #2$     $*6>>.+I"J   !%   "1#    )+   %',   $!&e 4   %    -!    17vv/N # # ,.2 # # +/>0 # # ,
 % %6r   