
    4Քh4m                       S r SSKJr  SSKrSSKrSSKrSSKrSSKrSSKrSSK	r
SSKrSSKrSSKrSSKrSSKrSSKJr  SSKJrJrJrJr  SSKJr  SSKJrJrJr  SSKJrJrJ r J!r!J"r"J#r#J$r$J%r%  SS	K&J'r'J(r(  SS
K)J*r*  SSK+J,r,  SSK-J.r.  SSK/J0r0  SSK1J2r2  SSK3J4r4J5r5J6r6  SSK7J8r8J9r9  SSK:J;r;J<r<  SSK=J>r>J?r?  SSK@JArAJBrBJCrCJDrD  SSKEJFrFJGrGJHrHJIrI  SSKJJKrK   " S S\#5      rL\R                  " \N5      rO\"" S\P5      rQ\R\Q\P\$\S\P4   4   rTS0S1S jjrUS2S jrVS3S jrWS4S jrXS5S jrYS6S jrZ    S7S jr[S8S  jr\S9S! jr]            S:S" jr^S;S# jr_ " S$ S%5      r` " S& S'5      ra " S( S)\05      rbS<S* jrc " S+ S,\*5      rd    S=                 S>S- jjre\R                  S?S. j5       rg    S=                 S@S/ jjrhg)AzFSupport for installing and building the "wheel" binary package format.    )annotationsN)urlsafe_b64encode)	GeneratorIterableIteratorSequence)Message)chainfilterfalsestarmap)IOAnyBinaryIOCallableNewTypeProtocolUnioncast)ZipFileZipInfo)ScriptMaker)get_export_entry)canonicalize_name)InstallationError)get_major_minor_version)BaseDistributionFilesystemWheelget_wheel_distribution)DIRECT_URL_METADATA_NAME	DirectUrl)SCHEME_KEYSScheme)adjacent_tmp_filereplace)StreamWrapper
ensure_dir	hash_file	partition)current_umaskis_within_directory2set_extracted_file_to_default_mode_plus_executablezip_item_is_executable)parse_wheelc                  >    \ rS rSr% S\S'   S\S'   S\S'   SS jrS	rg
)File9   
RecordPathsrc_record_pathstr	dest_pathboolchangedc                    g N selfs    ^/var/www/auris/envauris/lib/python3.13/site-packages/pip/_internal/operations/install/wheel.pysave	File.save>   s        r9   NreturnNone)__name__
__module____qualname____firstlineno____annotations__r=   __static_attributes__r9   r?   r<   r/   r/   9   s    NMr?   r/   r1   c                    [        X5      u  p#S[        UR                  5       5      R                  S5      R	                  S5      -   nU[        U5      4$ )z?Return (encoded_digest, length) for path using hashlib.sha256()zsha256=latin1=)r'   r   digestdecoderstripr3   )path	blocksizehlengthrL   s        r<   rehashrS   H   sI    $*IA*188:6==hGNNsSSFCK  r?   c                    U SSS.$ )zHReturn keyword arguments to properly open a CSV file
in the given mode.
 utf-8)modenewlineencodingr9   )rW   s    r<   csv_io_kwargsrZ   O   s     RW==r?   c                Z   [         R                  R                  U 5      (       d   e[        U S5       nUR	                  5       nUR                  S5      (       d
   SSS5        g[        R                  R                  [        R                  " 5       5      nSU-   [         R                  R                  S5      -   nUR                  5       nSSS5        [        U S5       nUR                  W5        UR                  W5        SSS5        g! , (       d  f       NF= f! , (       d  f       g= f)	zIReplace #!python with #!/path/to/python
Return True if file was changed.
rbs   #!pythonNFs   #!asciiwbT)osrO   isfileopenreadline
startswithsys
executableencodegetfilesystemencodinglinesepreadwrite)rO   script	firstlineexenamerests        r<   
fix_scriptro   V   s    
 77>>$	dD	VOO%	##K00 
	 ..''(A(A(CDGObjj&7&7&@@	{{} 
 
dD	VYT 
  
	 
	 s   (D$A'D#D
D
D*c                H    U R                  SS5      R                  5       S:H  $ )NzRoot-Is-PurelibrU   true)getlower)metadatas    r<   wheel_root_is_purelibru   j   s"    <<)2.446&@@r?   c                    0 n0 nU R                  5        HW  nUR                  S:X  a  UR                  XR                  '   M-  UR                  S:X  d  M?  UR                  X#R                  '   MY     X4$ )Nconsole_scriptsgui_scripts)iter_entry_pointsgroupvaluename)distrw   rx   entry_points       r<   get_entrypointsr   n   so    OK--/ 110;0A0AO,,--/,7,=,=K(()	 0
 ''r?   c           	        U (       d  g[         R                  " [        5      nU  HT  n[        R                  R                  U5      n[        R                  R                  U5      nX   R                  U5        MV     [        R                  R                  SS5      R                  [        R                  5       Vs/ s H\  n[        R                  R                  [        R                  R                  U5      5      R                  [        R                  5      PM^     nnUR!                  [        R                  R                  [        R                  R                  [        R                  R                  ["        R$                  5      5      5      5        UR'                  5        VV s0 s HI  u  p0[        R                  R                  [        R                  R                  U5      5      U;  d  MG  X0_MK     nnn U(       d  g/ nUR'                  5        Hm  u  p9[)        U	5      n
[+        U
5      S:X  a
  SU
S    S3nO,SR-                  S	R/                  U
SS
 5      S-   U
S
   -   5      nUR!                  SU SU S35        Mo     Sn[+        U5      S:X  a!  UR!                  UR-                  S5      5        O UR!                  UR-                  S5      5        [1        S [        R                  R                  SS5      R                  [        R                  5       5       5      nU(       a  SnUR!                  U5        SR/                  U5      $ s  snf s  sn nf )zDetermine if any scripts are not on PATH and format a warning.
Returns a warning message if one or more scripts are not on PATH,
otherwise None.
NPATHrU      zscript r   z iszscripts {} are, z and zThe z installed in 'z' which is not on PATH.zeConsider adding {} to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.zthis directoryzthese directoriesc              3  B   #    U  H  o(       d  M  US    S:H  v   M     g7f)r   ~Nr9   ).0is     r<   	<genexpr>4message_about_scripts_not_on_PATH.<locals>.<genexpr>   s       IQ!Is   
ziNOTE: The current PATH contains path(s) starting with `~`, which may not be expanded by all applications.
)collectionsdefaultdictsetr_   rO   dirnamebasenameaddenvironrr   splitpathsepnormcasenormpathrN   sepappendrd   re   itemssortedlenformatjoinany)scriptsgrouped_by_dirdestfile
parent_dirscript_namer   not_warn_dirswarn_for	msg_linesdir_scriptssorted_scripts
start_textlast_line_fmtwarn_for_tildetilde_warning_msgs                  r<   !message_about_scripts_not_on_PATHr   y   s   
  +6*A*A#*FNWW__X.
gg&&x0"&&{3  +11"**==A 	))!,-44RVV<=   
))"''//#..*IJK
 $2#7#7#9%#9J77BGG,,Z89N 	
#9  %
  I#+>>#3
$*;$7~!#">!#4"5S9J)00		."-.8>";MMJ 	:,oj\9PQ	
 $4	C  9~--.>?@--.ABC  ZZ^^FB7==bjjI N = 	 	*+ 99Yk%s   <A#M*AM4Mc                &    [        S U  5       5      $ )a  Normalize the given rows of a RECORD file.

Items in each row are converted into str. Rows are then sorted to make
the value more predictable for tests.

Each row is a 3-tuple (path, hash, size) and corresponds to a record of
a RECORD file (see PEP 376 and PEP 427 for details).  For the rows
passed to this function, the size can be an integer as an int or string,
or the empty string.
c              3  B   #    U  H  u  po1U[        U5      4v   M     g 7fr8   )r3   )r   record_pathhash_sizes       r<   r   &_normalized_outrows.<locals>.<genexpr>   s!      HO,DKeSY's   )r   )outrowss    r<   _normalized_outrowsr      s    *  HO  r?   c                @    [         R                  R                  X5      $ r8   )r_   rO   r   )r   lib_dirs     r<   _record_to_fs_pathr      s    77<<--r?   c                p   [         R                  R                  U 5      S   R                  5       [         R                  R                  U5      S   R                  5       :X  a  [         R                  R	                  X5      n U R                  [         R                  R                  S5      n [        SU 5      $ )Nr   /r1   )r_   rO   
splitdrivers   relpathr$   r   r   )rO   r   s     r<   _fs_to_record_pathr      s}     
ww$"((*bgg.@.@.I!.L.R.R.TTwwt-<<S)Dd##r?   c                   / nU  H  n[        U5      S:  a  [        R                  SU5        [        SUS   5      nUR	                  Xw5      nX;   a  [        [        X5      5      u  pO,[        U5      S:  a  US   OSn	[        U5      S:  a  US   OSn
UR                  XU
45        M     U H.  n[        X5      n[        U5      u  pUR                  XU
45        M0     UUR                  5        Vs/ s H  oSS4PM	     sn-   $ s  snf )zS
:param installed: A map from archive RECORD path to installation RECORD
    path.
   z,RECORD line has more than three elements: %sr1   r   r   rU      )
r   loggerwarningr   poprS   r   r   r   values)old_csv_rows	installedr6   	generatedr   installed_rowsrowold_record_pathnew_record_pathrL   rR   frO   installed_record_paths                 r<   get_csv_rows_for_installedr      s    -/Ns8a<NNI3O|SV4#--I%#$6$PQNFF"3x!|SVF"3x!|SVF?@  !!-tV45  ENEUEUEWEW,AB'EW   s   3Dc                   U R                  5       n / nU R                  SS5      nU(       a  S[        R                  ;  a  UR	                  SU-   5        [        R                  R                  SS5      S:w  a(  UR	                  S[        R                  S    SU 35        UR	                  S[        5        SU 35        U  Vs/ s H#  n[        R                  " S	U5      (       d  M!  UPM%     nnU H  nX	 M     U R                  S
S5      nU(       a  S[        R                  ;  a  UR	                  SU-   5        UR	                  S[        5        SU 35        U  Vs/ s H#  n[        R                  " SU5      (       d  M!  UPM%     nnU H  nX	 M     UR                  [        SR                  U R                  5       5      5        U$ s  snf s  snf )z_
Given the mapping from entrypoint name to callable, return the relevant
console script specs.
pipNENSUREPIP_OPTIONSzpip = rU   
altinstallr   z = zpip(\d+(\.\d+)?)?$easy_installzeasy_install = zeasy_install-zeasy_install(-\d+\.\d+)?${} = {})copyr   r_   r   r   rr   rd   version_infor   rematchextendr   r   r   )consolescripts_to_generate
pip_scriptkpip_epeasy_install_scripteasy_install_eps          r<   get_console_script_specsr   	  s    llnGB UD)Jbjj0&&x*'<=::>>-r2lB&&S-=-=a-@,AZL'QR""S)@)B(C3zl#ST$KW1F(J!WKA
 !++nd;bjj0&&'8;N'NO""356c:M9NO	

 
!"((+G"KAw 	 
 !A
 ! wy'7'7IJ+ L
s    G
'G
 GGc                  B    \ rS rSr        SS jrSS jrS	S jrSrg)
ZipBackedFileiT  c                6    Xl         X l        X0l        SU l        g NF)r2   r4   	_zip_filer6   )r;   r2   r4   zip_files       r<   __init__ZipBackedFile.__init__U  s      /"!r?   c                L    U R                   R                  U R                  5      $ r8   )r   getinfor2   r:   s    r<   _getinfoZipBackedFile._getinfo]  s    ~~%%d&:&:;;r?   c                P   [         R                  R                  U R                  5      (       a   [         R                  " U R                  5        U R                  5       n[        U R                  S5       nUR                  S:  aQ  U R                  R                  U5       n[        UR                  S5      n[        R                  " X2U5        S S S 5        S S S 5        [        U5      (       a  [        U R                  5        g g ! , (       d  f       N== f! , (       d  f       NF= f)Nr^   r      )r_   rO   existsr4   unlinkr   ra   	file_sizer   minshutilcopyfileobjr,   r+   )r;   zipinfodestr   rP   s        r<   r=   ZipBackedFile.save`  s     77>>$..))IIdnn%--/ $..$'4  1$^^((1Q #G$5$5{ CI&&q	: 2 ( "'**>t~~N +	 21 ('s$   5,D!.DD
D	D
D%)r   r6   r4   r2   N)r2   r1   r4   r3   r   r   rA   rB   )rA   r   r@   )rC   rD   rE   rF   r   r   r=   rH   r9   r?   r<   r   r   T  s2    )69EL	<Or?   r   c                  (    \ rS rSrSS jrSS jrSrg)
ScriptFileiz  c                    Xl         U R                   R                  U l        U R                   R                  U l        SU l        g r   )_filer2   r4   r6   )r;   files     r<   r   ScriptFile.__init__{  s1    
#zz99--r?   c                l    U R                   R                  5         [        U R                  5      U l        g r8   )r   r=   ro   r4   r6   r:   s    r<   r=   ScriptFile.save  s     

!$..1r?   )r   r6   r4   r2   N)r   r/   rA   rB   r@   )rC   rD   rE   rF   r   r=   rH   r9   r?   r<   r   r   z  s    2r?   r   c                  ,   ^  \ rS rSrSU 4S jjrSrU =r$ )MissingCallableSuffixi  c                ,   > [         TU ]  SU S35        g )NzInvalid script entry point: z - A callable suffix is required. See https://packaging.python.org/specifications/entry-points/#use-for-scripts for more information.)superr   )r;   r~   	__class__s     r<   r   MissingCallableSuffix.__init__  s!    *;- 8 	
r?   r9   )r~   r3   rA   rB   )rC   rD   rE   rF   r   rH   __classcell__r  s   @r<   r  r    s    
 
