ó
    USh–  ã                   óŠ  • 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  \R                  " S5      R                  \R                  5        \R                  " S5      R!                  S 5        \R"                  " S5      r\R&                  r\ R*                  R-                  S5      S:H  r\ R*                  R-                  S	S
5      r\ R2                  R5                  \ R2                  R7                  \5      5      r\ R2                  R5                  \5      rS rSSS\4S\ S\!4S jjr"S\4S jr#S r$SS jr%g)é    N)ÚRequirementztorch.distributed.nnÚxformersc                 ó(   • SU R                  5       ;  $ )Nz"A matching Triton is not available)Ú
getMessage)Úrecords    Ú7/home/gothic/public_html/Fooocus/modules/launch_util.pyÚ<lambda>r	      s   € Ð7[Ðci×ctÑctÓcvÒ7vó    z%\s*([-\w]+)\s*(?:==\s*([-+.\w]+))?\s*ÚLAUNCH_LIVE_OUTPUTÚ1Ú	INDEX_URLÚ c                 ój   •  [         R                  R                  U 5      nUS L$ ! [         a     gf = f)NF)Ú	importlibÚutilÚ	find_specÚModuleNotFoundError)ÚpackageÚspecs     r   Úis_installedr      s<   € ðÜ�~‰~×'Ñ'¨Ó0ˆð �tÐÐøô ó Ùðús   ‚% ¥
2±2ÚliveÚreturnc                 ó:  • Ub  [        U5        U SUc  [        R                  OUSSS.nU(       d  [        R                  =US'   US'   [        R
                  " S0 UD6nUR                  S:w  a™  U=(       d    S S	3S
U  3SUR                   3/nUR                  (       a  UR                  SUR                   35        UR                  (       a  UR                  SUR                   35        [        SR                  U5      5      eUR                  =(       d    S$ )NTÚutf8Úignore)ÚargsÚshellÚenvÚencodingÚerrorsÚstdoutÚstderrr   zError running commandÚ.z	Command: zError code: zstdout: zstderr: Ú
r   © )ÚprintÚosÚenvironÚ
subprocessÚPIPEÚrunÚ
returncoder!   Úappendr"   ÚRuntimeErrorÚjoin)ÚcommandÚdescÚerrdescÚ
custom_envr   Ú
run_kwargsÚresultÚ
error_bitss           r   r+   r+   #   s  € ØÑÜˆdŒð ØØ'Ñ/Œr�zŠz°ZØØñ€Jö Ü6@·o±oÐEˆ
�8Ñ˜z¨(Ñ3ä�^Š^Ñ)˜jÑ)€Fà×Ñ˜AÓà×1Ð1Ð2°!Ð4Ø˜�yÐ!Ø˜6×,Ñ,Ð-Ð.ð
ˆ
ð
 �=�=Ø×Ñ ¨¯©¨Ð8Ô9Ø�=�=Ø×Ñ ¨¯©¨Ð8Ô9Ü˜4Ÿ9™9 ZÓ0Ó1Ð1à�M‰M×˜RÐ r
   c                 óÒ   •  [         S:w  a	  S[          3OSn[        S[         SU  SU 3SU 3SU 3US9$ ! [         a&  n[	        U5        [	        S	U S
U  35         S nAg S nAff = f)Nr   z --index-url Ú"z	" -m pip z --prefer-binaryzInstalling zCouldn't install )r1   r2   r   zCMD Failed ú: )Ú	index_urlr+   ÚpythonÚ	Exceptionr&   )r0   r1   r   Úindex_url_lineÚes        r   Úrun_pipr?   C   sˆ   € ðÜ8AÀR»˜=¬¨Ñ4ÈRˆÜ�Q”v�h˜i¨ yÐ0@ÀÐ@PÐQÐZeÐfjÐekÐXlØ.¨t¨fÐ5¸DñBð 	Bøäó ÜˆaŒÜ�˜D˜6  G 9Ð-Ô.Üûðús   ‚36 ¶
A&Á A!Á!A&c           
      ó$  • [        U SSS9 nU H´  nUR                  5       nUS:X  d  UR                  S5      (       a  M1  [        U5      nUR                  n [
        R                  R                  U5      n[        R                  R                  U5      nXcR                  ;  a  [        SU SU SU 35          S S S 5        g	M¶     S S S 5        g! [         a$  n[        S
U SU 35         S nA  S S S 5        g	S nAff = f! , (       d  f       g= f)NÚrr   )r   r   Ú#zVersion mismatch for z: Installed version z does not meet requirement FzError checking version for r9   T)ÚopenÚstripÚ
startswithr   Únamer   ÚmetadataÚversionÚ	packagingÚparseÚ	specifierr&   r<   )Úrequirements_fileÚfileÚlineÚrequirementr   Úversion_installedÚinstalled_versionr>   s           r   Úrequirements_metrR   N   s!  € Ü	Ð ¨vÒ	6¸$ÛˆDØ—:‘:“<ˆDØ�r‹z˜TŸ_™_¨S×1Ñ1Ùä% dÓ+ˆKØ!×&Ñ&ˆGð
Ü$-×$6Ñ$6×$>Ñ$>¸wÓ$GÐ!Ü$-×$5Ñ$5×$;Ñ$;Ð<MÓ$NÐ!ð %×,AÑ,AÓAÜÐ1°'°Ð:NÐO`ÐNaÐa|ð  ~Ið  }Jð  Kô  LØ ÷! 
7Ð	6ñ Bñ ÷ 
7ð* øô	 ó ÜÐ3°G°9¸B¸q¸cÐBÔCÜ÷' 
7Ð	6ûð"ú÷# 
7Ô	6ð* ús=   ŒADÁA!CÂ9DÃDÃ
C>ÃC9Ã+DÃ9C>Ã>DÄ
Dc           	      ó  • Sn[         R                  " U 5       H¿  n[         R                  R                  X5      n [         R                  R	                  U5      (       d$  [         R                  R                  U5      (       a  [         R                  " U5        Mƒ  [         R                  R                  U5      (       a  [        R                  " U5        M¿  MÁ     U$ ! [         a   n[        U SU SU 35        Sn S nAMê  S nAff = f)NTzFailed to delete z
. Reason: F)r'   ÚlistdirÚpathr/   ÚisfileÚislinkÚunlinkÚisdirÚshutilÚrmtreer<   r&   )ÚfolderÚprefixr5   ÚfilenameÚ	file_pathr>   s         r   Údelete_folder_contentr`   g   s¾   € Ø€Fä—J’J˜vÖ&ˆÜ—G‘G—L‘L Ó2ˆ	ð	Ü�w‰w�~‰~˜i×(Ñ(¬B¯G©G¯N©N¸9×,EÑ,EÜ—	’	˜)Ö$Ü—‘—‘˜y×)Ñ)Ü—’˜iÖ(ñ *ñ 'ð €Møô	 ó 	Ü�V�HÐ-¨i¨[¸
À1À#ÐFÔGØŽFûð	ús   ¼ACÂ:CÃ
DÃ(DÄD)N)&r'   r   Úimportlib.utilrZ   r)   ÚsysÚreÚloggingÚimportlib.metadataÚpackaging.versionrI   Úpackaging.requirementsr   Ú	getLoggerÚsetLevelÚERRORÚ	addFilterÚcompileÚre_requirementÚ
executabler;   r(   ÚgetÚdefault_command_liver:   rU   ÚdirnameÚrealpathÚ__file__Úmodules_pathÚscript_pathr   ÚboolÚstrr+   r?   rR   r`   r%   r
   r   Ú<module>rx      s  ðÛ 	Û Û Û Û Û 
Û 	Û Û Û Ý .à × Ò Ð(Ó )× 2Ñ 2°7·=±=Ô AØ × Ò �*Ó × 'Ñ 'Ñ(vÔ wà—’ÐDÓE€à	�‰€ØŸ
™
Ÿ™Ð';Ó<ÀÑCÐ Ø�J‰J�N‰N˜;¨Ó+€	à�w‰w�‰˜rŸw™w×/Ñ/°Ó9Ó:€Ø�g‰g�o‰o˜lÓ+€òð  D°TÐH\ñ !Àð !Ðadõ !ð@ Ð%9ô òõ2r
   