
    Mi                        S SK Jr  S SKrS SKrS SKJr  S SKJr  \R                  " \	5      r
S
S jrSS jrS
S jrSS	/rg)    )annotationsN)Path)ROOTc                *   [        U 5      n[        R                  " [        S5       o"R	                  U5       nUR                  5       R                  S5      sS S S 5        sS S S 5        $ ! , (       d  f       O= fS S S 5        g ! , (       d  f       g = f)Nrzutf-8)_get_path_within_zipzipfileZipFiler   openreaddecode)	full_pathsub_filezip_filefile_handlers       p/var/www/eduai.edurigo.com/storigo/production/storigo_env/lib/python3.13/site-packages/virtualenv/util/zipapp.pyr   r      s^    #I.H	s	#xx1HL  "))'2 2I1H	#	#1H1H	#	#	#s"   BA*	B*
A8	4B
Bc                >   [         R                  SX5        [        U 5      n[        R                  " [
        S5       nUR                  U5      nUR                  Ul        UR                  U[        UR                  5      5        S S S 5        g ! , (       d  f       g = f)Nzextract %s to %sr   )LOGGERdebugr   r	   r
   r   getinfonamefilenameextractstrparent)r   destr   r   infos        r   r   r      sk    
LL#Y5#I.H	s	#x)		s4;;/0 
$	#	#s   AB
Bc                    [        U 5      R                  5       n[        [        5      R                  5       n UR                  U5      nUR                  5       $ ! [         a  nSU SU 3n[        U5      UeS nAff = f)Nz
full_path=z should be within ROOT=)r   resolver   relative_to
ValueErrorRuntimeErroras_posix)r   resolvedrootrelativeexcmsgs         r   r   r      s     I&&(H:D)''-
 	  )8*$;D6B3S()s   A 
A<#A77A<r   r   )r   
str | Pathreturnr   )r   r)   r   r   r*   None)
__future__r   loggingr	   pathlibr   virtualenv.infor   	getLogger__name__r   r   r   r   __all__     r   <module>r5      sB    "     			8	$31  
r4   