
    [hF                        S SK Jr   " S S\5      rS rS rS r\S 5       r\S 5       r\S	 5       r	\S
 5       r
\S 5       r\S 5       r\S 5       r\S 5       r\S 5       r\S 5       r\S 5       r\S 5       r\S 5       r\S6S j5       r\S 5       r\S 5       r\S 5       r\S 5       r\S 5       r\S 5       r\S7S j5       r\S8S j5       r\S 5       r\S 5       r\S  5       r\S! 5       r \S" 5       r!\S# 5       r"\S$ 5       r#\S9S& j5       r$\S' 5       r%\S( 5       r&\S) 5       r'\S* 5       r(S+ r)SS%K*r*SS%K+r+S, r,S- r-\S7S. j5       r.\S6S/ j5       r/S8S0 jr0\S1 5       r1\S2 5       r2\S3 5       r3\S8S4 j5       r4\S8S5 j5       r5g%):   )xrangec                   ~    \ rS rSrSr0 rSrS r\S 5       r	S r
S rS rS	 rS
 rS rS rS rS rS rS rS rSrg)SpecialFunctions   z
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.
gP?c           
         U R                   nUR                   H&  nUR                  U   u  p4UR                  X#U5        M(     U R                  S5      U l        U R                  S5      U l        U R                  S5      U l        U R                  S5      U l        U R                  S5      U l        U R                  S5      U l	        U R                  S5      U l
        U R                  S5      U l        U R                  S	5      U l        U R                  S
5      U l        U R                  S5      U l        U R                  S5      U l        U R                  S5      U l        U R                  S5      U l        U R                  S5      U l        U R                  S5      U l        U R                  S5      U l        0 U l        U R,                  R/                  SSSSSSSS.5        U R1                  U R2                  5      U l        g )N)   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   argconjrootpsizetafibfac)phase	conjugatenthroot	polygammahurwitz	fibonacci	factorial)	__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        R/var/www/auris/envauris/lib/python3.13/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'!# 
  
 	 "&dmm!<    c                     [        XU5        g N)setattr)r:   r;   r<   r=   s       r>   r    SpecialFunctions._wrap_specfun=   s    1rA   c                     [         erC   NotImplementedErrorctxnzs      r>   _besseljSpecialFunctions._besseljD   s    #66rA   c                     [         erC   rG   rJ   rL   s     r>   _erfSpecialFunctions._erfE   s    //rA   c                     [         erC   rG   rP   s     r>   _erfcSpecialFunctions._erfcF       00rA   c                     [         erC   rG   )rJ   rL   as      r>   _gamma_upper_int!SpecialFunctions._gamma_upper_intG   s    +>%>rA   c                     [         erC   rG   rI   s      r>   _expint_intSpecialFunctions._expint_intH   s    &9 9rA   c                     [         erC   rG   rJ   ss     r>   _zetaSpecialFunctions._zetaI   rV   rA   c                     [         erC   rG   )rJ   r`   rX   rK   derivativesreflects         r>   _zetasum_fastSpecialFunctions._zetasum_fastJ   s    AT;TrA   c                     [         erC   rG   rP   s     r>   _eiSpecialFunctions._eiK       ..rA   c                     [         erC   rG   rP   s     r>   _e1SpecialFunctions._e1L   rk   rA   c                     [         erC   rG   rP   s     r>   _ciSpecialFunctions._ciM   rk   rA   c                     [         erC   rG   rP   s     r>   _siSpecialFunctions._siN   rk   rA   c                     [         erC   rG   r_   s     r>   _altzetaSpecialFunctions._altzetaO   s     33rA   )r3   r#   r"   r'   r$   r-   r&   r0   r.   r(   r%   r*   r/   r)   r2   r,   r1   r+   r8   N)__name__
