+
    iF                        ^RI Ht  ! R R]4      tR tR tR t]R 4       t]R 4       t]R	 4       t	]R
 4       t
]R 4       t]R 4       t]R 4       t]R 4       t]R 4       t]R 4       t]R 4       t]R 4       t]R 4       t]R5R l4       t]R 4       t]R 4       t]R 4       t]R 4       t]R 4       t]R 4       t]R6R l4       t]R7R l4       t]R 4       t]R 4       t]R 4       t]R  4       t ]R! 4       t!]R" 4       t"]R# 4       t#]R8R% l4       t$]R& 4       t%]R' 4       t&]R( 4       t']R) 4       t(R* t)^ R$I*t*^ R$I+t+R+ t,R, t-]R6R- l4       t.]R5R. l4       t/R7R/ lt0]R0 4       t1]R1 4       t2]R2 4       t3]R7R3 l4       t4]R7R4 l4       t5R$# )9   )xrangec                      a  ] tR t^t o Rt/ tRtR t]R 4       t	R t
R tR tR tR tR	 tR
 tR tR tR tR tR tRtV tR# )SpecialFunctionsz
This class implements special functions using high-level code.

Elementary and some other functions (e.g. gamma function, basecase
hypergeometric series) are assumed to be predefined by the context as
"builtins" or "low-level" functions.
c                   V P                   pVP                   F*  pVP                  V,          w  r4VP                  W#V4       K,  	  V P                  R4      V n        V P                  R4      V n        V P                  R4      V n        V P                  R4      V n        V P                  R4      V n        V P                  R4      V n	        V P                  R4      V n
        V P                  R4      V n        V P                  R4      V n        V P                  R4      V n        V P                  R4      V n        V P                  R4      V n        V P                  R4      V n        V P                  R4      V n        V P                  R4      V n        V P                  R4      V n        V P                  R 4      V n        / V n        V P,                  P/                  RRRRRRRRR	R
RRRR/4       V P1                  V P2                  4      V n        R# )!   phasearg	conjugateconjnthrootroot	polygammapsihurwitzzeta	fibonaccifib	factorialfacN)r   r   )    r   )r   r   )   r   )r      )r      )r   r   )   r   )r   r   )   r   )r   r   )r   r   )r   r   )r   r   )r      )r   r   )r   r   )	__class__defined_functions_wrap_specfun_mpqmpq_1mpq_0mpq_1_2mpq_3_2mpq_1_4mpq_1_16mpq_3_16mpq_5_2mpq_3_4mpq_7_4mpq_5_4mpq_1_3mpq_2_3mpq_4_3mpq_1_6mpq_5_6mpq_5_3_misc_const_cache_aliasesupdatememoizezetazerozetazero_memoized)selfclsnamefwraps   &    z/Users/tonyclaw/.openclaw/workspace/skills/math-calculator/venv/lib/python3.14/site-packages/mpmath/functions/functions.py__init__SpecialFunctions.__init__   s   nn))D++D1GAdt, * YYu%
YYu%
yy'yy'yy'		&)		&)yy'yy'yy'yy'yy'yy'yy'yy'yy'yy'!#e&%
 %%
 	 "&dmm!<    c                    \        WV4       R # N)setattr)r9   r:   r;   r<   s   &&&&r=   r   SpecialFunctions._wrap_specfun=   s    1r@   c                    \         hrB   NotImplementedErrorctxnzs   &&&r=   _besseljSpecialFunctions._besseljD   s    #66r@   c                    \         hrB   rF   rI   rK   s   &&r=   _erfSpecialFunctions._erfE   s    //r@   c                    \         hrB   rF   rO   s   &&r=   _erfcSpecialFunctions._erfcF       00r@   c                    \         hrB   rF   )rI   rK   as   &&&r=   _gamma_upper_int!SpecialFunctions._gamma_upper_intG   s    +>%>r@   c                    \         hrB   rF   rH   s   &&&r=   _expint_intSpecialFunctions._expint_intH   s    &9 9r@   c                    \         hrB   rF   rI   ss   &&r=   _zetaSpecialFunctions._zetaI   rU   r@   c                    \         hrB   rF   )rI   r_   rW   rJ   derivativesreflects   &&&&&&r=   _zetasum_fastSpecialFunctions._zetasum_fastJ   s    AT;Tr@   c                    \         hrB   rF   rO   s   &&r=   _eiSpecialFunctions._eiK       ..r@   c                    \         hrB   rF   rO   s   &&r=   _e1SpecialFunctions._e1L   rj   r@   c                    \         hrB   rF   rO   s   &&r=   _ciSpecialFunctions._ciM   rj   r@   c                    \         hrB   rF   rO   s   &&r=   _siSpecialFunctions._siN   rj   r@   c                    \         hrB   rF   r^   s   &&r=   _altzetaSpecialFunctions._altzetaO   s     33r@   )r2   r"   r!   r&   r#   r,   r%   r/   r-   r'   r$   r)   r.   r(   r1   r+   r0   r*   r7   NgP?)__name__
