
    Mh
                     ~    	 d dl mZ n&# e$ r d dlZd dlZej        ej        z  dfdZY nw xY w G d de          ZdS )    )whichNc                 f    d }t           j                                       r | |          r S dS |*t           j                            dt           j                  }|sdS |                    t           j                  }t          j	        dk    rt           j
        |vr |                    dt           j
                   t           j                            dd                              t           j                  }t           fd|D                       r g}n fd	|D             }n g}t                      }|D ]q}t           j                            |          }||vrL|                    |           |D ]4}	t           j                            ||	          }
 ||
|          r|
c c S 5rdS )
aS  Given a command, mode, and a PATH string, return the path which
        conforms to the given mode on the PATH, or None if there is no such
        file.
    
        `mode` defaults to os.F_OK | os.X_OK. `path` defaults to the result
        of os.environ.get("PATH"), or can be overridden with a custom search
        path.
    
        c                     t           j                            |           o4t          j        | |          ot           j                            |            S N)ospathexistsaccessisdir)fnmodes     O/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/ptyprocess/util.py_access_checkzwhich.<locals>._access_check   sD    GNN2&& .29R+>+> .GMM"---/    NPATHwin32r   PATHEXT c              3      K   | ]=}                                                     |                                           V  >d S r   )lowerendswith.0extcmds     r   	<genexpr>zwhich.<locals>.<genexpr>1   sA      HH399;;''		44HHHHHHr   c                     g | ]}|z   S  r   r   s     r   
<listcomp>zwhich.<locals>.<listcomp>4   s    666ss666r   )r   r   dirnameenvirongetdefpathsplitpathsepsysplatformcurdirinsertanysetnormcaseaddjoin)r   r   r   r   pathextfilesseendirnormdirthefilenames   `          r   r   r      s   	/ 	/ 	/ 7??3 	}S$'' 
4<:>>&"*55D 	4zz"*%%<7""9$$Ary))) jnnY3399"*EEG
 HHHHHHHHH 76666g666 EEuu 	$ 	$Cg&&s++Gd??!!!$ $ $G7<<W55D$}T400 $#$tr   c                       e Zd ZdZdS )PtyProcessErrorz%Generic error class for this package.N)__name__
__module____qualname____doc__r   r   r   r7   r7   F   s        ////r   r7   )	shutilr   ImportErrorr   r&   F_OKX_OK	Exceptionr7   r   r   r   <module>rA      s   B @ @ @NNNNNNN "') < < < < < <	@F0 0 0 0 0i 0 0 0 0 0s   	  ,,