__module____qualname____firstlineno____doc__r   THETA_Q_LIMr?   classmethodr    rM   rQ   rT   rY   r\   ra   rf   ri   rm   rp   rs   rv   __static_attributes__ rA   r>   r   r      sV     
 K(=V   7/0>90T....3rA   r   c                 D    U S4[         R                  U R                  '   U $ )NTr   r   rx   r<   s    r>   defun_wrappedr   Q   s     56W&&qzz2HrA   c                 D    U S4[         R                  U R                  '   U $ )NFr   r   s    r>   defunr   U   s     56X&&qzz2HrA   c                 <    [        [        U R                  U 5        U $ rC   )rD   r   rx   r   s    r>   defun_staticr   Y   s    ajj!,HrA   c                 >    U R                   U R                  U5      -  $ rC   )onetanrP   s     r>   cotr   ]       #''!*,,rA   c                 >    U R                   U R                  U5      -  $ rC   )r   cosrP   s     r>   secr   `   r   rA   c                 >    U R                   U R                  U5      -  $ rC   )r   sinrP   s     r>   cscr   c   r   rA   c                 >    U R                   U R                  U5      -  $ rC   )r   tanhrP   s     r>   cothr   f       388A;..rA   c                 >    U R                   U R                  U5      -  $ rC   )r   coshrP   s     r>   sechr   i   r   rA   c                 >    U R                   U R                  U5      -  $ rC   )r   sinhrP   s     r>   cschr   l   r   rA   c                 j    U(       d  U R                   S-  $ U R                  U R                  U-  5      $ )N      ?)piatanr   rP   s     r>   acotr   o   s*    vv|xx!$$rA   c                 >    U R                  U R                  U-  5      $ rC   )acosr   rP   s     r>   asecr   v       #''A+..rA   c                 >    U R                  U R                  U-  5      $ rC   )asinr   rP   s     r>   acscr   y   r   rA   c                 j    U(       d  U R                   S-  $ U R                  U R                  U-  5      $ )Ny              ?)r   atanhr   rP   s     r>   acothr   |   s*    vv}yy1%%rA   c                 >    U R                  U R                  U-  5      $ rC   )acoshr   rP   s     r>   asechr          ))CGGaK00rA   c                 >    U R                  U R                  U-  5      $ rC   )asinhr   rP   s     r>   acschr      r   rA   c                     U R                  U5      nU(       a  U R                  U5      (       a  U$ U R                  U5      (       a  US:  a  U R                  $ U R                  * $ U[	        U5      -  $ )Nr
   )convertisnan_is_real_typer   absrJ   xs     r>   signr      s]    AA		!
q577NGG8Os1v:rA   c                     US:X  a  U R                  U5      $ U R                  U5      nU R                  U5      nU R                  X5      $ Nr   )agm1r   _agm)rJ   rX   bs      r>   agmr      s?    Avxx{AAAA88A>rA   c                 x    U R                  U5      (       a  SU-  $ U(       d  US-   $ U R                  U5      U-  $ r   )isinfr   r   s     r>   sincr      s6    
yy||s
s
771:a<rA   c                     U R                  U5      (       a  SU-  $ U(       d  US-   $ U R                  U5      U R                  U-  -  $ r   )r   sinpir   r   s     r>   sincpir      s?    
yy||s
s
99Q<""rA   c                    ^ ^ T(       d  T R                   $ T R                  T5      T R                  * :  a  TSTS-  -  -   $ T R                  U U4S jS5      $ )Nr   r   c                  <   > [        T R                  T5      S/5      $ N)iterexpr   s   r>   <lambda>expm1.<locals>.<lambda>   s    dCGGAJr?&;rA   r   )zeromagprecsum_accuratelyr   s   ``r>   expm1r      sK    xx
wwqzSXXI3q!t8|;A>>rA   c                     U(       d  U R                   $ U R                  U5      U R                  * :  a  USUS-  -  -
  $ U R                  U R	                  SUSU R                  -  S95      $ )Nr   r   r   r   )r   r   r   logfaddr   s     r>   log1pr      s\    xx
wwqzSXXI3q!t8|77388Aqqz8233rA   c                 |  ^^ U R                   nU R                  nTT-  U-
  nU" U5      nUS:  a  U$ U(       d%  T(       a  TS;   a  U R                  T5      (       a  U$ TU-
  nU" T5      nU R                  T5      n	X" U	5      -   U R                  * :  a  U	T-  U	T-  S-  S-  -   $ U R                  UU4S jS5      $ )Ni)r   r   y              ?y             r   c                  $   > [        T T-  S/5      $ r   )r   )r   ys   r>   r   powm1.<locals>.<lambda>   s    dAqD":&6rA   r   )r   r   isintlnr   r   )
rJ   r   r   r   r   wMx1magylnxs
    ``       r>   powm1r      s    
