ó
    ýZhŸ!  ã                   ó  • S r SSKrSSKrSSKrSSKrS r\" 5         SSKJr  SSKJ	r	  \" 5       S   r
\	" \
5      rCC	SSKJr  SS	K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7  SSKJs  Jr  SSK7  SSKJrJr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-J.r.  SSK/J0r0  SSK1r/SSK1J2r3  SSK1J4r4  SSK5r/SSK6r/S r7SRq                  5       \Rr                  -   \Rr                  -   r9Sr:Sr;S r<S r=\<" 5         SSK>r> \=" 5       \l?        g)z5
Expose top-level symbols that are safe for import *
é    Nc                  ó„  • S n [         R                  SS nUS:  a  SUS    SUS    S3n[        U5      eSSKnU " U5      nUS	:  a  S
US    SUS    S3n[        U5      eUS:”  a  SUS    SUS    S3n[        U5      e SSKnU " U5      nUS:  a  SUR
                   S3n[        U5      eg! [         a     gf = f)a«  
Make sure the Python, NumPy and SciPy present are supported versions.
This has to be done _before_ importing anything from Numba such that
incompatible versions can be reported to the user. If this occurs _after_
importing things from Numba and there's an issue in e.g. a Numba c-ext, a
SystemError might have occurred which prevents reporting the likely cause of
the problem (incompatible versions of critical dependencies).
c                 ól   • [        [        [        U R                  R	                  S5      S S 5      5      $ )NÚ.é   )ÚtupleÚmapÚintÚ__version__Úsplit)Úmods    Ú]/home/gothic/public_html/Fooocus/fooocus_env/lib64/python3.13/site-packages/numba/__init__.pyÚextract_versionÚ._ensure_critical_deps.<locals>.extract_version   s*   € Ü”Sœ˜cŸo™o×3Ñ3°CÓ8¸¸!Ð<Ó=Ó>Ð>ó    Nr   )é   é
   z/Numba needs Python 3.10 or greater. Got Python r   r   é   )r   é   z-Numba needs NumPy 1.24 or greater. Got NumPy )r   r   z)Numba needs NumPy 2.2 or less. Got NumPy )r   r   z7Numba requires SciPy version 1.0 or greater. Got SciPy )ÚsysÚversion_infoÚImportErrorÚnumpyÚscipyr
   )r   Ú	PYVERSIONÚmsgÚnpÚnumpy_versionr   Ú