__module____qualname____firstlineno____doc__r   THETA_Q_LIMr>   classmethodr   rL   rP   rS   rX   r[   r`   re   rh   rl   ro   rr   ru   __static_attributes____classdictcell__)__classdict__s   @r=   r   r      s\      
 K(=V   7/0>90T....33r@   r   c                 D    V R 3\         P                  V P                  &   V # )Tr   r   rw   r;   s   &r=   defun_wrappedr   Q   s     56W&&qzz2Hr@   c                 D    V R 3\         P                  V P                  &   V # Fr   r   s   &r=   defunr   U   s     56X&&qzz2Hr@   c                 <    \        \        V P                  V 4       V # rB   )rC   r   rw   r   s   &r=   defun_staticr   Y   s    ajj!,Hr@   c                 F    V P                   V P                  V4      ,          # rB   )onetanrO   s   &&r=   cotr   ]       #''!*,,r@   c                 F    V P                   V P                  V4      ,          # rB   )r   cosrO   s   &&r=   secr   `   r   r@   c                 F    V P                   V P                  V4      ,          # rB   )r   sinrO   s   &&r=   cscr   c   r   r@   c                 F    V P                   V P                  V4      ,          # rB   )r   tanhrO   s   &&r=   cothr   f       388A;..r@   c                 F    V P                   V P                  V4      ,          # rB   )r   coshrO   s   &&r=   sechr   i   r   r@   c                 F    V P                   V P                  V4      ,          # rB   )r   sinhrO   s   &&r=   cschr   l   r   r@   c                 |    V'       g   V P                   R ,          # V P                  V P                  V,          4      # )      ?)piatanr   rO   s   &&r=   acotr   o   s*    vv|xx!$$r@   c                 F    V P                  V P                  V,          4      # rB   )acosr   rO   s   &&r=   asecr   v       #''A+..r@   c                 F    V P                  V P                  V,          4      # rB   )asinr   rO   s   &&r=   acscr   y   r   r@   c                 |    V'       g   V P                   R ,          # V P                  V P                  V,          4      # )y              ?)r   atanhr   rO   s   &&r=   acothr   |   s*    vv}yy1%%r@   c                 F    V P                  V P                  V,          4      # rB   )acoshr   rO   s   &&r=   asechr          ))CGGaK00r@   c                 F    V P                  V P                  V,          4      # rB   )asinhr   rO   s   &&r=   acschr      r   r@   c                     V P                  V4      pV'       d   V P                  V4      '       d   V# V P                  V4      '       d!   V^ 8  d   V P                  # V P                  ) # V\	        V4      ,          # r   )convertisnan_is_real_typer   absrI   xs   &&r=   signr      s]    AA		!
q577NGG8Os1v:r@   c                     V^8X  d   V P                  V4      # V P                  V4      pV P                  V4      pV P                  W4      # r   )agm1r   _agm)rI   rW   bs   &&&r=   agmr      s?    Avxx{AAAA88A>r@   c                     V P                  V4      '       d
   ^V,          # V'       g
   V^,           # V P                  V4      V,          # r   )isinfr   r   s   &&r=   sincr      s6    
yy||s
s
771:a<r@   c                     V P                  V4      '       d
   ^V,          # V'       g
   V^,           # V P                  V4      V P                  V,          ,          # r   )r   sinpir   r   s   &&r=   sincpir      s?    
yy||s
s
99Q<""r@   c                    a a S'       g   S P                   # S P                  S4      S P                  ) 8  d   SR S^,          ,          ,           # S P                  V V3R l^4      # )r   c                  <   < \        S P                  S4      R.4      # r   )iterexpr   s   r=   <lambda>expm1.<locals>.<lambda>   s    dCGGAJr?&;r@   )zeromagprecsum_accuratelyr   s   ffr=   expm1r      sK    xx
wwqzSXXI3q!t8|;A>>r@   c                    V'       g   V P                   # V P                  V4      V P                  ) 8  d   VR V^,          ,          ,
          # V P                  V P	                  ^V^V P                  ,          R7      4      # )r   r   )r   r   r   logfaddr   s   &&r=   log1pr      s\    xx
wwqzSXXI3q!t8|77388Aqqz8233r@   c                   aa V P                   pV P                  pSS,          V,
          pV! V4      pVR8  d   V# V'       g)   S'       d   SR9   d   V P                  S4      '       d   V# SV,
          pV! S4      pV P                  S4      p	W! V	4      ,           V P                  ) 8  d&   V	S,          V	S,          ^,          ^,          ,           # V P                  VV3R l^4      # )   c                  ,   < \        S S,          R.4      # r   )r   )r   ys   r=   r   powm1.<locals>.<lambda>   s    dAqD":&6r@   i)r   r   y              ?y             )r   r   isintlnr   r   )
