Ë
    täiE  ã                   óþ  — d Z ddlZddlZddlZdZdej
                  v rej
                  j                  d«       dZdZdej
                  v rej
                  j                  d«       dZdej
                  v r*ej
                  j                  d«       dej                  d	<   d
ej
                  v r*ej
                  j                  d
«       dej                  d<   dej
                  v rwej
                  j                  d«       ej                  j                  ej                  j                  ej                  j                  ej
                  d   «      d«      «      ZndZdZdd„Zedk(  r“er ddlZ ej$                  de›de›d�d¬«       yereddlZ ej(                  ej*                  ej,                  gdd¬«      Zej%                  d«       ej1                  «       Zej5                  ddd¬«       y eee«       yy)a©  
python runtests.py -py
  Use py.test to run tests (more useful for debugging)

python runtests.py -coverage
  Generate test coverage report. Statistics are written to /tmp

python runtests.py -profile
  Generate profile stats (this is much slower)

python runtests.py -nogmpy
  Run tests without using GMPY even if it exists

python runtests.py -strict
  Enforce extra tests in normalize()

python runtests.py -local
  Insert '../..' at the beginning of sys.path to use local mpmath

python runtests.py -skip ...
  Skip tests from the listed modules

Additional arguments are used to filter the tests to run. Only files that have
one of the arguments in their name are executed.

é    NFz-profileTz	-coveragez-nogmpyÚYÚMPMATH_NOGMPYz-strictÚMPMATH_STRICTz-localz../..Ú c                 óÆ  — | r t         j                  j                  d| «       |r t         j                  j                  d|«       ddl}ddl}t        d|j                  j                  |j                  «      z  «       t        d|j                  j                  j                  z  «       t        dt        |j                  «      z  «       t        d|j                  z  «       t        dt         j                  z  «       t        d	«       d
t         j                  v rHt         j                  j!                  d
«       ddl}|j$                  j&                  j)                  «        yddl}ddlm} g }t         j                  dd }	g }
d|	v r+|	|	j1                  d«      dz   d }
|	d|	j1                  d«       }	|s-|j                  j                  t         j                  d   «      }n|}|r|dz  }|dz  }|j+                  |«      D ]¥  }|j                  j3                  |j                  j5                  |«      «      d   }|	rt6        dk(  rd}|	D ]
  }||v sŒd} n |sŒY||
v rŒ^t9        |«      }|j:                  j=                  dd«      }|dk(  r|||gg} n|j?                  |||g«       Œ§ |jA                  «         |«       }|D ]Ç  \  }}}t        |«       tC        |j:                  jE                  «       «      D ]�  }|jG                  d«      sŒtH        rd|v rŒ t         jJ                  jM                  d|dd jO                  d«      z   dz   «        |«       }	  |j:                  |   «         |«       }t        dd||z
  z  z   dz   «       Œ’ ŒÉ  |«       }t        d	«       t        dd ||z
  z  z   d!z   «       | rt         j                  j!                  | «       |r t         j                  j!                  |«       yy#  t        jP                  «       \  }}}|tR        tT        fv r‚ t        d	«       t        d«       t        d	«       tW        jX                  «        |rY   yY ŒõxY w)"z8Run all tests in testdir while importing from importdir.é   r   Nzmpmath imported from %szmpmath backend: %szmpmath mp class: %szmpmath version: %szPython version: %sr   z-py)Údefault_timerz-skipÚ/ztest*.pyÚ__main__FTÚpriorityéd   iš  Útest_Únumpyz    é   é   Ú zTEST FAILED!z
