
    ϶vg	                     f    d Z ddlZddlZddlZddlZddlmZ dZdZdZ	dZ
dZd	 Zdd
ZddZd ZdS )zX
Re-implementation of find_module and get_frozen_object
from the deprecated imp module.
    N)module_from_spec               c                     t          |t                    r#t          j                                        j        nt          j        j        } || |          S N)
isinstancelist	importlib	machinery
PathFinder	find_specutil)modulepathsfinders      L/var/www/pixelcanvas.ch/venv/lib/python3.11/site-packages/setuptools/_imp.pyr   r      sN     eT""	&	&&((22^% 
 6&%       c                    t          | |          }|t          d| z            |j        s5t          |d          r%t          j                            d|j                  }d}d}t          |j        t                    }|j
        dk    s&|r3t          |j        t          j        j                  rt          }d}dx}}n|j
        dk    s&|r2t          |j        t          j        j                  rt           }d}dx}}n|j        r|j
        }t"          j                            |          d	         }|t          j        j        v rd
nd}|t          j        j        v rt*          }t-          j        |          }nL|t          j        j        v rt2          }t/          |d          }n!|t          j        j        v rt6          }nd}dx}}|||||ffS )z7Just like 'imp.find_module()', but with package supportNCan't find %ssubmodule_search_locationsz__init__.pyfrozen zbuilt-inr   rrb)r   ImportErrorhas_locationhasattrr   r   spec_from_loaderloaderr   typeorigin
issubclassr   FrozenImporter	PY_FROZENBuiltinImporter	C_BUILTINospathsplitextSOURCE_SUFFIXES	PY_SOURCEtokenizeopenBYTECODE_SUFFIXESPY_COMPILEDEXTENSION_SUFFIXESC_EXTENSION)	r   r   speckindfilestaticr,   suffixmodes	            r   find_moduler<      s   VU##D|/F2333 K/K!L!L K~..}dkJJDDT**Fx 	 t{I$7$FGG 	  z!! 	"t{I$7$GHH 	" 		 {!!$''*	 3 CCCssY(888D=&&DDy*<<<Dd##DDy*===D d+++r   c                 ~    t          | |          }|st          d| z            |j                            |           S Nr   )r   r   r#   get_code)r   r   r6   s      r   get_frozen_objectr@   L   sB    VU##D 4/F2333;'''r   c                 h    t          | |          }|st          d| z            t          |          S r>   )r   r   r   )r   r   infor6   s       r   
get_modulerC   S   s:    VU##D 4/F2333D!!!r   r
   )__doc__importlib.machineryr   importlib.utilr+   r0   r   r/   r3   r5   r*   r(   r   r<   r@   rC    r   r   <module>rH      s    
         				  + + + + + +			! ! !-, -, -, -,`( ( ( (" " " " "r   