rI   r   r   r   r   wMx1magylnxs
   &ff       r=   powm1r      s    
''C
''C	1s
AAA2vq,,1H	
SBq6D
&&)Cc#h#(("1uAz!|##6::r@   c                 p   \        V4      p\        V4      pW,          pV'       g   V P                  # ^V,          V8X  d   V P                  ) # ^V,          V8X  d   V P                  # ^V,          ^V,          8X  d   V P                  ) # V P                  ^V P	                  V4      ,          V,          4      # )r   )intr   jexpjpimpf)rI   krJ   s   &&&r=   _rootof1r      s    AAAAFAww	
1x	
1uu	
1!v::a
l1n%%r@   c                    \        V4      pV P                  V4      pV'       d   V^,          '       dW   ^V,          V^,
          8X  dB   V P                  V4      '       g+   V P                  V4      ^ 8  d   V P	                  V) V4      ) # V P
                  p V ;P
                  ^
,          un        V P	                  W^ 4      V P                  W24      ,          pW@n        V5# V P                  W4      #   Y@n        i ; ir   )r   r   imrer   r   r   _nthroot)rI   r   rJ   r   r   vs   &&&&  r=   r   r      s    AAAAEEacQqSj366!99366!9q=HHaRO##xx	HHNHq!CLL$66AHr	<< Hs   AC2 2C:c                    V P                   pV P                  p V ;P                  ^
,          un        V'       d9   \        V4       Uu. uF"  qS! WQ4      ^8X  g   K  V P                  WQ4      NK$  	  ppM(\        V4       Uu. uF  qPP                  WQ4      NK  	  ppW@n        V Uu. uF  qw5NK  	  up# u upi u upi   Y@n        i ; iu upi 
   )_gcdr   ranger   )rI   rJ   	primitivegcdr   r   r   r   s   &&&     r=   	unitrootsr      s    
