+
    i                     \    R t ^ RIt^ RIt. ROt. ROtRR ltR t]! 4       tRsR	R lt	R t
R# )
zMSimple tools for timing functions' execution, when IPython is not available. Nc           	        \         P                  ! WR7      p^^rT\        ^^
4       F0  pVP                  V4      R8  d    MVe	   WR8  d    MV^
,          pK2  	  \        VP	                  WE4      4      V,          pVR8  dG   \        \        \        P                  ! \        P                  ! V4      4      ^,          4      ) ^4      pM^pWWV\        V,          ,          \        V,          3# )z1Adaptively measure execution time of a function. )setupg?g        )timeitTimerrangeminrepeatintmathfloorlog10_scales_units)	funcr   limittimerr   numberitimeorders	   &&&      y/Users/tonyclaw/.openclaw/workspace/skills/math-calculator/venv/lib/python3.14/site-packages/sympy/utilities/timeutils.pytimedr      s    LL+EF1b\<<3&6?bLF  u||F+,v5DczSDJJt$45:;;Q?$wu~-ve}==    c                      ^ RI p V P                  RR4      pVP                  R4       Uu. uF  q"P                  4       NK  	  pp\	        V4      # u upi )    NSYMPY_TIMINGS ,)osgetenvsplitstripset)r   resxs      r   __do_timingsr%   %   sC    
))OR
(C!iin
-n779nC
-s8O .s   Ac                     \        R V,          RV ^,          V ^ ,          V ^,          3,          4       V ^,           F  p\        W!^,           4       K  	  R# )-z	%.2f %s%sN)print_print_timestack)stacklevelss   && r   r)   r)   /   sD    	#e)[E!HeAha#AAB1XXAI& r   c                    a  V 3R  lpV# )c                 0   <a  S\         9  d   S # V 3R  lpV# )c                     < ^ RI H p \        pSP                  . ^ V .sV! 4       pS! V / VB pV! 4       pWd,
          \        ^&   Ve!   V^,          P                  \        4       VsV# \	        \        4       RsV# )r   )r   N)r   
_timestack	func_nameappendr)   )argskwargsr   oldtimestackt1rt2r   s   *,     r   wrapper,timethis.<locals>.decorator.<locals>.wrapper:   s}    !%L.."a6JBd%f%ABGJqM'Q&&z2)
 H !,!
Hr   )_do_timings)r   r9   names   f r   	decoratortimethis.<locals>.decorator6   s    {"K	  r    )r<   r=   s   f r   timethisr@   5   s    * r   )g      ?g     @@g    .Ag    eA)r,   msu   μsns)passN)   )__doc__r   r
   r   r   r   r%   r;   r0   r)   r@   r?   r   r   <module>rF      s>    S   	8>2 n
'r   