ó
    Ñ]jF  ã                  óÊ  • 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JrJ	r	J
r
  SSKJr  SSKJr  SSK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Jr  SSKJr  SSKJr  SSK J!r!  SSK"J#r#  SSK$J%r%  \(       a  SSK&J'r'  SSK(J)r)  \RT                  " \+5      r,\	" SS9r-\	" SS9r.\	" SS9r/\	" SS9r0                  S.S jr1              S/S jr2S0S jr3Sr4S1S jr5S2S jr6 " S S 5      r7 " S! S"5      r8                S3S# jr9              S4S$ jr:              S5S% jr;S6S& jr<S'r=S7S( jr>0 r?S8S) jr@S8S* jrAS9S+ jrBS:S, jrC/ S-QrDg);z%Periodically update bundled versions.é    )ÚannotationsN)ÚdatetimeÚ	timedeltaÚtimezone)Úgroupby)ÚPath)Úcopy2)ÚDEVNULLÚPopen)Údedent)ÚThread)ÚTYPE_CHECKING)ÚURLError)Úurlopen)ÚAppDataDiskFolder)ÚBUNDLE_SUPPORT)ÚWheel)ÚCREATE_NO_WINDOW)Ú	Generator)ÚAppDataé   )Úhoursé   )Údaysé   c                ól  ^^• U(       a  [        XX4TU5        [        R                  " [        R                  S9mSU4S jjn[
        R                  TX5      n	Uc¢  [        U	R                  S S9 H‡  u  p«[        U5      n[        U4S jU 5       5      nU H\  nUb3  [        UR                  5      R                  UR                  :X  a  Us  s  $ UR                  TU5      (       d  MR  U" U5      s  s  $    M‰     U$ U	R                   H'  nUR                  R                   U:X  d  M  U" U5      s  $    U$ )N©Útzc                óŒ   >• [        TR                  U R                  -  5      n[        R	                  SU(       a  SOSU5        U$ )Nzusing %supdated wheel %szperiodically Ú )r   ÚhouseÚfilenameÚLOGGERÚdebug)ÚverÚupdated_wheelÚapp_datas     €Úc/home/mande/repo/quber/.venv/lib/python3.13/site-packages/virtualenv/seed/wheels/periodic_update.pyÚ_update_wheelÚ&periodic_update.<locals>._update_wheel5   s7   ø€ Ü˜hŸn™n¨s¯|©|Ñ;Ó<ˆÜ�‰Ð/ÆM±ÐWYÐ[hÔiØÐó    c                ó4   • U R                   R                  SS $ )Nr   é   )ÚwheelÚversion_tuple)Úvs    r(   Ú<lambda>Ú!periodic_update.<locals>.<lambda><   s   € ¸a¿g¹g×>SÑ>SÐTUÐVWÑ>Xr+   )Úkeyc              3  óV   >#   • U  H  oR                  T5      (       d  M  Uv •  M      g 7f©N)Úuse)Ú.0ÚversionÚnows     €r(   Ú	<genexpr>Ú"periodic_update.<locals>.<genexpr>?   s   øé € Ð+cÂ;¸×R]ÑR]Ð^a×Rb¯G©GÂ;ùs   ƒ) 	))r%   Ú
NewVersionÚreturnr   )Úhandle_auto_updater   r9   r   ÚutcÚ	UpdateLogÚfrom_app_datar   ÚversionsÚlistÚanyr   r"   Únamer6   r.   r8   )ÚdistributionÚ
of_versionÚfor_py_versionr.   Úsearch_dirsr'   Údo_periodic_updateÚenvr)   Úu_logÚ_ÚgroupÚall_patchesÚignore_grace_period_minorr8   r9   s        `         @r(   Úperiodic_updaterQ   &   s  ù€ ö Ü˜<¸ÈXÐWZÔ[ä
�,Š,œ(Ÿ,™,Ñ
'€C÷ô
 ×#Ñ# H¨lÓK€EØÑÜ §¡Ñ4XÔY‰HˆAä˜u›+ˆKÜ(+Ô+cÁ;Ó+cÓ(cÐ%Û&�ØÑ$¬¨g×.>Ñ.>Ó)?×)DÑ)DÈÏ
É
Ó)RØ ”LØ—;‘;˜sÐ$=×>Ó>Ù(¨Ó1Ô1ó	 'ñ	 Zð €Lð	 —~”~ˆGØ�}‰}×$Ñ$¨
Õ2Ù$ WÓ-Ò-ñ &ð €Lr+   c           
     óD  • UR                  X5      n[        R                  UR                  5       5      nUR                  (       a[  SUl        [        R                  " [        R                  S9Ul
        UR                  UR                  5       5        [        XX#USUS9  g g )NTr   )ÚperiodicrK   )Úembed_update_logr@   Ú	from_dictÚreadÚneeds_updaterS   r   r9   r   r?   ÚstartedÚwriteÚto_dictÚtrigger_update)rF   rH   r.   rI   r'   rK   rT   rL   s           r(   r>   r>   M   s~   € ð  ×0Ñ0°ÓNÐÜ×ÑÐ 0× 5Ñ 5Ó 7Ó8€EØ××ØˆŒÜ Ÿš¬¯©Ñ5ˆŒØ×Ñ˜uŸ}™}›Ô/Ü�|°UÈÐ\`ÐfiÓjð	 r+   c                ó^  ^ • UR                  T R                  U5      n[        R                  ST R                  UR
                  5        [        R                  UR                  5       5      n[        U 4S jUR                   5       5      (       a,  [        R                  ST R                  UR
                  5        g [        T R                  [        R                  " [        R                   S9S S5      nUR                  R#                  U5        UR%                  UR'                  5       5        g )Nzadding %s information to %sc              3  óT   >#   • U  H  oR                   TR                  :H  v •  M     g 7fr5   )r"   rE   )r7   r8   r.   s     €r(   r:   Ú*add_wheel_to_update_log.<locals>.<genexpr>b   s   øé € Ð
Hº¨g×Ñ˜uŸz™zÖ)ºùs   ƒ%(z%s already present in %sr   Údownload)rT   rF   r#   r$   rE   Úfiler@   rU   rV   rD   rB   Úwarningr<   r   r9   r   r?   ÚappendrY   rZ   )r.   rH   r'   rT   rL   r8   s   `     r(   Úadd_wheel_to_update_logrc   ^   sÍ   ø€ Ø×0Ñ0°×1CÑ1CÀ^ÓTÐÜ
‡L�LÐ.°·
±
Ð<L×<QÑ<QÔRÜ×ÑÐ 0× 5Ñ 5Ó 7Ó8€EÜ
Ô
H¸¿ºÓ
H×HÑHÜ�‰Ð1°5·:±:Ð?O×?TÑ?TÔUØä˜Ÿ™¤X§\¢\´X·\±\Ñ%BÀDÈ*ÓU€GØ	‡N�N×Ñ˜'Ô"Ø×Ñ˜5Ÿ=™=›?Õ+r+   z%Y-%m-%dT%H:%M:%S.%fZc                ó6   • U c  S $ U R                  [        5      $ r5   )ÚstrftimeÚDATETIME_FMT©Úvalues    r(   Údump_datetimeri   n   s   € Ø‘=ˆ4ÐB e§n¡n´\Ó&BÐBr+   c                óx   • U c  S $ [         R                  " U [        5      R                  [        R
                  S9$ )N©Útzinfo)r   Ústrptimerf   Úreplacer   r?   rg   s    r(   Úload_datetimero   r   s3   € Ø‘=ˆ4Ði¤h×&7Ò&7¸¼|Ó&L×&TÑ&TÔ\d×\hÑ\hÐ&TÐ&iÐir+   c                  ó|   • \ rS rSrSS jr\SS j5       rSS jrSSS jjrSS jr	SS jr
SS jr\SS	 j5       rS
rg)r<   év   c                ó4   • Xl         X l        X0l        X@l        g r5   ©r"   Ú
found_dateÚrelease_dateÚsource)Úselfr"   rt   ru   rv   s        r(   Ú__init__ÚNewVersion.__init__w   s   € Ø ŒØ$ŒØ(ÔØ�r+   c                óP   • U " US   [        US   5      [        US   5      US   S9$ )Nr"   rt   ru   rv   rs   )ro   )ÚclsÚ
dictionarys     r(   rU   ÚNewVersion.from_dict}   s9   € áØ 
Ñ+Ü$ Z°Ñ%=Ó>Ü& z°.Ñ'AÓBØ˜hÑ'ñ	
ð 	
r+   c                ó„   • U R                   [        U R                  5      [        U R                  5      U R                  S.$ )N©r"   ru   rt   rv   )r"   ri   ru   rt   rv   ©rw   s    r(   rZ   ÚNewVersion.to_dict†   s4   € àŸ™Ü)¨$×*;Ñ*;Ó<Ü'¨¯©Ó8Ø—k‘kñ	
ð 	
r+   c                óæ   • U R                   S:X  a  gU R                   S:X  aP  U R                  U[        -
  :  d  U(       a2  U(       d*  U R                  =(       d    U R                  nX-
  [        :¬  $ gg)NÚmanualTrS   F)rv   rt   ÚGRACE_PERIOD_CIru   ÚGRACE_PERIOD_MINOR)rw   r9   rP   Úignore_grace_period_ciÚcompare_froms        r(   r6   ÚNewVersion.useŽ   s\   € Ø�;‰;˜(Ó"ØØ�;‰;˜*Ó$¨$¯/©/¸CÄ/Ñ<QÓ*QÖUkÞ,Ø#×0Ñ0×C°D·O±O�ØÑ)Ô-?Ñ?Ð?ØØr+   c           
     óœ   • U R                   R                   SU R                   SU R                   SU R                   SU R
                   S3
$ )Nz
(filename=z), found_date=z, release_date=z	, source=Ú))Ú	__class__Ú__name__r"   rt   ru   rv   r€   s    r(   Ú__repr__ÚNewVersion.__repr__˜   sP   € à�~‰~×&Ñ&Ð' z°$·-±-°ÀÈtÏÉÐN_ð `Ø ×-Ñ-Ð.¨i¸¿¹°}ÀAðGð	
r+   c                ón   ^ ^• [        T 5      [        T5      :H  =(       a    [        UU 4S jS 5       5      $ )Nc              3  óV   >#   • U  H  n[        TU5      [        TU5      :H  v •  M      g 7fr5   )Úgetattr)r7   ÚkÚotherrw   s     €€r(   r:   Ú$NewVersion.__eq__.<locals>.<genexpr>Ÿ   s(   øé € ð 1
Ú;o°aŒG�D˜!Ó¤¨¨qÓ 1Ö1Ò;oùs   ƒ&)r   )ÚtypeÚall©rw   r“   s   ``r(   Ú__eq__ÚNewVersion.__eq__ž   s1   ù€ Ü�D‹zœT %›[Ñ(÷ 
¬Sõ 1
Ù;oó1
ó .
ð 	
r+   c                ó   • X:X  + $ r5   © r—   s     r(   Ú__ne__ÚNewVersion.__ne__£   s   € ØÒ"Ð"r+   c                ó>   • [        [        U R                  5      5      $ r5   )r   r   r"   r€   s    r(   r.   ÚNewVersion.wheel¦   s   € ä”T˜$Ÿ-™-Ó(Ó)Ð)r+   rs   N)
r"   Ústrrt   r   ru   údatetime | Nonerv   r    r=   ÚNone)r|   údict[str, str | None]r=   r<   )r=   r£   )FF)r9   r   rP   Úboolr†   r¤   r=   r¤   )r=   r    )r“   Úobjectr=   r¤   )r=   r   )rŒ   Ú
__module__Ú__qualname__Ú__firstlineno__rx   ÚclassmethodrU   rZ   r6   r�   r˜   rœ   Úpropertyr.   Ú__static_attributes__r›   r+   r(   r<   r<   v   sH   † ôð ó
ó ð
ô
öô
ô
ô
#ð ó*ó ó*r+   r<   c                  ó‚   • \ rS rSr          S
S jr\SS j5       r\SS j5       rSS jr\	SS j5       r
SS jrSrg	)r@   é«   c                ó4   • Xl         X l        X0l        X@l        g r5   )rX   Ú	completedrB   rS   )rw   rX   r¯   rB   rS   s        r(   rx   ÚUpdateLog.__init__¬   s   € ð ŒØ"ŒØ ŒØ �r+   c           
     ó  • Uc  0 nU " [        UR                  S5      5      [        UR                  S5      5      UR                  S/ 5       Vs/ s H  n[        R                  U5      PM     snUR                  S5      5      $ s  snf )NrX   r¯   rB   rS   )ro   Úgetr<   rU   )r{   r|   r0   s      r(   rU   ÚUpdateLog.from_dict´   sx   € àÑØˆJÙÜ˜*Ÿ.™.¨Ó3Ó4Ü˜*Ÿ.™.¨Ó5Ó6Ø.8¯n©n¸ZÈÔ.LÓMÒ.L¨ŒZ×!Ñ! !Ö$Ñ.LÑMØ�N‰N˜:Ó&ó	
ð 	
ùò Ns   ÁBc                ób   • UR                  X#5      R                  5       nU R                  U5      $ r5   )rT   rV   rU   )r{   r'   rF   rH   Úraw_jsons        r(   rA   ÚUpdateLog.from_app_data¿   s*   € à×,Ñ,¨\ÓJ×OÑOÓQˆØ�}‰}˜XÓ&Ð&r+   c                óÊ   • [        U R                  5      [        U R                  5      U R                  U R                   Vs/ s H  oR                  5       PM     snS.$ s  snf )N)rX   r¯   rS   rB   )ri   rX   r¯   rS   rB   rZ   )rw   Úrs     r(   rZ   ÚUpdateLog.to_dictÄ   sJ   € ä$ T§\¡\Ó2Ü& t§~¡~Ó6ØŸ™Ø.2¯mªmÓ<ªm¨Ÿ™ž©mÑ<ñ	
ð 	
ùò =s   ÁA 
c                óÒ   • [         R                  " [        R                  S9nU R                  c  U R                  U5      $ XR                  -
  [        ::  a  gU R                  U5      $ )Nr   F)r   r9   r   r?   r¯   Ú_check_startÚUPDATE_PERIOD©rw   r9   s     r(   rW   ÚUpdateLog.needs_updateÌ   sR   € ä�lŠlœhŸl™lÑ+ˆØ�>‰>Ñ!Ø×$Ñ$ SÓ)Ð)Ø—‘Ñ¤=Ó0ØØ× Ñ  Ó%Ð%r+   c                óV   • U R                   S L =(       d    XR                   -
  [        :„  $ r5   )rX   ÚUPDATE_ABORTED_DELAYr½   s     r(   r»   ÚUpdateLog._check_startÕ   s#   € Ø�|‰|˜tÐ#×P s¯\©\Ñ'9Ô<PÑ'PÐPr+   )r¯   rS   rX   rB   N)
rX   r¡   r¯   r¡   rB   úlist[NewVersion]rS   zbool | Noner=   r¢   )r|   údict[str, object] | Noner=   r@   )r'   r   rF   r    rH   r    r=   r@   )r=   zdict[str, object])r=   r¤   )r9   r   r=   r¤   )rŒ   r¦   r§   r¨   rx   r©   rU   rA   rZ   rª   rW   r»   r«   r›   r+   r(   r@   r@   «   sv   † ð!Ø&ð!Ø3Bð!ØN^ð!Øjuð!à	ô!ð ó
ó ð
ð ó'ó ð'ô
ð ó&ó ð&÷Qr+   r@   c                óX  • Uc  S O[        UR                  5      n[        R                  S[	        S5      R                  5       R                  XU[        U5      U Vs/ s H  n[        U5      PM     snU5      /n	UR                  S5      S:H  n
U
(       a  S O[        nX»S.nU
(       d  [        R                  S:X  a	  [        US'   [        U	40 UD6n[        R                  SU Uc  S	OS
UR                   3UUR                  5        U
(       a  UR!                  5         g SUl        g s  snf )Nz-czñ
        from virtualenv.report import setup_report, MAX_LEVEL
        from virtualenv.seed.wheels.periodic_update import do_update
        setup_report(MAX_LEVEL, show_pid=True)
        do_update({!r}, {!r}, {!r}, {!r}, {!r}, {!r})
        Ú"_VIRTUALENV_PERIODIC_UPDATE_INLINEÚ1)ÚstdoutÚstderrÚwin32ÚcreationflagszWtriggered periodic upgrade of %s%s (for python %s) via background process having PID %dr    z==r   )r    ÚpathÚsysÚ
executabler   ÚstripÚformatr²   r
   Úplatformr   r   r#   Úinfor8   ÚpidÚcommunicateÚ
returncode)rF   rH   r.   rI   r'   rK   rS   Ú
wheel_pathÚpÚcmdr$   ÚpipeÚkwargsÚprocesss                 r(   r[   r[   Ù   s  € ð ™‘¬C°·
±
«O€Jä�‰ØÜðó	
÷ 
‰‹ß	‰�¨j¼#¸h»-ÑZeÓIfÒZeÐUVÌ#ÈaÎ&ÑZeÑIfÐhpÓ	qð€Cð �G‰GÐ8Ó9¸SÑ@€EÞ‰4œg€DØÑ-€FÞ”S—\‘\ WÓ,Ü"2ˆˆÑÜ�CÑ"˜6Ñ"€GÜ
‡K�KØaØØ‰m‰ 2 e§m¡m _Ð!5ØØ�‰ôö Ø×ÑÕð ˆÕùò' Jgs   ÁD'c                óŒ   • S n [        X0X!XT5      n[        R                  SXU5        U$ ! [        R                  SXU5        f = f)Nzdone %s %s with %s)Ú_run_do_updater#   r$   )rF   rH   Úembed_filenamer'   rI   rS   rB   s          r(   Ú	do_updaterÞ     sI   € ð €HðSÜ! (¸.ÐZbÓpˆä�‰Ð)¨<ÈÔRØ€Oøô 	�‰Ð)¨<ÈÕRús	   „* ªAc           
     óp  • SSK Jn  Uc  S O
[        U5      nUc  S O[        U5      R                  n[        U [        5      (       a  [        U 5      OU n U V	s/ s H%  n	[        U	[        5      (       a  [        U	5      OU	PM'     nn	U R                  n
U R                  X5      n[        R                  UR                  5       5      n[        R                  " [        R                   S9n/ / pþUR"                   H7  nUR$                  S;   a  UR'                  U5        M&  UR'                  U5        M9     U(       a  SnOSnU(       a
  UUS   l        UbA  X§R(                  -  nUR+                  5       (       d  [-        [        U5      [        U
5      5        S S / [/        5       4u  nnnnUb  UR1                  USS9(       GdZ  [        R                  " [        R                   S9nUR3                  UUc  S OS	U 3UUU U
[4        R6                  S
9nUb$  U(       a  US   R8                  UR(                  :X  a  Oå[;        UR<                  5      n[?        UR<                  R(                  UUUS9n[@        RC                  SU[        R                  " [        R                   S9U-
  5        UR'                  U5        URE                  UR8                  5        URF                  nURH                  nUb  UUR                  :¼  a  OUc  GMB  UR1                  USS9(       d  GMZ  XLl%        URJ                  (       d  XÜl&        U Vs/ s H  nUR8                  U;  d  M  UPM     nnUU-   U-   Ul        [        R                  " [        R                   S9Ul'        URQ                  URS                  5       5        U$ s  sn	f s  snf )Nr   )Úacquirer   >   rƒ   rS   rS   rƒ   T)r†   Ú<)rF   Úversion_specrH   rI   r'   Ú	to_folderrK   r   zdetected %s in %s)*Úvirtualenv.seed.wheelsrà   r   r   r/   Ú
isinstancer    r   r!   rT   r@   rU   rV   r   r9   r   r?   rB   rv   rb   rE   Úexistsr	   Úsetr6   Údownload_wheelÚosÚenvironr"   Úrelease_date_for_wheel_pathrË   r<   r#   rÑ   Úaddr.   r8   rS   rX   r¯   rY   rZ   )r'   rF   rÝ   rH   rS   rI   rà   Úwheel_filenameÚembed_versionrÖ   Ú
wheelhouserT   rL   r9   Úupdate_versionsÚother_versionsr8   rv   ÚdestÚlastÚlast_versionrB   Ú	filenamesÚdownload_timeru   Ú
last_wheels                             r(   rÜ   rÜ     s  € õ /à+Ñ3‘T¼¸nÓ9M€NØ*Ñ2‘D¼¸nÓ8M×8[Ñ8[€MÜ.8¸Ä3×.GÑ.GÔ  Ô*ÈX€HÙALÓMÂ¸Aœj¨¬C×0Ñ0”4˜”7°aÒ7Á€KÐMØ—‘€JØ×0Ñ0°ÓNÐÜ×ÑÐ 0× 5Ñ 5Ó 7Ó8€EÜ
�,Š,œ(Ÿ,™,Ñ
'€Cà&(¨"�^Ø—>”>ˆØ�>‰>Ð3Ó3Ø×"Ñ" 7Ö+à×!Ñ! 'Ö*ñ	 "ö Ø‰àˆæØ(.ˆO˜AÑÔ%àÑ!Ø×/Ñ/Ñ/ˆØ�{‰{�}‰}Ü”#�nÓ%¤s¨:£Ô7Ø.2°D¸"¼c»eÐ.CÑ+€Dˆ,˜ )Ø
‰,˜dŸh™h sÀ4˜h×HÜ Ÿš¬¯©Ñ5ˆØ×%Ñ%Ø%Ø!-Ñ!5™¸Q¸|¸nÐ;MØ)Ø#ØØ Ü—
‘
ð &ð 
ˆð ‰<žO°ÀÑ0B×0KÑ0KÈtÏyÉyÓ0XØÜ2°4·9±9Ó=ˆÜ 4§9¡9§>¡>ÀÐYfÐouÑvˆÜ�‰Ð'¨¬x¯|ª|¼x¿|¹|Ñ/LÈ}Ñ/\Ô]Ø�‰˜ÔØ�‰�d—m‘mÔ$Ø—Z‘Zˆ
Ø!×)Ñ)ˆØÑ$¨¸*×:RÑ:RÓ)RØð+ Œ,˜dŸh™h sÀ4˜h×HÑHð, „NØ�>�>ØŒá-;Óaª^ '¸w×?OÑ?OÐW`Ñ?`—g©^€NÐaØ Ñ/°.Ñ@€E„NÜ—l’l¤h§l¡lÑ3€E„OØ×Ñ˜5Ÿ=™=›?Ô+Ø€Oùòq Nùòh bs   Á,N.Ì9N3ÍN3c                ó:  • [        U 5      n[        UR                  5      nUbK   US   UR                     S   S   n[        R
                  " US5      R                  [        R                  S9$ g ! [         a   n[        R                  SX$5         S nAg S nAff = f)NÚreleasesr   Úupload_timez%Y-%m-%dT%H:%M:%Srk   z)could not load release date %s because %r)r   Ú"_pypi_get_distribution_info_cachedrF   r8   r   rm   rn   r   r?   Ú	Exceptionr#   Úerror)rò   r.   Úcontentrú   Ú	exceptions        r(   rë   rë   ]  s�   € Ü�$‹K€Eô 1°×1CÑ1CÓD€GØÑð	ZØ! *Ñ-¨e¯m©mÑ<¸QÑ?ÀÑNˆKÜ×$Ò$ [Ð2EÓF×NÑNÔV^×VbÑVbÐNÐcÐcð øô ó 	ZÜ�L‰LÐDÀg×YÐYØûð	Zús   ¥A	A0 Á0
BÁ:BÂBÚ#VIRTUALENV_PERIODIC_UPDATE_INSECUREc               #  óÈ   #   • S v •  [         R                  R                  [        5      (       a2  [        R                  S[        5        [        R                  " 5       v •  g g 7f)NzDfalling back to unverified HTTPS for PyPI metadata because %s is set)ré   rê   r²   Ú_INSECURE_FALLBACK_ENVr#   ra   ÚsslÚ_create_unverified_contextr›   r+   r(   Ú_request_contextr  q  sF   é € Ø
‚JÜ	‡z�z‡~�~Ô,×-Ñ-Ü�‰ØRÜ"ô	
ô ×,Ò,Ó.Ó.ð .ùs   ‚A A"c                óL   • U [         ;  a  [        U 5      [         U '   [         U    $ r5   )Ú_PYPI_CACHEÚ_pypi_get_distribution_info)rF   s    r(   rû   rû   ~  s$   € Øœ;Ó&Ü$?ÀÓ$MŒ�LÑ!Ü�|Ñ$Ð$r+   c                óh  • S SU  S3p! [        5        H-  n [        X#S9 n[        R                  " U5      nS S S 5          U$     U$ ! , (       d  f       N= f! [         a!  n[
        R                  SX%5         S nAMk  S nAff = f! [         a!  n[
        R                  SX%5         S nAU$ S nAff = f)Nzhttps://pypi.org/pypi/z/json)Úcontextzfailed to access %s because %r)r  r   ÚjsonÚloadr   r#   rý   rü   )rF   rþ   Úurlr
  Úfile_handlerrÿ   s         r(   r  r  „  s°   € ØÐ1°,°¸uÐEˆSð	GÜ'Ö)ˆGðOÜ˜SÒ2°lÜ"Ÿiši¨Ó5�G÷ 3àð
 €Nò *ð €N÷ 3Õ2ûô ó OÜ—‘Ð=¸s×NÒNûðOûäó GÜ�‰Ð5°s×FÐFØ€NûðGús[   ‰B —	A A·A¿B ÁB Á
A	ÁAÁ
BÁ"A>Á8B Á>BÂB Â
B1ÂB,Â,B1c           	     óê   • / n[         R                  " 5        H?  u  p4U H4  n[        [        XX14S9nUR	                  5         UR                  U5        M6     MA     U H  nUR                  5         M     g )N)ÚtargetÚargs)r   Úitemsr   Ú_run_manual_upgradeÚstartrb   Újoin)r'   rK   ÚthreadsrH   Údistribution_to_packagerF   Úthreads          r(   Úmanual_upgrader  “  se   € Ø€Gä3A×3GÒ3GÖ3IÑ/ˆã3ˆLÜÔ#6¸hÐVdÐ=jÑkˆFØ�L‰LŒNØ�N‰N˜6Ö"ó 4ñ 4Jó ˆØ�‰Žò r+   c           
     óä  • [         R                  " [        R                  S9nSSKJn  U" US U/ U SUS9n[        R                  SUUUc  SOUR                  5        [        UUUR                  U / SS9nUU[         R                  " [        R                  S9U-
  /nU(       a'  UR                  S	R                  S
 U 5       5      5        U(       a  SOSn	SU	 3n
[        R                  " U
/UQ76   g )Nr   r   )Úfrom_bundleF)rF   r8   rH   rI   r'   rJ   rK   z(upgrade %s for python %s with current %sr    )rF   rH   rÝ   r'   rI   rS   Ú
c              3  ó,   #   • U  H
  nS U 3v •  M     g7f)Ú	Nr›   )r7   r0   s     r(   r:   Ú&_run_manual_upgrade.<locals>.<genexpr>Ã  s   é € Ð9²¨1  1 #�h²ùs   ‚znew entries found:
%szno new versions foundz upgraded %s for python %s in %s )r   r9   r   r?   Úbundler  r#   ra   rE   rÞ   rË   rb   r  )r'   rF   rH   rK   r  r  ÚcurrentrB   r  Ú
ver_updateÚmsgs              r(   r  r  ¡  sè   € Ü�LŠLœHŸL™LÑ)€EÝ#áØ!ØØ%ØØØ Øñ€Gô ‡N�NØ2ØØØ‰o‰ 7§<¡<ô	ô Ø!Ø%Ø—|‘|ØØØñ€Hð 	ØÜ�ŠœŸ™Ñ%¨Ñ-ð€Dö
 Ø�‰�D—I‘IÑ9±Ó9Ó9Ô:Þ-5Ñ)Ð;R€JØ,¨Z¨LÐ
9€CÜ
‡N‚N�3Ð˜Ôr+   )
r<   r@   rc   rÞ   ri   ro   r  rQ   rë   r[   )rF   r    rG   ú
str | NonerH   r    r.   úWheel | NonerI   ú
list[Path]r'   r   rJ   r¤   rK   údict[str, str]r=   r%  )rF   r    rH   r    r.   r%  rI   r&  r'   r   rK   r'  r=   r¢   )r.   r   rH   r    r'   r   r=   r¢   )rh   r¡   r=   r$  )rh   r$  r=   r¡   )rF   r    rH   r    r.   r%  rI   r&  r'   r   rK   r'  rS   r¤   r=   r¢   )rF   r    rH   r    rÝ   r$  r'   ústr | AppDatarI   úlist[str] | list[Path]rS   r¤   r=   zlist[NewVersion] | None)r'   r(  rF   r    rÝ   r$  rH   r    rS   r¤   rI   r)  r=   rÂ   )rò   r   r=   r¡   )r=   z,Generator[ssl.SSLContext | None, None, None])rF   r    r=   rÃ   )r'   r   rK   r'  r=   r¢   )
r'   r   rF   r    rH   r    rK   r'  r=   r¢   )EÚ__doc__Ú
__future__r   r  Úloggingré   r  rÌ   r   r   r   Ú	itertoolsr   Úpathlibr   Úshutilr	   Ú
subprocessr
   r   Útextwrapr   Ú	threadingr   Útypingr   Úurllib.errorr   Úurllib.requestr   Úvirtualenv.app_datar   Úvirtualenv.seed.wheels.embedr   Úvirtualenv.seed.wheels.utilr   Úvirtualenv.util.subprocessr   Úcollections.abcr   Úvirtualenv.app_data.baser   Ú	getLoggerrŒ   r#   r„   r…   r¼   rÀ   rQ   r>   rc   rf   ri   ro   r<   r@   r[   rÞ   rÜ   rë   r  r  r  rû   r  r  r  Ú__all__r›   r+   r(   Ú<module>r>     sƒ  ðÙ +å "ã Û Û 	Û 
Û 
ß 2Ñ 2Ý Ý Ý ß %Ý Ý Ý  Ý !Ý "å 1Ý 7Ý -Ý 7æÝ)å0à	×	Ò	˜8Ó	$€Ù !Ñ$€Ù BÑ'Ð Ù˜rÑ"€Ù  qÑ)Ð ð$Øð$àð$ð ð$ð ð	$ð
 ð$ð ð$ð ð$ð 
ð$ð ô$ðNkØðkàðkð ðkð ð	kð
 ðkð 
ðkð 
ôkô"
,ð '€ôCôj÷2*ñ 2*÷j+Qñ +Qð\)Øð)àð)ð ð)ð ð	)ð
 ð)ð 
ð)ð ð)ð 
ô)ðXØðàðð ðð ð	ð
 (ðð ðð ôð EØðEàðEð ðEð ð	Eð
 ðEð (ðEð ôEôPð" ?Ð ô/ð €ô%ôôô%òP�r+   