''C
''C	1s
AAA2vq,,1H	
SBq6D
&&)Cc#h#(("1uAz!|##6::rA   c                 0   [        U5      n[        U5      nX-  nU(       d  U R                  $ SU-  U:X  a  U R                  * $ SU-  U:X  a  U R                  $ SU-  SU-  :X  a  U R                  * $ U R                  SU R	                  U5      -  U-  5      $ )Nr   r   r   )intr   jexpjpimpf)rJ   krK   s      r>   _rootof1r      s    AAAAFAww	
1x	
1uu	
1!v::a
l1n%%rA   r
   c                    [        U5      nU R                  U5      nU(       a  US-  (       aK  SU-  US-
  :X  a?  U R                  U5      (       d)  U R                  U5      S:  a  U R	                  U* U5      * $ U R
                  n U =R
                  S-  sl        U R	                  XS5      U R                  X25      -  nX@l        U7$ U R                  X5      $ ! X@l        f = f)Nr   r   r
   
   )r   r   imrer   r   r   _nthroot)rJ   r   rK   r   r   vs         r>   r   r      s    AAAAEacQqSj366!99366!9q=HHaRO##xx	HHNHq!CLL$66AHr	<< Hs   9C C!c                    U R                   nU R                  n U =R                  S-  sl        U(       a8  [        U5       Vs/ s H!  oS" XQ5      S:X  d  M  U R                  XQ5      PM#     nnO)[        U5       Vs/ s H  oPR                  XQ5      PM     nnX@l        U Vs/ s H  ow7PM     sn$ s  snf s  snf ! X@l        f = fs  snf )Nr   r   )_gcdr   ranger   )rJ   rK   	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s5   )B: B0B0+B: ;B5B: !C0