((C88DB,1!HFHqAA"a"HAFA -2!H5Hqa"HA5?1B? G 6s:    B= B= B3B30B=  B8B= %C3
B= =Cc                     V P                  V4      pV P                  V4      pV P                  V4      pV P                  W24      # rB   )r   _re_imatan2)rI   r   r   r   s   &&  r=   r	   r	     s8    AA	B	B99Rr@   c                 6    \        V P                  V4      4      # rB   )r   r   r   s   &&r=   fabsr    s    s{{1~r@   c                 d    V P                  V4      p\        VR 4      '       d   VP                  # V# )real)r   hasattrr  r   s   &&r=   r   r     s*    AAq&vvHr@   c                 x    V P                  V4      p\        VR 4      '       d   VP                  # V P                  # )imag)r   r  r  r   r   s   &&r=   r   r     s.    AAq&vv88Or@   c                 l    V P                  V4      p VP                  4       #   \         d    Tu # i ; irB   )r   r
   AttributeErrorr   s   &&r=   r   r      s4    AA{{} s   # 33c                 F    V P                  V4      V P                  V4      3# rB   )r  r	   rO   s   &&r=   polarr  (  s    HHQK$$r@   c                 L    WP                   ! V P                  V4      !  ,          # rB   )mpccos_sin)rI   rphis   &&&r=   rectr  ,  s    wwC()))r@   Nc                     Vf   V P                  V4      # V P                  ^,           pV P                  WR7      V P                  W#R7      ,          # )Nr   )r   r   )rI   r   r   wps   &&& r=   r   r   0  sC    yvvay	BB66!6q 222r@   c                 &    V P                  V^
4      # r   )r   r   s   &&r=   log10r  7  s    771b>r@   c                 P    V P                  V4      V P                  V4      ,          # rB   )r   )rI   r   r   s   &&&r=   fmodr  ;  s    ;;q>CKKN**r@   c                 &    WP                   ,          # rB   degreer   s   &&r=   degreesr  ?      zz>r@   c                 &    WP                   ,          # rB   r  r   s   &&r=   radiansr  C  r  r@   c                    V'       g   V'       g   V# V P                   V,           # WP                  8X  d<   V^ 8X  d   V# V^V,          V P                  ,          V P                  ,          ,           # WP                   8X  d;   V) ^V,          ^,           V P                  ,          V P                  ,          ,           # V P	                  V4      # r   )ninfinfr   r   r   )rI   rK   r   s   &&&r=   _lambertw_specialr"  G  s    Hxx!|GG|6Hqs366z#%%'''HH}qs1ucffnSUU***66!9r@   c                 >   ^ p\        V R4      '       dB   \        V P                  4      pV P                  pV'       d   RV^ 8  ,          p\        V4      pM\        V 4      pRp^ pV'       g   Rp\	        W44      p V^ 8X  Ed   RTu;8  d	   R8  Ed8   M EM3RTu;8  d	   R8  Ed$   M EMV'       dy   VR8  d   RRV R,
          ,          ,           # VR8  d   RRV R,
          ,          ,           # VR8  d   RRV R,
          ,          ,           # VR8  d   RRV R,
          ,          ,           # VR8  d6   V^ 8  d   R R!V ^,           ,          ,           # R"R#V ^,           ,          ,           # R$pV'       g	   W58  d   Tp VR%8  d2   RR	W,
          R,          ,          ,           R
W,
          ,          ,
          # VR8  d   V # RRV ,          ,           # V'       g6   VR8  d/   \
        P                  ! V4      p\
        P                  ! V4      pEMZ\        P                  ! V 4      p\        P                  ! V4      pEM,VR8X  Ed%   R$pV'       g   YSu;8  d   R8  d   M MTp V^ 8  dK   VR8  dD   R&Tu;8  d   R%8  d5   M M1RR	W,
          R,          ,          ,
          R
W,
          ,          ,
          # V'       gH   R%Tu;8:  d   R8  d9   M M5\
        P                  ! V) 4      pV\
        P                  ! V) 4      ,
          # VR8X  d.   V'       g&   VR8  d   \        P                  ! V 4      R,
          pM\        P                  ! V 4      R,
          p\        P                  ! V4      pXX,
          Wv,          ,           Ww^,
          ,          ^V^,          ,          ,          ,           # )'r   r  g        g      @      ?g      @g      ?r   g?g4@g}tp?g333333?g?y        -DT!	@y        -DT!@r   g      g      yx&1?p=
ף?yh|?5?ʡEƿy      ?      @y)\(?&1?y      ?L7A`y      ?      ?yx&1?p=
ףyh|?5?ʡE?y      ?      g      пy)\(?&1ʿy      ?L7A`?y      ?      g      y'1ZԿq=
ףp?yM`"y'1ZԿq=
ףpyM`"?g2,6V׿gɿg333333)r  floatr  r  complexmathr   cmath)rK   r   	imag_signr   r   r  L1L2s   &&      r=   _lambertw_approx_hybridr,  Z  s   Iq&!&&MFFQI!H!H	AAv!>c>>dQnnnt8\lQ	]5S$SSt8\lQ	]5S$SSu9l|am6T%TTu9l|am6T%TT4x>(]QqS,AAA(]QqS,AAA"A154x,acCZ77:JAC:PPP3wqQ;q3w!B488B<b1BEIIbMr	
bq{s{ANCD1OtO(!#336F6LLLtq31"B"%%Bq3wYYq\$77YYq\$772B7RU?RAY"a%000r@   c                ,  a aaa S P                  S4      pR
Tu;8  d	   R8  Ed   M EMRTu;8  d	   R8  Ed   M EMV^8  Ed   \        SR,           4      R8  Edm   V^ 8X  g=   VR8X  d   S P                  S4      ^ 8  g    V^8X  EdA   S P                  S4      ^ 8  Ed*   S P                  V V3R l4      pS P                  V4      ) pS ;P                  V,          un        S P                  ^S P                  S,          ^,           ,          4      pS ;P                  V,          un        ^ S P                  R4      ^S P                  ^4      /o^ S P                  ^4      ^S P                  R4      /pV^ 8w  d   V) pS P                  p	\        \        ^V4      4       EF  oSS9  d   S P                  VV3R l\        ^S4       4       4      VS&   S^,
          SS^,
          ,          ^,          VS^,
          ,          ^,          ,           ,          S^,           ,          VS,          ^,          ,
          SS^,
          ,          S^,           ,          ,
          SS&   SS,          VS,          ,          p
W,          p	S P                  V
4      V) 8  d   V	R3u # S^,          oEK  	  S ;P                  V^,          ,          un        V	R3# V^ 8X  g   VR8X  d   \        SV4      R3# V^ 8X  d=   VR8  d   S^S,
          ,          R3# S P                  S4      pS P                  V4      pMVR8X  df   S P                  S4      '       gO   RS P                  S4      u;8  d   ^ 8  d1   M M-S P                  S) 4      pVS P                  V) 4      ,
          R3# S P                  S4      R	S P                  ,          V,          ,           pS P                  V4      pW,
          W,          ,           W^,
          ,          ^V^,          ,          ,          ,           R3# )z
Return rough approximation for W_k(z) from an asymptotic series,
sufficiently accurate for the Halley iteration to converge to
the correct value.
i  i  g,6V?g?c                  *   < SS P                  R4      .# r   )r   rO   s   r=   r   "_lambertw_series.<locals>.<lambda>  s    Aswwr{3Cr@   c              3   n   <"   T F*  pSV,          SS^,           V,
          ,          ,          x  K,  	  R# 5i)r   N ).0r   lus   & r=   	<genexpr>#_lambertw_series.<locals>.<genexpr>  s'     'K{!!Qqs1uX{s   25TFy               @iir   g,6V׿)r   r   r   r   r   sqrter   r   r   maxfsumr,  r   r   r   )rI   rK   r   tolmagzdeltacancellationprW   r_   termr*  r+  r3  r4  s   ff&&         @@r=   _lambertw_seriesrA    s    771:DdSuq/4//!8A../$6Av!r'cggajAoq&cggaj1n**+CD #L(HHQa	]+L(swwr{Acggaj1swwqz1SWWR[16AHH  Al 34Az"xx'Kva{'KK! !!a!fQhq1vax&78!A#>qtAvEa!faPQclR!Q4!Q$;DIAwwt}t+ $wFA 5 L!O+%x6Q"W*1a0%77Av"9ac7E>!VVAYVVBZ	
b#''!**+<swwqz+MA+MVVQBZCFFB3K&& VVAYCFF1$VVBZ7RU?RAY"a%00%77r@   c                 "   V P                  V4      p\        V4      pV P                  V4      '       g   \        WV4      # V P                  pT ;P                  ^T P                  T;'       g    ^4      ,           ,          un        V P                  pV^,
          p\        WW%4      w  rgV'       g   V P                  ^4      p\        ^d4       F  p	V P                  V4      p
Wj,          pW,
          pWlW,           Wh,           V,          W,          V,           ,          ,
          ,          ,
          pV P                  W,
          4      V P                  V4      V,
          8:  d   Tp MTpK  	  X	^d8X  d   V P                  RV,          4       W0n        V5# )   z1Lambert W iteration failed to converge for z = %s)r   r   isnormalr"  r   r   rA  r   r   r   warn)rI   rK   r   r   r  r;  r   donetwoiewwewwewzwns   &&&           r=   lambertwrM    s-   AAAA<<?? ++88DHHSWWQVV!_$$H	B
q&Csq.GAggajAB$C5D3615$,c	"::;;Bwwrt}c 11  8HHH1LMH2Ir@   c                    V P                  V4      pV'       g+   V P                  V4      '       d   V# \        V4      ! ^4      # V P                  V4      '       gF   V P                  V4      '       g/   V P                  V4      '       g   V P                  V4      '       d	   W!,          # V^8X  d   V# V^8X  d   W"^,           ,          # V^ 8X  d   V P	                  V4      # \        WVR4      V P                  V4      ,          # )r   T)r   r   typer   r   _polyexpr   )rI   rJ   r   s   &&&r=   bellrQ    s    AA99Q<<HAwqz
yy||syy||syy||syy||tAvaxAva1g~Avcjjm#CAt$swwqz11r@   c                 B   a aaa V VVV3R  lpS P                  V^R7      # )c               3      <"   S'       d   SP                  S4      x  Sp ^p VS,          V ,          x  V^,          pV S,          V,          p K.  5ir   )r   )tr   rI   extrarJ   r   s     r=   _terms_polyexp.<locals>._terms  sG     **Q-Q$(NFA!AAs   AA)
check_step)r   )rI   rJ   r   rU  rV  s   ffff r=   rP  rP    s%      f33r@   c                    V P                  V4      '       gF   V P                  V4      '       g/   V P                  V4      '       g   V P                  V4      '       d	   W!,          # V^ 8X  d	   W!,          # V^ 8X  d   V P                  V4      # V^8X  d   V P                  V4      V,          # V^8X  d'   V P                  V4      V,          V^,           ,          # \	        WV4      # r   )r   r   r   r   rP  )rI   r_   rK   s   &&&r=   polyexprZ    s    
yy||syy||syy||syy||tAvaczAvciil"Avcggajl"AvcggajlAaC((CAr@   c                 H   \        V4      pV^ 8  d   \        R4      hV P                  pV^ 8X  d   V# V^8X  d	   W#,
          # V^8X  d	   W#,           # ^p^p^ p^ p\        ^V^,           4       F  pW,          '       d   K  V P	                  W,          4      p	V P                  W(4      ) p
V
'       d   W:V	,          ,          pKU  V	^8X  d   WH,          pV^,          pKo  V	R8X  g   Kx  WX,          pV^,          pK  	  V'       d"   Wg8  d   V^ ,          pV# W4,          pW5,          pV# )r   zn cannot be negativer   )r   
ValueErrorr   r   moebiusr   )rI   rJ   rK   r?  a_prodb_prod	num_zeros	num_polesdr   r   s   &&&        r=   
cyclotomicrc    s   AA1u/00AAvAvuAvu FFII1QqS\uuAD!A 1 AT	6KFNI"WKFNI    FA H KAKAHr@   c                   \        V4      pV^8  d   V P                  # V^,          ^ 8X  d.   W^,
          ,          ^ 8X  d   V P                  5# V P                  # R FY  pW,          '       d   K  W,          ^ rCV^8  d&   \        W24      w  r4V'       g   K  V P                  u # V P	                  V4      u # 	  V P                  V4      '       d   V P	                  V4      # VR8  d   \        h^p \        VRV,          ,          R,           4      pV^8  d   V P                  # W%,          V8X  d)   V P                  V4      '       d   V P	                  V4      # V^,          pKt  )aO  
Evaluates the von Mangoldt function `\Lambda(n) = \log p`
if `n = p^k` a power of a prime, and `\Lambda(n) = 0` otherwise.

**Examples**

    >>> from mpmath import *
    >>> mp.dps = 25; mp.pretty = True
    >>> [mangoldt(n) for n in range(-2,3)]
    [0.0, 0.0, 0.0, 0.0, 0.6931471805599453094172321]
    >>> mangoldt(6)
    0.0
    >>> mangoldt(7)
    1.945910149055313305105353
    >>> mangoldt(8)
    0.6931471805599453094172321
    >>> fsum(mangoldt(n) for n in range(101))
    94.04531122935739224600493
    >>> fsum(mangoldt(n) for n in range(10001))
    10013.39669326311478372032

r$  r   )
r   r   r                        l       73Me')r   r   ln2divmodr   isprimerG   )rI   rJ   r?  qr  r   s   &&    r=   mangoldtrp  ;  s   0 	AA1uxx1uz!9>GG8O88O
 *uu61qa%a|188O66!9 * {{1~~vvay6z!!	A
BqD	C q588O6Q;{{1~~vvay 	Qr@   c                     V P                  \        V4      \        V4      4      pV'       d   \        V4      # V P                  V4      # rB   )
_stirling1r   r   rI   rJ   r   exactr   s   &&&& r=   	stirling1ru  w  4    s1vs1v&A1vwwqzr@   c                     V P                  \        V4      \        V4      4      pV'       d   \        V4      # V P                  V4      # rB   )
_stirling2r   r   rs  s   &&&& r=   	stirling2ry    rv  r@   r   r   r   rB   )6libmp.backendr   objectr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r	   r  r   r   r   r  r  r   r  r  r  r  r"  r'  r(  r,  rA  rM  rQ  rP  rZ  rc  rp  ru  ry  r1  r@   r=   <module>r|     s>   "L4v L4\  ,  , ,  , ,  , .  . .  . .  .% %  .  . .  .& &  0  0 0  0	 	     # # ? ? 4 4 ; ;* & &  "             % % * * 3 3   + +       =1~48l  8 2 2
4   ( (T 9 9v    r@   