
A\c           @   s  d  d l  m Z d e f d     YZ d   Z d   Z d   Z e d    Z e d    Z e d	    Z	 e d
    Z
 e d    Z e d    Z e d    Z e d    Z e d    Z e d    Z e d    Z e d    Z e d    Z e d d   Z e d    Z e d    Z e d    Z e d    Z e d    Z e d    Z e d d   Z e e d   Z e d    Z e d     Z e d!    Z  e d"    Z! e d#    Z" e d$    Z# e d%    Z$ e d- d&   Z& e d'    Z' e d(    Z( e d)    Z) e d*    Z* d+   Z+ d, d- l, Z, d, d- l- Z- d.   Z. d/   Z/ e d d0   Z0 e d d1   Z1 e d2  Z2 e d3    Z3 e d4    Z4 e d5    Z5 e e d6   Z6 e e d7   Z7 d- S(8   i   (   t   xranget   SpecialFunctionsc           B   s   e  Z d  Z i  Z d d Z d   Z e d    Z d   Z d   Z	 d   Z
 d	   Z d
   Z d   Z d   Z d   Z d   Z d   Z d   Z d   Z RS(   s  
    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.
    i   i
   ic         C   s  |  j  } x7 | j D], } | j | \ } } | j | | |  q W|  j d  |  _ |  j d  |  _ |  j d  |  _ |  j d  |  _ |  j d  |  _ |  j d  |  _	 |  j d  |  _
 |  j d  |  _ |  j d   |  _ |  j d!  |  _ |  j d"  |  _ |  j d#  |  _ |  j d$  |  _ |  j d%  |  _ |  j d&  |  _ |  j d'  |  _ |  j d(  |  _ i  |  _ |  j j i d
 d 6d d 6d d 6d d 6d d 6d d 6d d 6 |  j |  j  |  _ d  S()   Ni   i    i   i   i   i   i   i   i   t   argt   phaset   conjt	   conjugatet   roott   nthroott   psit	   polygammat   zetat   hurwitzt   fibt	   fibonaccit   fact	   factorial(   i   i   (   i    i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   i   i   (   t	   __class__t   defined_functionst   _wrap_specfunt   _mpqt   mpq_1t   mpq_0t   mpq_1_2t   mpq_3_2t   mpq_1_4t   mpq_1_16t   mpq_3_16t   mpq_5_2t   mpq_3_4t   mpq_7_4t   mpq_5_4t   mpq_1_3t   mpq_2_3t   mpq_4_3t   mpq_1_6t   mpq_5_6t   mpq_5_3t   _misc_const_cachet   _aliasest   updatet   memoizet   zetazerot   zetazero_memoized(   t   selft   clst   namet   ft   wrap(    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   __init__   s>    		c         C   s   t  |  | |  d  S(   N(   t   setattr(   R,   R-   R.   R/   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyR   =   s    c         C   s
   t   d  S(   N(   t   NotImplementedError(   t   ctxt   nt   z(    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   _besseljD   s    c         C   s
   t   d  S(   N(   R2   (   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   _erfE   s    c         C   s
   t   d  S(   N(   R2   (   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   _erfcF   s    c         C   s
   t   d  S(   N(   R2   (   R3   R5   t   a(    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   _gamma_upper_intG   s    c         C   s
   t   d  S(   N(   R2   (   R3   R4   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   _expint_intH   s    c         C   s
   t   d  S(   N(   R2   (   R3   t   s(    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   _zetaI   s    c         C   s
   t   d  S(   N(   R2   (   R3   R<   R9   R4   t   derivativest   reflect(    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   _zetasum_fastJ   s    c         C   s
   t   d  S(   N(   R2   (   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   _eiK   s    c         C   s
   t   d  S(   N(   R2   (   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   _e1L   s    c         C   s
   t   d  S(   N(   R2   (   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   _ciM   s    c         C   s
   t   d  S(   N(   R2   (   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   _siN   s    c         C   s
   t   d  S(   N(   R2   (   R3   R<   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   _altzetaO   s    gHz>(   t   __name__t
   __module__t   __doc__R   t   THETA_Q_LIMR0   t   classmethodR   R6   R7   R8   R:   R;   R=   R@   RA   RB   RC   RD   RE   (    (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyR      s"   
	+											c         C   s   |  t  f t j |  j <d  S(   N(   t   TrueR   R   RF   (   R.   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   defun_wrappedQ   s    c         C   s   |  t  f t j |  j <d  S(   N(   t   FalseR   R   RF   (   R.   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   defunT   s    c         C   s   t  t |  j |   d  S(   N(   R1   R   RF   (   R.   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   defun_staticW   s    c         C   s   |  j  |  j |  S(   N(   t   onet   tan(   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   cotZ   s    c         C   s   |  j  |  j |  S(   N(   RP   t   cos(   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   sec]   s    c         C   s   |  j  |  j |  S(   N(   RP   t   sin(   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   csc`   s    c         C   s   |  j  |  j |  S(   N(   RP   t   tanh(   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   cothc   s    c         C   s   |  j  |  j |  S(   N(   RP   t   cosh(   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   sechf   s    c         C   s   |  j  |  j |  S(   N(   RP   t   sinh(   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   cschi   s    c         C   s)   | s |  j  d S|  j |  j |  Sd  S(   Ng      ?(   t   pit   atanRP   (   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   acotl   s    c         C   s   |  j  |  j |  S(   N(   t   acosRP   (   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   asecs   s    c         C   s   |  j  |  j |  S(   N(   t   asinRP   (   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   acscv   s    c         C   s)   | s |  j  d S|  j |  j |  Sd  S(   Ny              ?(   R]   t   atanhRP   (   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   acothy   s    c         C   s   |  j  |  j |  S(   N(   t   acoshRP   (   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   asech   s    c         C   s   |  j  |  j |  S(   N(   t   asinhRP   (   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   acsch   s    c         C   sd   |  j  |  } | s% |  j |  r) | S|  j |  rV | d k rK |  j S|  j Sn  | t |  S(   Ni    (   t   convertt   isnant   _is_real_typeRP   t   abs(   R3   t   x(    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   sign   s    i   c         C   sG   | d k r |  j  |  S|  j |  } |  j |  } |  j | |  S(   Ni   (   t   agm1Rj   t   _agm(   R3   R9   t   b(    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   agm   s
    c         C   s6   |  j  |  r d | S| s% | d S|  j |  | S(   Ni   (   t   isinfRU   (   R3   Rn   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   sinc   s
    c         C   s=   |  j  |  r d | S| s% | d S|  j |  |  j | S(   Ni   (   Rt   t   sinpiR]   (   R3   Rn   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   sincpi   s
    c            sR    s   j  S  j     j k  r6  d  d S  j    f d   d  S(   Ng      ?i   c              s   t    j   d g  S(   Ni(   t   itert   exp(    (   R3   Rn   (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   <lambda>   s    i   (   t   zerot   magt   prect   sum_accurately(   R3   Rn   (    (   R3   Rn   s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   expm1   s
    c         C   s\   | s |  j  S|  j |  |  j k  r6 | d | d S|  j |  j d | d d |  j  S(   Ng      ?i   i   R}   (   R{   R|   R}   t   logt   fadd(   R3   Rn   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   log1p   s
    c   
         s   |  j  } |  j }    | } | |  } | d k r< | S| sk  sd   d k rk |  j   rk | Sn    | } |   } |  j    }	 | | |	  |  j k  r |	  |	  d d S|  j    f d   d  S(	   Nii   iy              ?y              i   c              s   t     d g  S(   Ni(   Rx   (    (   Rn   t   y(    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyRz      s    (   i   iy              ?y              (   R|   RP   t   isintt   lnR}   R~   (
   R3   Rn   R   R|   RP   t   wt   Mt   x1t   magyt   lnx(    (   Rn   R   s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   powm1   s    		"
c         C   s   t  |  } t  |  } | | ;} | s/ |  j Sd | | k rG |  j Sd | | k r^ |  j Sd | d | k rz |  j S|  j d |  j |  |  S(   Ni   i   i   (   t   intRP   t   jt   expjpit   mpf(   R3   t   kR4   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   _rootof1   s    
i    c         C   s   t  |  } |  j |  } | r | d @rv d | | d k rv |  j |  rv |  j |  d k  rv |  j | |  S|  j } z8 |  j d 7_ |  j | | d  |  j | |  } Wd  | |  _ X| 
S|  j | |  S(   Ni   i   i    i
   (   R   Rj   t   imt   reR   R}   R   t   _nthroot(   R3   Rn   R4   R   R}   t   v(    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyR      s    C	)
c         C   s   |  j  } |  j } z |  j d 7_ | rm g  t |  D]- } | | |  d k r7 |  j | |  ^ q7 } n+ g  t |  D] } |  j | |  ^ qz } Wd  | |  _ Xg  | D] } | 
^ q S(   Ni
   i   (   t   _gcdR}   t   rangeR   (   R3   R4   t	   primitivet   gcdR}   R   R   Rn   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt	   unitroots   s    		C/
c         C   s=   |  j  |  } |  j |  } |  j |  } |  j | |  S(   N(   Rj   t   _ret   _imt   atan2(   R3   Rn   R   R   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyR     s    c         C   s   t  |  j |   S(   N(   Rm   Rj   (   R3   Rn   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   fabs  s    c         C   s)   |  j  |  } t | d  r% | j S| S(   Nt   real(   Rj   t   hasattrR   (   R3   Rn   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyR     s    c         C   s,   |  j  |  } t | d  r% | j S|  j S(   Nt   imag(   Rj   R   R   R{   (   R3   Rn   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyR     s    c         C   s6   |  j  |  } y | j   SWn t k
 r1 | SXd  S(   N(   Rj   R   t   AttributeError(   R3   Rn   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyR     s
    c         C   s   |  j  |  |  j |  f S(   N(   R   R   (   R3   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   polar%  s    c         C   s   | |  j  |  j |    S(   N(   t   mpct   cos_sin(   R3   t   rt   phi(    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   rect)  s    c         C   sL   | d  k r |  j |  S|  j d } |  j | d | |  j | d | S(   Ni   R}   (   t   NoneR   R}   (   R3   Rn   Rr   t   wp(    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyR   -  s    c         C   s   |  j  | d  S(   Ni
   (   R   (   R3   Rn   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   log104  s    c         C   s   |  j  |  |  j  |  S(   N(   Rj   (   R3   Rn   R   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   fmod8  s    c         C   s   | |  j  S(   N(   t   degree(   R3   Rn   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   degrees<  s    c         C   s   | |  j  S(   N(   R   (   R3   Rn   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   radians@  s    c         C   s   | s | s | S|  j  | S| |  j k rW | d k r: | S| d | |  j |  j Sn  | |  j  k r | d | d |  j |  j S|  j |  S(   Ni    i   i   (   t   ninft   infR]   R   R   (   R3   R5   R   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   _lambertw_specialD  s    iNc         C   s  d } t  |  d  rU t |  j  } |  j } | rF d | d k  } n  t |  } n t |   } d } d } | s| d } n  t | |  }  | d k rBd | k  o d k  n rd | k  o d k  n r| rH| d	 k r d) d* |  d+ S| d k rd, d- |  d. S| d k  r)d/ d0 |  d1 S| d k  rHd2 d3 |  d4 Sn  | d k  r| d k rpd5 d6 |  d Sd7 d8 |  d Sn  d } | r| | k r| }  n  | d k  rd d |  | d  d! |  | S| d  k  r|  Sd" d# |  S| r!| d k r!t j |  } t j |  } qst j |   } t j |  } n1| d k rsd } | r| | k  ord k  n r| }  n  | d k r| d$ k  rd% | k  od k  n rd d |  | d  d! |  | S| rd | k od k  n rt j |  } | t j |  S| d k rN| rN| d k  rNt j |   d& } n t j |   d' } t j |  } n  | | | | | | d( d( | d( S(9   Ni    R   ig        g      g      @g      g      @g      ?gx&1?y        p=
ף?gh|?5?y        ʡE?g      ?y              @g      ?g)\(?y        &1?g      ?y        L7A`?y              ?g      пg      g'1ZԿy        q=
ףp?gMy        `"?i   g2,6V׿gɿg4@g      ?g}tp?g?g333333?g?g333333y        -DT!	@y        -DT!@i   yx&1?p=
ף?yh|?5?ʡEƿy      ?      @y)\(?&1?y      ?L7A`y      ?      ?yx&1?p=
ףyh|?5?ʡE?y      ?      y)\(?&1ʿy      ?L7A`?y      ?      y'1ZԿq=
ףp?yM`"y'1ZԿq=
ףpyM`"?(   R   t   floatR   R   t   complext   mathR   t   cmath(   R5   R   t	   imag_signRn   R   R   t   L1t   L2(    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   _lambertw_approx_hybridW  sn    		8    	    #	4 #c            s    j    } d | k  o& d k  n rd | k  oB d k  n r| d k  rt  d  d k  r| d k s | d	 k r   j   d k s | d k r  j   d k  r  j    f d
    }   j  |  }   j | 7_   j d   j  d  }   j | 8_ i   j d	  d 6  j d  d 6 i   j d  d 6  j d	  d 6} | d k r| } n    j }	 x t	 t
 d |   D]    k r9  j   f d   t	 d   D  |  < d   d d |  d d  d |  d   d  d   <n    |  }
 |	 |
 7}	   j  |
  | k  ru|	 t f S d 7 qW  j | d 7_ |	 t f Sn  | d k s| d	 k rt  |  t f Sn  | d k r| d	 k  r d  t f S  j   }   j |  } n | d	 k r  j   rd   j   k  oXd k  n r  j   } |   j |  t f S  j   d   j | }   j |  } | | | | | | d d | d t f S(   s   
    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  i   g,6V?g?i    ic              s      j  d  g S(   Ni(   Ry   (    (   R3   R5   (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyRz     s    i   c         3   s)   |  ] }  |    d  | Vq d S(   i   N(    (   t   .0R   (   t   lt   u(    s9   lib/python2.7/site-packages/mpmath/functions/functions.pys	   <genexpr>  s    i   g,6V׿y               @(   R|   Rm   R   R~   R}   t   sqrtt   eR   R{   R    t   maxt   fsumRK   RM   R   R   R   R]   (   R3   R5   R   t   tolt   magzt   deltat   cancellationt   pR9   R<   t   termR   R   (    (   R3   R   R   R5   s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   _lambertw_series  sN    8"-!&&
	/Y

Ac         C   ss  |  j  |  } t |  } |  j |  s: t |  | |  S|  j } |  j d |  j | p\ d  7_ |  j } | d } t |  | | |  \ } } | se|  j d  } x t d  D] }	 |  j	 |  }
 | |
 } | | } | | | |
 | | | | | | } |  j | |  |  j |  | k r8| } Pq | } q W|	 d k re|  j
 d |  qen  | |  _ | 
S(   Ni   i   i   i   id   s1   Lambert W iteration failed to converge for z = %s(   Rj   R   t   isnormalR   R}   R|   R   R   R    Ry   t   warn(   R3   R5   R   R}   R   R   R   t   donet   twot   it   ewt   wewt   wewzt   wn(    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   lambertw  s0    	"	


*&
	c         C   s   |  j  |  } | s8 |  j |  r( | St |  d  S|  j |  st |  j |  st |  j |  st |  j |  r| | | S| d k r | S| d k r | | d S| d k r |  j |  St |  | | t  |  j |  S(   Ni   i   i    (   Rj   Rk   t   typeRt   Rw   t   _polyexpRK   Ry   (   R3   R4   Rn   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   bell  s    <   c            s+        f d   }   j  | d d S(   Nc          3   sS    r   j    Vn   }  d } x) |  |  V| d 7} |   | }  q& Wd  S(   Ni   (   Rw   (   t   tR   (   R3   t   extraR4   Rn   (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   _terms  s    
t
   check_stepi   (   R~   (   R3   R4   Rn   R   R   (    (   R3   R   R4   Rn   s9   lib/python2.7/site-packages/mpmath/functions/functions.pyR     s    	c         C   s   |  j  |  s< |  j  |  s< |  j |  s< |  j |  rD | | S| d k rX | | S| d k rq |  j |  S| d k r |  j |  | S| d k r |  j |  | | d St |  | |  S(   Ni    i   i   (   Rt   Rk   R   Ry   R   (   R3   R<   R5   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   polyexp  s    <    c         C   sh  t  |  } | d k  r' t d   n  |  j } | d k r@ | S| d k rT | | S| d k rh | | Sd } d } d } d } x t d | d  D] } | | s |  j | |  }	 |  j | |  }
 |
 r | |
 |	 9} q*|	 d k r| | 9} | d 7} q*|	 d k r*| | 9} | d 7} q*q q W| rd| | k rM| d 9} qd| | 9} | | :} n  | S(   Ni    s   n cannot be negativei   i   i(   R   t
   ValueErrorRP   R   t   moebiusR   (   R3   R4   R5   R   t   a_prodt   b_prodt	   num_zerost	   num_polest   dR   Rr   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt
   cyclotomic  s@    	



c      
   C   si  t  |  } | d k  r |  j S| d d k rU | | d @d k rK |  j 
S|  j Sn  xk d D]c } | | s\ | | d } } x2 | d k r t | |  \ } } | r |  j Sq W|  j |  Sq\ W|  j |  r |  j |  S| d k r t  n  d } xh t  | d | d  } | d k  r(|  j S| | | k rW|  j |  rW|  j |  Sn  | d 7} q Wd S(   s  
    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

    i   i    i   i   i   i   i   i   i   i   i   i   i   i
   i   g      ?g      ?N(
   i   i   i   i   i   i   i   i   i   i   l       73Me'(   R   R{   t   ln2t   divmodR   t   isprimeR2   (   R3   R4   R   t   qR   R   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   mangoldt8  s8    

	c         C   s?   |  j  t |  t |   } | r. t |  S|  j |  Sd  S(   N(   t
   _stirling1R   R   (   R3   R4   R   t   exactR   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt	   stirling1t  s    
c         C   s?   |  j  t |  t |   } | r. t |  S|  j |  Sd  S(   N(   t
   _stirling2R   R   (   R3   R4   R   R   R   (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt	   stirling2|  s    
(8   t   libmp.backendR    t   objectR   RL   RN   RO   RR   RT   RV   RX   RZ   R\   R_   Ra   Rc   Re   Rg   Ri   Ro   Rs   Ru   Rw   R   R   R   R   R   RM   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   (    (    (    s9   lib/python2.7/site-packages/mpmath/functions/functions.pyt   <module>   sv   N				
		?	6
+<