B: :Cc                     U R                  U5      nU R                  U5      nU R                  U5      nU R                  X25      $ rC   )r   _re_imatan2)rJ   r   r   r   s       r>   r   r     s8    AA	B	B99RrA   c                 6    [        U R                  U5      5      $ rC   )r   r   r   s     r>   fabsr     s    s{{1~rA   c                 b    U R                  U5      n[        US5      (       a  UR                  $ U$ )Nreal)r   hasattrr   r   s     r>   r   r     s*    AAq&vvHrA   c                 v    U R                  U5      n[        US5      (       a  UR                  $ U R                  $ )Nimag)r   r  r  r   r   s     r>   r   r     s.    AAq&vv88OrA   c                 j    U R                  U5      n UR                  5       $ ! [         a    Us $ f = frC   )r   r   AttributeErrorr   s     r>   r   r      s4    AA{{} s   # 22c                 F    U R                  U5      U R                  U5      4$ rC   )r   r   rP   s     r>   polarr  (  s    HHQK$$rA   c                 B    XR                   " U R                  U5      6 -  $ rC   )mpccos_sin)rJ   rphis      r>   rectr  ,  s    wwC()))rA   Nc                     Uc  U R                  U5      $ U R                  S-   nU R                  XS9U R                  X#S9-  $ )N   r   )r   r   )rJ   r   r   wps       r>   r   r   0  sC    yvvay	BB66!6q 222rA   c                 &    U R                  US5      $ )Nr   )r   r   s     r>   log10r  7  s    771b>rA   c                 H    U R                  U5      U R                  U5      -  $ rC   )r   )rJ   r   r   s      r>   fmodr  ;  s    ;;q>CKKN**rA   c                     XR                   -  $ rC   degreer   s     r>   degreesr  ?      zz>rA   c                     XR                   -  $ rC   r  r   s     r>   radiansr  C  r  rA   c                 >   U(       d  U(       d  U$ U R                   U-   $ XR                  :X  a*  US:X  a  U$ USU-  U R                  -  U R                  -  -   $ XR                   :X  a&  U* SU-  S-   U R                  -  U R                  -  -   $ U R	                  U5      $ )Nr
   r   r   )ninfinfr   r   r   )rJ   rL   r   s      r>   _lambertw_specialr  G  s    Hxx!|GG|6Hqs366z#%%'''HH}qs1ucffnSUU***66!9rA   c                 t   Sn[        U S5      (       a<  [        U R                  5      nU R                  nU(       a  SUS:  -  n[        U5      nO[        U 5      nSnSnU(       d  Sn[	        X45      n US:X  Ga0  SUs=:  a  S:  a  O  OSUs=:  a  S:  a  O  OU(       aD  US	:  a  S
SU S-
  -  -   $ US:  a  SSU S-
  -  -   $ US:  a  SSU S-
  -  -   $ US:  a  SSU S-
  -  -   $ US:  a  US:  a  SSU S-   -  -   $ SSU S-   -  -   $ SnU(       d  X5:  a  Un US:  a  SS X-
  S!-  -  -   S"X-
  -  -
  $ US!:  a  U $ S#S$U -  -   $ U(       d4  US:  a.  [
        R                  " U5      n[
        R                  " U5      nGO"[        R                  " U 5      n[        R                  " U5      nOUS:X  a  SnU(       d  XSs=:  a  S:  a  O  OUn US:  a+  US%:  a%  S&Us=:  a  S:  a  O  OSS X-
  S!-  -  -
  S"X-
  -  -
  $ U(       dA  SUs=::  a  S:  a4  O  O1[
        R                  " U* 5      nU[
        R                  " U* 5      -
  $ US:X  a'  U(       d   US:  a  [        R                  " U 5      S'-
  nO[        R                  " U 5      S(-
  n[        R                  " U5      nWW-
  Xv-  -   XwS)-
  -  S)US)-  -  -  -   $ )*Nr
   r  r   g        g      g      @g      g      @      ?yx&1?p=
ף?yh|?5?ʡEƿy      ?      @g      ?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`"r   y'1ZԿq=
ףpyM`"?g2,6V׿gɿg4@r   g}tp?g?g333333?g?g333333y        -DT!	@y        -DT!@r   )r  floatr   r  complexmathr   cmath)rL   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n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0rA   c                   ^ ^^^ T R                  T5      nSUs=:  a  S:  Ga.  O  GO*SUs=:  a  S:  Ga  O  GOUS:  Ga  [        TS-   5      S:  Ga  US:X  d8  US	:X  a  T R                  T5      S:  d  US:X  Ga  T R                  T5      S:  Ga  T R                  U U4S
 j5      nT R                  U5      * nT =R                  U-  sl        T R                  ST R                  T-  S-   -  5      nT =R                  U-  sl        T R                  S	5      T R                  S5      S.mT R                  S5      T R                  S	5      S.nUS:w  a  U* nT R                  n	[        [        SU5      5       H  mTT;  ag  T R                  UU4S j[        ST5       5       5      UT'   TS-
  TTS-
     S-  UTS-
     S-  -   -  TS-   -  UT   S-  -
  TTS-
     TS-   -  -
  TT'   TT   UT-  -  n
X-  n	T R                  U
5      U* :  a  U	S4s  $ TS-  mM     T =R                  US-  -  sl        U	S4$ US:X  d  US	:X  a  [        TU5      S4$ US:X  a3  US	:  a
  TST-
  -  S4$ T R                  T5      nT R                  U5      nOUS	:X  a^  T R                  T5      (       dH  ST R                  T5      s=:  a  S:  a,  O  O)T R                  T* 5      nUT R                  U* 5      -
  S4$ T R                  T5      ST R                  -  U-  -   nT R                  U5      nX-
  X-  -   XS-
  -  SUS-  -  -  -   S4$ )z
Return rough approximation for W_k(z) from an asymptotic series,
sufficiently accurate for the Halley iteration to converge to
the correct value.
ii  ii  r   g,6V?g?r
   r   c                  *   > TT R                  S5      /$ r   )r   rP   s   r>   r   "_lambertw_series.<locals>.<lambda>  s    Aswwr{3CrA   r   r	   c              3   F   >#    U  H  nTU   TTS -   U-
     -  v   M     g7f)r   Nr   ).0r   lus     r>   	<genexpr>#_lambertw_series.<locals>.<genexpr>  s%     'K{!!Qqs1uX{s   !r   TFg,6V׿y               @)r   r   r   r   r   sqrter   r   r   maxfsumr)  r   r   r   )rJ   rL   r   tolmagzdeltacancellationprX   r`   termr'  r(  r/  r0  s   ``           @@r>   _lambertw_seriesr=    s    771:DdSuq/4//!8A../$6Av!r'cggajAoq&cggaj1n**+CD #L(HHQa	]+L(wwr{cggaj1wwqzSWWR[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7rA   c                    U R                  U5      n[        U5      nU R                  U5      (       d  [        XU5      $ U R                  nU =R                  SU R                  U=(       d    S5      -   -  sl        U R                  nUS-
  n[        XX%5      u  pgU(       d  U R                  S5      n[        S5       Hd  n	U R                  U5      n
Xj-  nX-
  nXlX-   Xh-   U-  X-  U-   -  -
  -  -
  nU R                  X-
  5      U R                  U5      U-
  ::  a  Un  OUnMf     W	S:X  a  U R                  SU-  5        X0l        U7$ )Nr  r   r   r   d   z1Lambert W iteration failed to converge for z = %s)r   r   isnormalr  r   r   r=  r   r   r   warn)rJ   rL   r   r   r  r7  r   donetwoiewwewwewzwns                 r>   lambertwrI    s+   AAAA<<?? ++88DHHSWWQV!_$$H	B
q&Csq.GAggajAB$C5D3615$,c	"::;;Bwwrt}c 11  8HHH1LMH2IrA   c                    U R                  U5      nU(       d)  U R                  U5      (       a  U$ [        U5      " S5      $ U R                  U5      (       dB  U R                  U5      (       d,  U R                  U5      (       d  U R                  U5      (       a  X!-  $ US:X  a  U$ US:X  a  X"S-   -  $ US:X  a  U R	                  U5      $ [        XUS5      U R                  U5      -  $ )Nr   r   r
   T)r   r   typer   r   _polyexpr   )rJ   rK   r   s      r>   bellrM    s    AA99Q<<HAwqz
yy||syy||syy||syy||tAvaxAva1g~Avcjjm#CAt$swwqz11rA   c                 <   ^ ^^^ U UUU4S jnT R                  USS9$ )Nc               3   |   >#    T(       a  TR                  T5      v   Tn Sn UT-  U -  v   US-  nU T-  U-  n M  7fr   )r   )tr   rJ   extrarK   r   s     r>   _terms_polyexp.<locals>._terms  sL     **Q-Q$(NFA!AA s   9<r   )
check_step)r   )rJ   rK   r   rQ  rR  s   ```` r>   rL  rL    s%      f33rA   c                    U R                  U5      (       dB  U R                  U5      (       d,  U R                  U5      (       d  U R                  U5      (       a  X!-  $ US:X  a  X!-  $ US:X  a  U R                  U5      $ US:X  a  U R                  U5      U-  $ US:X  a  U R                  U5      U-  US-   -  $ [	        XU5      $ )Nr
   r   r   )r   r   r   r   rL  )rJ   r`   rL   s      r>   polyexprV    s    
yy||syy||syy||syy||tAvaczAvciil"Avcggajl"AvcggajlAaC((CArA   c                    [        U5      nUS:  a  [        S5      eU R                  nUS:X  a  U$ US:X  a  X#-
  $ US:X  a  X#-   $ SnSnSnSn[        SUS-   5       He  nX-  (       a  M  U R	                  X-  5      n	U R                  X(5      * n
U
(       a	  X:U	-  -  nMC  U	S:X  a  XH-  nUS-  nMT  U	S:X  d  M\  XX-  nUS-  nMg     U(       a  Xg:  a  US-  nU$ X4-  nX5-  nU$ )Nr
   zn cannot be negativer   r   r   )r   
ValueErrorr   r   moebiusr   )rJ   rK   rL   r;  a_prodb_prod	num_zeros	num_polesdr   r   s              r>   
cyclotomicr_    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HrA   c                 n   [        U5      nUS:  a  U R                  $ US-  S:X  a$  XS-
  -  S:X  a  U R                  7$ U R                  $ S HT  nX-  (       a  M  X-  SpCUS:  a*  [        X25      u  p4U(       a  U R                  s  $ US:  a  M*  U R	                  U5      s  $    U R                  U5      (       a  U R	                  U5      $ US:  a  [        eSn [        USU-  -  S-   5      nUS:  a  U R                  $ X%-  U:X  a'  U R                  U5      (       a  U R	                  U5      $ US-  nM\  )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   r                        l       73Me'r!  r   )r   r   ln2divmodr   isprimerH   )rJ   rK   r;  qr  r   s         r>   mangoldtrl  ;  s&   0 	AA1uxx1uz!9>GG8O88O
 *uu61qa%a|88O a% 66!9 * {{1~~vvay6z!!	A
BqD	C q588O6Q;{{1~~vvay 	Q rA   c                     U R                  [        U5      [        U5      5      nU(       a  [        U5      $ U R                  U5      $ rC   )
_stirling1r   r   rJ   rK   r   exactr   s        r>   	stirling1rq  w  4    s1vs1v&A1vwwqzrA   c                     U R                  [        U5      [        U5      5      nU(       a  [        U5      $ U R                  U5      $ rC   )
_stirling2r   r   ro  s        r>   	stirling2ru    rr  rA   )r   )r
   )FrC   )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)  r=  rI  rM  rL  rV  r_  rl  rq  ru  r   rA   r>   <module>rx     s>   "L4v L4\  ,  , ,  , ,  , .  . .  . .  .% %  .  . .  .& &  0  0 0  0	 	     # # ? ? 4 4 ; ;* & &  "             % % * * 3 3   + +       =1~48l  8 2 2
4   ( (T 9 9v    rA   