ok        z%.7fz szfinished tests in z%.2fz seconds)-ÚsysÚpathÚinsertÚos.pathÚmpmathÚprintÚdirnameÚ__file__ÚlibmpÚbackendÚBACKENDÚreprÚmpÚ__version__ÚversionÚargvÚremoveÚpyÚtestÚcmdlineÚmainÚglobÚtimeitr	   ÚindexÚsplitextÚbasenameÚ__name__Ú
__import__Ú__dict__ÚgetÚappendÚsortÚsortedÚkeysÚ
startswithÚcoverageÚstdoutÚwriteÚljustÚexc_infoÚKeyboardInterruptÚ
SystemExitÚ	tracebackÚ	print_exc)Ú	importdirÚtestdirÚexit_on_failÚosr   r$   r(   ÚclockÚmodulesÚargsÚexcludedÚpatternÚfÚnameÚokÚargÚmoduler   ÚtstartÚt1ÚetypeÚevalueÚtrbÚt2Útends                            úd/Volumes/fast/ai/experiments/MLX_z-image/.venv/lib/python3.12/site-packages/mpmath/tests/runtests.pyÚtestitrU   <   s®  € áÜ�‰�‰˜˜9Ô%ÙÜ�‰�‰˜˜7Ô#ÛÛÜ	Ð
# b§g¡g§o¡o°f·o±oÓ&FÑ
FÔGÜ	Ð
 §¡×!5Ñ!5×!=Ñ!=Ñ
=Ô>Ü	Ð
¤$ v§y¡y£/Ñ
1Ô2Ü	Ð
 ×!3Ñ!3Ñ
3Ô4Ü	Ð
¤§¡Ñ
,Ô-Ü	ˆ"„IØ”—‘ÑÜ�‰�‰˜ÔÛØ
�‰�‰×ÑÕãÝ1ØˆÜ�x‰x˜˜ˆ|ˆØˆØ�d‰?Ø˜DŸJ™J wÓ/°Ñ1Ð2Ð3ˆHØÐ,˜Ÿ™ GÓ,Ð-ˆDáØ—g‘g—o‘o¤c§h¡h¨q¡kÓ2‰GàˆGÙØ�s‰NˆGØ�:Ñˆà—‘˜7Ö#ˆAØ—7‘7×#Ñ# B§G¡G×$4Ñ$4°QÓ$7Ó8¸Ñ;ˆDáœ JÒ.Ø�Û�CØ˜d’{Ø!˜Ùð  ñ ØØ˜Ñ!ØÜ Ó%ˆFØ—‘×*Ñ*¨:°sÓ;ˆHØ˜3ŠØ$ d¨FÐ3Ð4�ÙØ�N‰N˜H d¨FÐ3Õ4ð% $ð( 	�‰ŒÙ“ˆÛ&-Ñ"ˆH�d˜FÜ�$ŒKÜ˜FŸO™O×0Ñ0Ó2Ö3�Ø—<‘< Õ(Ý W°¡\Ø Ü—J‘J×$Ñ$ V¨a°°¨e¯k©k¸"«oÑ%=ÀÑ%CÔDÙ›�Bð#Ø*˜Ÿ™¨Ñ*Ô,ñ ›�BÜÐ+¨v¸¸B¹Ñ/?Ñ@À4ÑGÕHñ' 4ð '.ñ, ‹wˆÜˆbŒ	ÜÐ" f°°V±Ñ&<Ñ=À
ÑJÔKáÜ�H‰H�O‰O˜IÔ&ÙÜ�H‰H�O‰O˜GÕ$ð øð%	#Ü-0¯\©\«^Ñ*˜˜v sØ Ô%6¼
Ð$CÑCØ!Ü˜bœ	Ü˜nÔ-Ü˜bœ	Ü!×+Ñ+Ô-Ù'Û"ñ (ús   ÍO:Ï:A Q r   ztestit('z', 'z')r   )r2   )Ú
ignoredirsÚtraceÚcountztestit(importdir, testdir)z/tmp)Úshow_missingÚsummaryÚcoverdir)r   r   F)Ú__doc__r   rB   r=   Úprofiler"   r#   r6   Úenvironr   ÚabspathÚjoinr   r?   r@   rU   r-   ÚcProfileÚrunrW   ÚTraceÚprefixÚexec_prefixÚtracerÚresultsÚrÚwrite_results© ó    rT   Ú<module>rl      s§  ðñ÷6 Ó à
€Ø�—‘ÑØ‡H�H‡O�O�JÔØ€Gà€Ø�#—(‘(ÑØ‡H�H‡O�O�KÔ Ø€Hà�—‘ÑØ‡H�H‡O�O�IÔØ"%€B‡J�JˆÑà�—‘ÑØ‡H�H‡O�O�IÔØ"%€B‡J�JˆÑàˆs�x‰xÑØ‡H�H‡O�O�HÔØ—‘—‘ §¡§¡¨R¯W©W¯_©_¸S¿X¹XÀa¹[Ó-IØ-4ó!6ó 7�Ið €Ið €óW%ðr ˆzÒÙÛØˆ�ŠªYºÐ@ÀqÖIÙ	ÛØ�—‘¨¯©°S·_±_Ð(EØ˜1ôˆà�
‰
Ð/Ô0Ø�N‰NÓˆØ	�‰ T°4À&ˆÕIáˆy˜'Õ"ð rk   