sp_versions          r   Ú_ensure_critical_depsr      s  € ò?ô × Ñ   !Ð$€Ià�7ÓØ@Ø˜A‘,�˜q ¨1¡ ¨að1ˆä˜#ÓÐãÙ# BÓ'€Mà�wÓØ>Ø Ñ"Ð# 1 ]°1Ñ%5Ð$6°að9ˆä˜#ÓÐà�vÓØ:Ø Ñ"Ð# 1 ]°1Ñ%5Ð$6°að9ˆä˜#ÓÐð	#Ûñ % UÓ+ˆ
Ø˜ÓØLØ×'Ñ'Ð(¨ð+ˆCä˜cÓ"Ð"ð øô	 ó Ùðús   ÂB2 Â2
B?Â>B?r   )Úget_versions)Úgenerate_version_infoÚversion)Úconfig)ÚtypesÚerrors)ÚtypeofÚprangeÚpndindexÚgdbÚgdb_breakpointÚgdb_initÚ	literallyÚliteral_unroll)Ú*)ÚcfuncÚjitÚnjitÚstencilÚ
jit_module)Ú	vectorizeÚguvectorizeÚthreading_layerÚget_num_threadsÚset_num_threadsÚset_parallel_chunksizeÚget_parallel_chunksizeÚget_thread_id)ÚcarrayÚfarrayÚ
from_dtype)Úexperimental)Úobjmode_context)Úparallel_chunksizec                 ó4   • SSK Jn  UR                  " U 40 UD6$ )Nr   )Ú	_runtests)Únumba.testingrC   Úmain)ÚargvÚkwdsÚruntestss      r   ÚtestrI   w   s   € õ 4Ø�=Š=˜Ñ& Ñ&Ð&r   aK  
    cfunc
    from_dtype
    guvectorize
    jit
    experimental
    njit
    stencil
    jit_module
    typeof
    prange
    gdb
    gdb_breakpoint
    gdb_init
    vectorize
    objmode
    literal_unroll
    get_num_threads
    set_num_threads
    set_parallel_chunksize
    get_parallel_chunksize
    parallel_chunksize
    )r   é,   r   )é   r   r   c                  ó°  • SSK n SSKn[        R                  " S5      nUR	                  UR
                  5      nU(       aT  [        [        [        UR                  5       5      5      nU[        :  a"  S[        UR
                  4-   -  n[        U5      eOU R                  " S5        SSKJnJn  U[         :  a  S[         U-   -  n[        U5      eU" 5         g)z$
Make sure llvmlite is operational.
r   Nz(\d+)\.(\d+).(\d+)zfNumba requires at least version %d.%d.%d of llvmlite.
Installed version is %s.
Please update llvmlite.z'llvmlite version format not recognized!)Úllvm_version_infoÚcheck_jit_executionzNumba requires at least version %d.%d.%d of LLVM.
Installed llvmlite is built against version %d.%d.%d.
Please update llvmlite.)ÚwarningsÚllvmliteÚreÚcompileÚmatchr
   r   r   r	   ÚgroupsÚ_min_llvmlite_versionr   ÚwarnÚllvmlite.bindingrM   rN   Ú_min_llvm_version)rO   rP   ÚregexÚmÚverr   rM   rN   s           r   Ú_ensure_llvmr\   ™   sÉ   € ó Ûô �JŠJÐ,Ó-€EØ�‰�H×(Ñ(Ó)€AÞÜ”Cœ˜QŸX™X›ZÓ(Ó)ˆØÔ&Ó&ð-ô *¨X×-AÑ-AÐ,CÑCñEˆCô ˜cÓ"Ð"ð 'ð 	�ŠÐ?Ô@çGàÔ,Ó,ð)ô "Ð$5Ñ5ñ7ˆô ˜#ÓÐáÕr   c                  ó²  • [         R                  (       Gd    [        R                  R	                  S5      (       a   [
        R                  R                  S5        O‰[        R                  R	                  S5      (       a   [
        R                  R                  S5        OE[        R                  R	                  S5      (       a   [
        R                  R                  S5        Og [        [
        R                  R                  S5      " 5       (       d  g [
        R                  R                  SS5        gg! [         aI    [        R                  " 5       S	:X  a-  [         R                  (       a  S
n [        R                  " U 5         gf = f!   [        R                  " 5       S	:X  a+  [         R                  (       a  [        R                  " S5         g= f)zM
Tries to enable SVML if configuration permits use and the library is found.
Úlinuxz
libsvml.soÚdarwinzlibsvml.dylibÚwinÚsvml_dispmdFÚhas_svmlÚx86_64z>SVML was found but llvmlite >= 0.23.2 is needed to support it.ÚSVMLz-vector-library=SVMLTz'SVML was not found/could not be loaded.)r#   ÚDISABLE_INTEL_SVMLr   ÚplatformÚ
startswithrP   ÚbindingÚload_library_permanentlyÚgetattrÚtargetsÚAttributeErrorÚmachineÚDEBUGrO   rV   Ú
set_option)r   s    r   Ú_try_enable_svmlrp   ¼   sP  € ô ×$×$Ð$ð'	IÜ�|‰|×&Ñ& w×/Ñ/Ü× Ñ ×9Ñ9¸,ÕGÜ—‘×(Ñ(¨×2Ñ2Ü× Ñ ×9Ñ9¸/ÕJÜ—‘×(Ñ(¨×/Ñ/Ü× Ñ ×9Ñ9¸-ÕHàðÜœx×/Ñ/×7Ñ7¸ÔD×FÑFð !ð Gô ×Ñ×'Ñ'¨Ð0FÔGØð øô! "ó Ü×#Ò#Ó%¨Ó1´f·l·lð3�Cä—M’M #Ô&ñ ðûð	IÜ×ÒÓ! XÓ-´&·,·,Ü—’ÐGÔHøØús2   ˜CF Ã&.D8 Ä!F Ä8AFÆF Æ
FÆF ÆAG)@Ú__doc__rf   rQ   r   rO   r   Ú_versionr    Únumba.misc.init_utilsr!   r
   r   Ú
numba.corer#   r$   r%   Únumba.misc.specialr&   r'   r(   r)   r*   r+   r,   r-   Únumba.core.errorsÚnumba.core.typesÚcoreÚnumba.core.decoratorsr/   r0   r1   r2   r3   Únumba.np.ufuncr4   r5   r6   r7   r8   r9   r:   r;   Únumba.np.numpy_supportr<   r=   r>   Únumbar?   Únumba.core.withcontextsr@   ÚobjmoderA   Únumba.core.target_extensionÚnumba.typedrI   r   Ú__all__rU   rX   r\   rp   rP   Ú
USING_SVML© r   r   Ú<module>r„      s  ðñó Û 	Û 
Û ò
+#ñ\ Ô õ
 #Ý 7á‹n˜YÑ'€Ù$ [Ó1€ØØõ ß $÷÷ ó ô  ÷ !Ð  ô ÷/õ /÷+÷ +ó +÷ >Ñ =õ ó Ý >Ý 6ó #ó ò'ð÷, 	‰‹�%—-‘-ñ- ð, #)§.¡.ñ-1€ð2 #Ð ØÐ ò òF-ñ^ „ó ðñ %Ó&€Õ r   