r?   r  c                d    [        U 5      nUb"  UR                  c  [        [        U5      5      eg g r8   )r   suffixr  r3   )specificationentrys     r<   _raise_for_invalid_entrypointr    s2    ]+EU\\1#CJ// 2r?   c                  `   ^  \ rS rSr\R
                  " S5      r S     SU 4S jjjrSrU =r	$ )PipScriptMakeri  z        import sys
        from %(module)s import %(import_name)s
        if __name__ == '__main__':
            if sys.argv[0].endswith('.exe'):
                sys.argv[0] = sys.argv[0][:-4]
            sys.exit(%(func)s())
c                8   > [        U5        [        TU ]	  X5      $ r8   )r  r  make)r;   r  optionsr  s      r<   r  PipScriptMaker.make  s     	&m4w|M33r?   r9   r8   )r  r3   r  zdict[str, Any] | NonerA   	list[str])
rC   rD   rE   rF   textwrapdedentscript_templater  rH   r  r  s   @r<   r  r    sA     oo		O DH4 4+@4	4 4r?   r  c           
     |  ^^:^;^<^=^>^?^@ [        X5      u  p[        U	5      (       a  UR                  m@OUR                  m@0 m?[	        5       m;/ n
 S       S U;U?U@4S jjjnS!S jnS"U4S jjm:      S#U:4S jjn      S$U:U4S jjnS!S jn[        [        [           UR                  5       5      n[        UU5      n[        UU5      u  nnU" UT@5      n[        UU5      nS!S jn[        UU5      u  nnU" X5      n[        UU5      n[        UU5      n[        [        T5      [        U 5      5      n[!        U5      u  m<m>S%U<U>4S	 jjn[        UU5      n[        UU5      n[        ["        U5      n[        UU5      n[	        5       nU H  n[$        R&                  R)                  UR*                  5      n U U;  a  [-        U 5        UR/                  U 5        UR1                  5         U" UR2                  UR*                  UR4                  5        M     S&U?U@4S
 jjn!S'S jn"U(       Ga0  [6        R8                  " [:        R<                  " [>        R@                  5      5       n#[B        RD                  " 5          [B        RF                  " S5        U!" 5        H  n$[H        RJ                  " U$SSS9n%U%(       d  M"  U"" U$5      n&[$        R&                  RM                  U&5      (       d   e[        SU&RO                  [$        R&                  RP                  S5      5      n'U" U'U&5        M     SSS5        SSS5        [R        RU                  W#RW                  5       5        [Y        SURZ                  5      n(SU(l.        S1U(l/        SU(l0        [c        T<5      n)[        [e        SRf                  T>Ri                  5       5      5      n*U(Rk                  U)5      n+U
Rm                  U+5        U
Rm                  U(Rk                  U*SS05      5        U(       a#  [o        U+5      n,U,b  [R        Rq                  U,5        S[s        5       ) -  m=[6        Rt                  S(U=4S jj5       n-[$        R&                  Rw                  T@U5      n.[$        R&                  Rw                  U.S5      n/U-" U/5       n0U0Ry                  S5        SSS5        U
R{                  U/5        Ubt  [$        R&                  Rw                  U.[|        5      n1U-" U15       n2U2Ry                  UR                  5       R                  S5      5        SSS5        U
R{                  U15        U(       aG  [$        R&                  Rw                  U.S5      n3[        U3S5          SSS5        U
R{                  U35        UR                  S5      n4[        [        R                  " U4R                  5       5      5      n5[        U5T?T;U
T@S9n6[$        R&                  Rw                  U.S5      n7U-" U740 [        S5      D6 n8[        R                  " [        SU85      5      n9U9R                  [        U65      5        SSS5        g! , (       d  f       GN/= f! , (       d  f       GN9= f! , (       d  f       GN= f! , (       d  f       GNe= f! , (       d  f       GN)= f! , (       d  f       g= f))aY  Install a wheel.

:param name: Name of the project to install
:param wheel_zip: open ZipFile for wheel being installed
:param scheme: Distutils scheme dictating the install directories
:param req_description: String used in place of the requirement, for
    logging
:param pycompile: Whether to byte-compile installed Python files
:param warn_script_location: Whether to check that scripts are installed
    into a directory on PATH
:raises UnsupportedWheel:
    * when the directory holds an unpacked wheel with incompatible
      Wheel-Version
    * when the .dist-info dir does not match the wheel
r1   c                Z   > [        UT5      nUTU '   U(       a  TR                  U5        gg)z6Map archive RECORD paths to installation RECORD paths.N)r   r   )srcfiler   modifiednewpathr6   r   r   s       r<   record_installed(_install_wheel.<locals>.record_installed  s/     %Xw7$	'KK  r?   c                $    U R                  S5      $ )Nr   )endswithrO   s    r<   is_dir_path#_install_wheel.<locals>.is_dir_path  s    }}S!!r?   c                `   > [        X5      (       d  Sn[        UR                  TX5      5      eg )NzRThe wheel {!r} has a file {!r} trying to install outside the target directory {!r})r*   r   r   )dest_dir_pathtarget_pathmessage
wheel_paths      r<   assert_no_path_traversal0_install_wheel.<locals>.assert_no_path_traversal  s:    "=>>5  $z;F  ?r?   c                    >^ ^ SUUU 4S jjnU$ )Nc                   > [         R                  R                  U 5      n[         R                  R                  TU5      nT" TU5        [	        XT5      $ r8   )r_   rO   r   r   r   )r   normed_pathr4   r)  r   r   s      r<   make_root_scheme_fileM_install_wheel.<locals>.root_scheme_file_maker.<locals>.make_root_scheme_file  sB    ''**;7KT;7I$T95 BBr?   r   r1   rA   r/   r9   )r   r   r.  r)  s   `` r<   root_scheme_file_maker._install_wheel.<locals>.root_scheme_file_maker  s    	C 	C %$r?   c                l   >^ ^ [          Vs0 s H  o"[        X5      _M     snmSUUUU 4S jjnU$ s  snf )Nc           
       > [         R                  R                  U 5      n UR                  [         R                  R                  S5      u  p#n T
U   n[         R                  R                  Xd5      nT	" Xh5        [        XT5      $ ! [
         a    ST SU < S3n[        U5      ef = f! [         a6    SR                  [        T
5      5      nST SU SU < SU S	3	n[        U5      ef = f)
Nr   zUnexpected file in z: zG. .data directory contents should be named like: '<scheme key>/<path>'.r   zUnknown scheme key used in z (for file zW). .data directory contents should be in subdirectories named with a valid scheme key ())r_   rO   r   r   r   
ValueErrorr   KeyErrorr   r   r   )r   r-  _
scheme_keydest_subpathr'  scheme_pathvalid_scheme_keysr4   r)  scheme_pathsr(  r   s            r<   make_data_scheme_fileM_install_wheel.<locals>.data_scheme_file_maker.<locals>.make_data_scheme_file  s   ''**;7K1.9.?.?Q.O+|
1*:6 [?I$[< BB+  1)*R GM M  (001  1$(IIf\.B$C!1*R
| L!!, 0-.a1  (001s   -B B+  B(+A C+r0  )r!   getattr)r   schemekeyr>  r=  r)  r(  s   `   @r<   data_scheme_file_maker._install_wheel.<locals>.data_scheme_file_maker  s<     >II[cWV11[I	C 	C6 %$; Js   1c                J    U R                  SS5      S   R                  S5      $ )Nr   r   r   .data)r   r   r!  s    r<   is_data_scheme_path+_install_wheel.<locals>.is_data_scheme_path  s#    zz#q!!$--g66r?   c                    U R                  SS5      n[        U5      S:  =(       a#    US   R                  S5      =(       a    US   S:H  $ )Nr   r   r   rF  r   r   )r   r   r   )rO   partss     r<   is_script_scheme_path-_install_wheel.<locals>.is_script_scheme_path   sB    

3"5zA~V%("3"3G"<VqYAVVr?   c                |  > U R                   n[        R                  R                  U5      nUR	                  5       R                  S5      (       a  US S nOVUR	                  5       R                  S5      (       a  US S nO,UR	                  5       R                  S5      (       a  US S nOUnUT;   =(       d    UT;   $ )Nz.exez
-script.pyiz.pya)r4   r_   rO   r   rs   r   )r   rO   r|   	matchnamer   guis       r<   is_entrypoint_wrapper-_install_wheel.<locals>.is_entrypoint_wrapper3  s     ~~ww%::<  ((Sb	IZZ\""<00Tc
IZZ\""6**Sb	IIG#7yC'77r?   c               3  $  >#    [        [        TR                  5       5      5       He  n [        R                  R                  TU 5      n[        R                  R                  U5      (       d  MI  UR                  S5      (       d  Ma  Uv   Mg     g 7f)Nz.py)r   r   r   r_   rO   r   r`   r   )installed_pathfull_installed_pathr   r   s     r<   pyc_source_file_paths-_install_wheel.<locals>.pyc_source_file_pathsV  sk     
 %S)9)9);%<=N"$'',,w"G77>>"566&//66%% >s   BBc                @    [         R                  R                  U 5      $ )z8Return the path the pyc file would have been written to.)	importlibutilcache_from_sourcer!  s    r<   pyc_output_path'_install_wheel.<locals>.pyc_output_pathc  s    ~~//55r?   ignoreT)forcequietr   NrU   r   rP  i  c              ;     >#    [        U 40 UD6 nUv   S S S 5        [        R                  " WR                  T5        [	        UR                  U 5        g ! , (       d  f       NF= f7fr8   )r#   r_   chmodr|   r$   )rO   kwargsr   generated_file_modes      r<   _generate_file&_install_wheel.<locals>._generate_file  sH     t.v.!G /
,- /.s   A&AA A&
A#A&	INSTALLERs   pip
rV   	REQUESTEDr^   RECORD)r   r6   r   r   wzIO[str])F)r  r1   r   r3   r  r5   rA   rB   )rO   r1   rA   r5   )r%  r3   r&  r3   rA   rB   )r   r   r   r3   rA   Callable[[RecordPath], File])r   r   rA  r"   rA   rk  )r   r/   rA   r5   )rA   zGenerator[str, None, None])rO   r3   rA   r3   )rO   r3   rc  r   rA   zGenerator[BinaryIO, None, None])Kr-   ru   purelibplatlibr   r   listr1   namelistr   r(   mapr
   r   r   r   r   r   r_   rO   r   r4   r&   r   r=   r2   r6   
contextlibredirect_stdoutr%   from_streamrd   stdoutwarningscatch_warningsfilterwarnings
compileallcompile_filer   r$   r   r   debuggetvaluer  r   clobbervariantsset_moder   r   r   r   make_multipler   r   r   r)   contextmanagerr   rj   r   r   to_jsonrf   ra   	read_textcsvreader
splitlinesr   rZ   writer	writerowsr   )Ar|   	wheel_zipr(  rA  	pycompilewarn_script_location
direct_url	requestedinfo_dirrt   r   r  r"  r1  rC  rG  paths
file_pathsroot_scheme_pathsdata_scheme_pathsr.  filesrK  other_scheme_pathsscript_scheme_pathsr>  other_scheme_filesdistributionrQ  script_scheme_filesexisting_parentsr   r   rV  r\  rt  rO   successpyc_pathpyc_record_pathmakerr   gui_scripts_to_generategenerated_console_scriptsmsgre  dest_info_dirinstaller_pathinstaller_filedirect_url_pathdirect_url_filerequested_pathrecord_textrecord_rowsrowsr   record_filer  r)  r6   r   rd  rP  r   r   sA     `                                                       @@@@@@@r<   _install_wheelr    s   2 %Y5HX&&.... /1I"uGI >C!!'*!6:!	! !"	%	%!$	%	%	% % %#) %	% %  %D7 j!9#5#5#78E[%0J+45H*+U((29gF 57HIEW /80/++ 39E24FG%+,E *
#$L #<0LGS8 8  +.2+ &&;=PQj*=>%,-Eu WW__T^^4
--z"  ,		--t~~t||L & &6
 ''%%cjj1
((*''113D(55d$dSGw#24#8!ww~~h7777*.((*:*:277;;*L+ )(C 4 +
 	V__&'40E EM
 TEN
 EN 37;"79+;+;SYY[#IJ % 3 34G H./U(()@5$-PQ/0IJ?NN3=?"22  GGLL(3M WW\\-=N		'>X& 
(^$ '',,}6NOO,!!*"4"4"6"="=g"FG -) m[A.$' ((((2Kszz+"8"8":;<K%D '',,}h7K		:}S'9	:k DK89,T23	 
;	:s +*
 
x 
(	' -, ('$ 
;	:s[   &Y%<<Y<A/Y+Y%"Y7</Z	7Z;Z-
Y"	Y%%
Y47
Z	
Z
Z*-
Z;c              #  |   #     S v   g ! [          a&  nSU  SUR                  S    3n[        U5      UeS nAff = f7f)Nz	For req: z. r   )r   args)req_descriptioner'  s      r<   req_error_contextr    sD     0 0o.b<(a/0s   <	 <
9!49<c                    [        USS9 n[        U5         [        U UUUUUUUS9  S S S 5        S S S 5        g ! , (       d  f       N= f! , (       d  f       g = f)NT)
allowZip64)r|   r  r(  rA  r  r  r  r  )r   r  r  )	r|   r(  rA  r  r  r  r  r  zs	            r<   install_wheelr    sU     
	-/%#%9%#	 0 
.	-// 
.	-s   A
9A

A	A


A)r   )rO   r3   rP   intrA   ztuple[str, str])rW   r3   rA   zdict[str, Any])rO   r3   rA   r5   )rt   r	   rA   r5   )r}   r   rA   z%tuple[dict[str, str], dict[str, str]])r   zSequence[str]rA   z
str | None)r   zIterable[InstalledCSVRow]rA   zlist[tuple[str, str, str]])r   r1   r   r3   rA   r3   )rO   r3   r   r3   rA   r1   )r   zlist[list[str]]r   zdict[RecordPath, RecordPath]r6   zset[RecordPath]r   r  r   r3   rA   zlist[InstalledCSVRow])r   zdict[str, str]rA   r  )r  r3   rA   rB   )TTNF)r|   r3   r  r   r(  r3   rA  r"   r  r5   r  r5   r  DirectUrl | Noner  r5   rA   rB   )r  r3   rA   zGenerator[None, None, None])r|   r3   r(  r3   rA  r"   r  r3   r  r5   r  r5   r  r  r  r5   rA   rB   )i__doc__
__future__r   r   rx  rq  r  rY  loggingos.pathr_   r   r   rd   r  ru  base64r   collections.abcr   r   r   r   email.messager	   	itertoolsr
   r   r   typingr   r   r   r   r   r   r   r   zipfiler   r   pip._vendor.distlib.scriptsr   pip._vendor.distlib.utilr   pip._vendor.packaging.utilsr   pip._internal.exceptionsr   pip._internal.locationsr   pip._internal.metadatar   r   r   pip._internal.models.direct_urlr   r    pip._internal.models.schemer!   r"   pip._internal.utils.filesystemr#   r$   pip._internal.utils.miscr%   r&   r'   r(   pip._internal.utils.unpackingr)   r*   r+   r,   pip._internal.utils.wheelr-   r/   	getLoggerrC   r   r3   r1   tupler  InstalledCSVRowrS   rZ   ro   ru   r   r   r   r   r   r   r   r   r   r  r  r  r  r  r  r  r9   r?   r<   <module>r     s   L "    
    	  
   $ C C ! 1 1	 	 	 % 3 5 9 6 ; 
 P ; E T T  28  
		8	$\3'

CsCx89!>(A(E P&4.$!+  	
  @HV#O #OL	2 	2
- 
04[ 44 !%#'^4
^4^4 ^4 	^4
 ^4 ^4 !^4 ^4 
^4B	 0 0 !%#'
  	
   !  
r?   