
    g6A                     f   d dl mZ d dlmZ d dlmZmZmZmZ d dl	m
Z
 d dlmZ d dlmZmZ d dlmZ d dlmZ d d	lmZ d d
lmZmZmZ d dlmZ d dlmZmZmZ d dl m!Z! d dl"m#Z#m$Z$ d dl%m&Z'm(Z)m*Z+ d Z,d Z-d Z.d Z/d Z0d Z1d Z2d Z3d Z4d Z5e$d             Z6e$d             Z7d Z8d Z9d Z:d Z;d S )!    )Tuple)
Derivative)IRationaloopi)S)symbols)explog)sqrt)cos)gamma)appellf1hypermeijerg)O)xzk)limit)raisesslow)random_complex_numberverify_numericallytest_derivative_numericallyc                      t          ddt          dz            } |                     t                    | dz  t          z  k    sJ d S )N    )r   r   diff)ps    d/var/www/html/ai-engine/env/lib/python3.11/site-packages/sympy/functions/special/tests/test_hyper.pytest_TupleParametersBaser#      s@    b"adA66!99!A    c            	         t          t          d            t          ddt                    t          t	          dd          t	          d          t                    k    sJ t          ddt                    t          dd	t                    k    sJ t          ddt          d
          } | j        t	          ddd          k    sJ | j        t	          dddd          k    sJ t          ddt                    }|j        t	          dd          k    sJ |j        t	          ddd          k    sJ |j        t          k    sJ |j        du sJ t          ddt                    }|j        t	          dd          k    sJ |j        t	          ddd          k    sJ |j        t          k    sJ |j        du sJ t          t          t	                      t	                      t                    t          t                    t                    sJ t          t          t          dt	          d          t                     z  t          dt          z             t                    sJ t          t                      t                      t                      ft                      t                      ft                    }t          |t                    sJ t          d          \  }}}}}t          ||f|||ft                                        t                    ||z  ||z  |z  z  t          |dz   |dz   f|dz   |dz   |dz   ft                    z  k    sJ t          t          gg t                                        t                    t!          t          t          gg t                    t                    k    sJ ddlm} t           |t                    g |t&                    g |t(                              t          t          gt&          g |t(                              k    sJ t          ddt          d
          j        t          u sJ d S )Nc                  .    t          ddt                    S )N   r   )r   r   r   r$   r"   <lambda>ztest_hyper.<locals>.<lambda>   s    eAq!nn r$   )r   r'   r'   r'   r   )r   r'   r   )r'   r   r'      r   r'   r*   Fevaluater*   r'   r   r*         r1   r2   T)r1   r*   r2   )r'   r'   z
a1:3, b1:4r   
polar_lift)r   	TypeErrorr   r   r   apbqargumentis_commutativetnr   r   randcplxtdr
   r    r   $sympy.functions.elementary.complexesr4   r   r   func)uha1a2b1b2b3r4   s           r"   
test_hyperrF      s   
9,,---q!!U5A;;a!%D%DDDDDL!,,dFA0F0FFFFFiq5999A45Aq>>!!!!45Aq!$$$$$$fi##A45A;;45Aq>>!!!!:????t####fi##A45A;;45Aq>>!!!!:????t#### eEGGUWWa((#a&&!44444afeAhh+++SQZZ;;;;; 		XZZ,xzz8::.F	K 	KAa88OOO ..BBB"bBB<++0033
2r"uRx5"q&"q&!1BFBFBF3KQOOOP P P P !b!!!!$$
5!b!3D3Da(H(HHHHH @?????**Q--::a==/::a==AAqcA3

1&&' ' ' '
 q51116%??????r$   c            	      &   ddl m} m}m} ddlm} t                      t                      t                      dz   }}} |t          | |g|gd                    t          |          t          |  |z
  |z             z  t          |  |z             t          | |z             z  z  k    sJ t           |t          ||g|gd                    
                                t          ||g|gd          
                                z
            dk     sJ  |t          g g t                              t          t                    k    sJ  |t          g dg t                              t          g dg t                    k    sJ  |t          ddgg gdgdggt                              t          t          dz             k    sJ  |t          ddgg gg g gt                              t          ddgg gg g gt                    k    sJ d S )Nr   )abc)expand_funcr2   r'   绽|=r'   r   r*   )	sympy.abcrH   rI   rJ   sympy.core.functionrK   r;   r   r   absnr   r   r   r   )rH   rI   rJ   rK   rA   rC   c1s          r"   test_expand_funcrS   I   sE   !!!!!!!!!!//////XZZaBB;uaVaS!,,--arAvz"""E1"q&MM%Q--$?@A A A A{{5"bB433446688Bx"q))++--. / /167 7 7 7 ;uRQ''((CFF2222;uYYYA..//5B3J3JJJJJ;wA|qcA3Z;;<<AE

JJJJ;wA|b"Xq99::!Qr2h**+ + + + + +r$   c                     ddl m} |                     |          }|s| S t          |          dk    sJ |                     |                                |i          S )Nr   Dummyr'   )sympy.core.symbolrV   atomslenxreplacepop)exprsymrV   dums       r"   replace_dummyr_   [   sd    ''''''
**U

C s88q======#''))S)***r$   c                     ddl m}  ddlm} ddlm}m}  |d          }t          t          ddt                    
                    |           |           | t          |z   ||          z   |d|          z   |d	|          z  |dt          f          k    sJ t          d
dt                    
                    |           t          d
dt                    k    sJ d S )Nr   )SumrU   )RisingFactorial	factorialr   r/   r,   r   r*   rM   )r*   )sympy.concrete.summationsra   rW   rV   (sympy.functions.combinatorial.factorialsrb   rc   r_   r   r   rewriter   r   )ra   rV   rb   rc   _ks        r"   test_hyper_rewrite_sumri   d   s"   ------''''''UUUUUUUU	sBvvq1199#>>CCArEIIbMM!OOAr$:$::OAr""#%'BK	1 	11 1 1 1 GQ''//44i!$$% % % % % %r$   c                     t          ddgt                    j        dk    sJ t          dddgt                    j        t          u sJ t          ddgt                    j        dk    sJ t          ddgt                    j        t          u sJ t          dd	gt                    j        dk    sJ t          d
dgt                    j        t          u sJ t          dddgt                    j        dk    sJ t          g dddgt                    j        dk    sJ t          ddgddgt                    j        t          u sJ t          g ddgt                    j        dk    sJ t          dg t                    j        t          u sJ t          ddgdgd          j        dk    sJ t          ddgdgd          j        dk    sJ t          ddgdgd          j        dk    sJ t          ddgdgd          j        dk    sJ d S )Nr/   r*   r'   r1   rM   r   )r   r'   r   )rd   r'   r   )rd   r   rd   )rd   r   rl   )rd   r'   r*   r   )rd   r   r*   r1   TF)r   r   radius_of_convergencer   convergence_statementr   r$   r"   test_radius_of_convergencero   q   s(   !a  6!;;;;!Q##9R????QC##9Q>>>>QC##9R????bT1%%;q@@@@rdA&&<BBBB2r(A&&<AAAAb!Wa((>!CCCC"a2q'1%%;rAAAAbT1%%;q@@@@A&&<BBBB!Q!a  6$>>>>!Q!a  6%????!Q!b!!74????!Q!b!!75@@@@@@r$   c                     t          t          d            t          t          d            t          ddt                    t          t	          dd          t	          d          t	          d          t	          d	          t                    k    sJ t          d
dddt                    } | j        t	          dd          k    sJ | j        t	          ddddd	          k    sJ | j        t	          ddd	          k    sJ | j        t	          dddd          k    sJ | j	        t	          ddddddddd	  	        k    sJ | j
        t	          ddddd          k    sJ | j        t          k    sJ | j        dk    sJ | j        dk    sJ | j        du sJ | j        du sJ t          g g gt           j        gdggd          j        du sJ t          ddgdgdgd	gt                    j        t           j        k    sJ t%          t          t	                      t	                      t	          d          t	                      t                     t'          t                    t                    sJ t%          t)          t*                    t          t	                      t	                      t	          d          t	          t           j                  t          dz  dz            z  t-          t                    t                    sJ t%          t          t	          dd          t	                      t	          d          t	          d          t                    t/          dt          z             t                    sJ t          t0          d            t          t0          d            t          t3                      ft3                      dt4          z  z   ft	                      t3                      t3                      ft                    } t7          | t                    sJ t          t	                      t3                      ft	                      t3                      t3                      ft                    } t7          | t                    sJ t          t	                      t	                      t	          t3                                t	          t3                      t3                                t                    } t7          | t                    sJ t9          d          \  }}}}}}}}t          ||f||f||f||ft                                        t                    t          |dz
  |f||f||f||ft                    |dz
  t          ||f||f||f||ft                    z  z   t          z  k    sJ t          t          t          gg g g t                                        t                    t=          t          t          t          gg g g t                    t                    k    sJ ddlm }	 t           |	|          g |	|          g |	|          g |	|          g |	t                              t          |g|g|g|g |	t                              k    sJ dd l!m"}
m#}m$}m%}m&} t          |
g|g|g|gt                    '                    |          t          |z  tQ          ||z
            z  tQ          |
 |z   dz             z  tQ          ||z
            tQ          | |z   dz             z  z  k    sJ d S )!Nc                  ,    t          dt                    S )Nr'   r   r   r   r$   r"   r(   ztest_meijer.<locals>.<lambda>   s    gamm r$   c                  0    t          dddt                    S )N)r)   r+   r*   r1   rr   r   r$   r"   r(   ztest_meijer.<locals>.<lambda>   s    glD$BB r$   )r/   rt   )ru   )r2   r'   r   r*   r1   r2   r/   r0   )         	   )
               rv   rw   rx   ry   rz   r{   r|   r}   r~   K   rd   TFr   c                  >    t          dt          fdft                    S )N)r*   r'   r+   r   r   )r   r   r   r   r$   r"   r(   ztest_meijer.<locals>.<lambda>   s    w~vJJ r$   c                  .    t          ddt                    S )Nr   )r)   r   )r   r   r   r$   r"   r(   ztest_meijer.<locals>.<lambda>   s    w~~qII r$   za1:3, b1:3, c1:3, d1:3r3   )rH   rI   rJ   ds))r   r5   r   r   r   anr6   aotherbmr7   botherr8   nudeltar9   	is_numberr	   Halfr:   r   r   r   r   r   
ValueErrorr;   r   r<   r
   r    r   r=   r4   rN   rH   rI   rJ   r   r   	integrandr   )grA   rB   rC   rD   rR   c2d1d2plrH   rI   rJ   r   r   s                  r"   test_meijerr      s   
9++,,,
9BBCCC><33aU1XXuQxxq1==> > > > 		<1EqIIA45A;;45Aq!Q''''''8uQ1~~%%%%45Aq!$$$$$$45Aq!RRR8888888uRRR000000:????42::::7b====t####;%Br7afXqcNA..8D@@@@Aq6A3aS!,,2af<<<< gegguwwa%''A2>>AJJJJJd2hhwuww$Qxxqv1Q@ @ @ADQL L L L LgeAqkk577E!HHeAhhBB!a%jj!     :JJKKK
:IIJJJ 	

QqS 02EGGXZZ(!	- 	-Aa88OOO(**XZZ(!	- 	-Aa88OOO%

"3"3hjj(**--q	2 	2Aa88OOO%,-E%F%F"BBBBB8b"XBx"b1==BB1EE	"q&"Bx"bB8Q	?	?FGRHr2hR2r(AFFF
GHI	JJ J J J Aq62r2q))..q117Aq62r2q111556 6 6 6 FEEEEEBBrFF8bbffX2x""R&&22a55AArdRD2$1../ / / / ('''''''''''''A3aS1#q))33A66	1U1q5\\%Q
+++U1q5\\%Q
:K:K-KLM M M M M Mr$   c                  X   t          g ddgddt          gg t                                        t                    t	          t                    t          g ddgddt          gg t                    z  dt          g g dddt          dgg t                    z  z   k    sJ t                      } d}t          t          t          gg g g |           t                    sJ t          t          t          dz  gg g g |           t                    sJ t          t          g t          gg g |           t                    sJ t          t          g g t          gg |           t                    sJ t          t          g g g t          g|           t                    sJ t          t          t          g|g|dz   gg |           t                    sJ t          t          t          g|dz   g|gg |           t                    sJ t          t          t          |gg g |dz   g|           t                    sJ t          t          t          |dz   gg g |g|           t                    sJ t          dd          }t          t          |dz   g|g|dz
  t          g|g|           t                    sJ d S )Nr'   r   r   )r'   r'   r'   r2   r*   )r   r   r   r    r   r;   r<   r   )yrH   rI   s      r"   test_meijerg_derivativer      sy   21v1ay"a0055a88AwrAq6Aq!9b!444
GB			Aq!Q<Q77
7	88 8 8 8 	

A	Agqc2r2q))1-----gq!tfb"b!,,a00000gb1#r2q))1-----gb"qc2q))1-----gb"b1#q))1-----gqcA3QQ//33333gqcAE7QCQ//33333gq!fb"q1ugq11155555gq!a%j"b1#q11155555AAgq1ugsQUAJQ77;;;;;;;r$   c                     t          g dgdgg t                                                    dt          z  k    sJ t          dgg g dgt                                                    dt          z  k    sJ t          g g dgg t                                                    dt          z  k    sJ t          g g dgt          j        gt                                                    dt          z  k    sJ t          g g t          j        gdgt                                                    dt          z  k    sJ t          ddgg dgdgt                                                    t          u sJ d S )Nr'   r   r   r1   )r   r   
get_periodr   r	   r   r   r   r$   r"   test_meijerg_periodr      s\   2sQCQ''2244"<<<<A3BQ''2244"<<<<2rA3A&&1133qt;;;;
BafXq" "",*,,!B$7 7 7 7
B1#q" "",*,,!B$7 7 7 7Aq62sQC++6688B>>>>>>r$   c                     ddl m}   | dt          z  t          z            t          z  }t          }t          g g |          j        |k    sJ t          dgg |          j        |k    sJ t          dgdg|          j        |k    sJ t          ddgdg|          j        |k    sJ t          ddgdg | dt          z  t          z                      j        dk    sJ d S )Nr   	exp_polarr   r'   )&sympy.functions.elementary.exponentialr   r   r   r   r   r8   )r   rH   rI   s      r"   test_hyper_unpolarifyr      s    @@@@@@	!B$q&!A	AR$))))!b!%****!qc1&!++++!Q!a  )Q....!Q!ii"Q//009Q>>>>>>r$   c                  `   ddl m} m}m}m}m}m}m}m}m	}m
}	m}
m} ddlm ddlm} t#          d          \  } G fdd|           } ||                              d           |dt'          |          d	k    fd
f          k    sJ  | t(          t*          z            |z                                d           |dt'          |          d	k    fd
f          k    sJ  | dt(          z  t*          z            |z                                d           |t'          |          d	k    fd
f          k    sJ  | dt(          z  t*          z            |z                                d           |t'          |          d	k    fd
f          k    sJ  | dt(          z  t*          z            |z                                d           |dz  t'          |          d	k    fd
f          k    sJ  | dt(          z  t*          z            |z                                d           |dz  t'          |          d	k    fd
f          k    sJ  ||                              d          k    sJ  | t(          t*          z            |z                                d          k    sJ fd}t-          d	d           | ||          t/          t0          j        d	gt-          dd          g|          |          sJ  | ||          t/           gg |          |          sJ  | ||          t/          t0          j        z
  gdz  g|          |          sJ  | ||          | t/          d	d	gdg|          z  |          sJ  | ||          t/          t0          j        t0          j        gt-          dd          g|          |          sJ  | ||          t/          d	d	gt-          dd          g|          |          sJ  | ||          t/           t0          j        z
  gt0          j        g|          |          sJ  | ||          d|z  dz  d	z   z  t/           t0          j        z
   gt0          j        g|                              |          z  |          sJ  | |	|          | dz  t/          t-          dd          d	d	gddg|          z  |          sJ  | |
|          t/           gt0          j        g|          |          sJ  | ||          dz  |z  t/          d	z
  d	z   gt-          dd          g|          z  |          sJ d S )Nr   )HyperRepHyperRep_atanhHyperRep_power1HyperRep_power2HyperRep_log1HyperRep_asin1HyperRep_asin2HyperRep_sqrts1HyperRep_sqrts2HyperRep_log2HyperRep_cosasinHyperRep_sinasinr   )	Piecewisez	a b c d zc                   x    e Zd Ze fd            Zefd            Zefd            Zefd            ZdS )test_hyperrep.<locals>.myrepc                     S Nr   )clsr   rH   s     r"   _expr_smallz(test_hyperrep.<locals>.myrep._expr_small       Hr$   c                     S r   r   )r   r   rI   s     r"   _expr_small_minusz.test_hyperrep.<locals>.myrep._expr_small_minus  r   r$   c                     |z  S r   r   )r   r   rQ   rJ   s      r"   	_expr_bigz&test_hyperrep.<locals>.myrep._expr_big      Q3Jr$   c                     |z  S r   r   )r   r   rQ   r   s      r"   _expr_big_minusz,test_hyperrep.<locals>.myrep._expr_big_minus	  r   r$   N)__name__
__module____qualname__classmethodr   r   r   r   rH   rI   rJ   r   s   r"   myrepr      s        		 	 	 	 
	 
	 	 	 	 
	 
	 	 	 	 
	 
	 	 	 	 
	 	 	r$   r   nonrepr'   Tr   r*   r1   r2   nonrepsmallc           
         t          |                     d          |t          dd          t          dd          t          j        t          j                  sdS t          |                     d                               t          t          z            z                                t                    |                      t          t          z            z                                d          t          dd          t          dd          t          j        t          j                  sdS |                      t          t          z            z                                d          }t          |                    d                                          |                    d                                          z
            d	k    rdS fd
}dD ]} || dt          z  t          z  |z  t          t          z  dz            } || dt          z  t          z  |z  t          t          z  z   t           t          z  dz            }t          ||          s dS  || dt          z  t          z  |dz   z  t           t          z  dz            } || dt          z  t          z  |z  t          t          z  z   t          t          z  dz            }t          ||          s dS dS )z2 Test that func is a valid representation of hyp. r   rd   r   r   Fr   g     ?g?rL   c                     |                       |          z                                d          }|                      |          z                                t                    S )Nr   )subsrg   replacer   )r>   rH   rI   rvr   r   s       r"   dosubsz(test_hyperrep.<locals>.t.<locals>.dosubs-  s`    1iill1n--55h??B771iill1n--55iEEEr$   )	r   r'   r   r*   r1   rd   rl   rk   r'   T)r:   rg   r   r	   r   r   r   r   r   r   rP   rQ   )	r>   hypr   r\   r   rQ   expr1expr2r   s	     `     r"   tztest_hyperrep.<locals>.t  s    $,,}--sAROOxA!&AFL L L 	5LL'',,99QrT??1$& &&-gi&=&=IIa1R4*++33MBBXb!__Q16QV	M M M 	
 5yyIIadOOA-..66x@@tyyI&&((**TYYq)-D-D-F-F-H-HHIIEQQ5	F 	F 	F 	F 	F 	F 1 	 	AF41R1R4622EF41RAbD1"R%'::EeUA&& uuF41RQ!Bq99EF41RAbD!B$q&99EeUA&& uutr$   rl   )sympy.functions.special.hyperr   r   r   r   r   r   r   r   r   r   r   r   r   r   $sympy.functions.elementary.piecewiser   r
   rg   rP   r   r   r   r   r	   r   r    )r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rH   rI   rJ   r   r   s                   @@@@@r"   test_hyperrepr      s   , , , , , , , , , , , , , , , , , , , , , , , , , , , ,
 A@@@@@>>>>>>K((MAq!Q              588H%%As1vvz?QI)N)NNNNN51R4"##++H55	1c!ffqj/At9--. . . .51Q3r6""1$%%--h77	1c!ffqj/At9--. . . .51Q3r6""1$%%--h77	1c!ffqj/At9--. . . .51Q3r6""1$%%--h77	1Q3A
#aY//0 0 0 051Q3r6""1$%%--h77	1Q3A
#aY//0 0 0 0588M**a////51R4"##++M::a????    D 	AA1^^AqvqkHQNN3CQ G GKKKKK1__Q""EA2$A$6$6:::::1__Q""E1a!&j/AaC5!$D$DaHHHHH1]]1r%AQ"7"77;;;;;1^^Aqvqv&6!Q8H! L LaPPPPP1^^Aq!fx1~~.> B BAFFFFF1__Q""EA2qvz*:QVHa$H$H!LLLLL1__Q""T1Q37^EA2;"3afXqAAFFqIII1N N N N N1]]1r!tE8Aq>>1a*@1a&!$L$LLaPPPPP1a##UQB7QVHa%@%@!DDDDD1a##QqSU5!a%Q(1a..AQST+U+U%UWXYYYYYYYr$   c                     ddl m}  ddlm} ddlm} t                      }t           | t          t          z  t          z            z  }t          t          g |dz   dz  gg|dz  g| dz  |dz   dz  gg|dz  dz            z  } |||          }dD ]|}d	D ]w}t          ||z
                      t          |t          |i
                    dk     sJ t          ||z
                      t          |t          | i
                    dk     sJ x}d}	|                    t          |          }dD ]}dt          dd          ddt          dd          ddfD ]}t          ||z
                      t          |t          ||	z   |||	z
  i
                    dk     sJ t          ||z
                      t          |t          | |	z   || |	z
  i
                    dk     sJ t          dd | t           t          z            dz            t          dd | t          t          z            dz            z   dt!          t                    z  z  }
|
t          t#          d          z  z
                      d          dk    sJ d S )Nr   r   )besseli)lr'   r   r1   )      ?      ?)g        g?g333333?r   g?r'   g/$@g.@)r   rL   gvIh%<=r   r*   g      ?g      ?g      ?r   ))r   r   ))r   r   r   r   T)chop)r   r   sympy.functions.special.besselr   rN   r   r;   r   r   r   r   r   rP   rQ   r   r   r   r   )r   r   r   rH   argr   r   x_k_epsr\   s              r"   test_meijerg_evalr   K  s   @@@@@@666666

A
IIad1f
Cwa!eQYK(AaC5A2a4!a%2C*Dc1fQhOOOEGAsOOE  H H; 	H 	HB((q"an(==>>FFFF((q"a"o(>>??%GGGGG	H
 CJJq!E J JAdHQNNCM 	J 	JB((ArCxBH= ) ? ? @ @BGH H H H((AsSy!bS3Y? ) A A B BDIJ J J J J	J L"5yy!B7G7G7IJJl$71R49JKKL
DHH*D 2c!ff9T**a//////r$   c                  h   t          d          \  } }t          dt          dd          t          dd          f| dz                                |           dd| dz  z  d	z  z   d
| dz  z  dz  z   t	          | dz            z   k    sJ t          dt          dd|          z  |d          dk    sJ d S )Nzk, xr)   r1   r*   r2   r   r'   ry      Q   i`  rv   r   )r
   r   r   seriesr   r   )r   r   s     r"   test_limitsr   k  s    6??DAqAA7A>>EEaHHqAvby=2ad74<'!AqD''12 2 2 2 5q)))1a00A555555r$   c            	         t          d          \  } }}}}}t          | |||||          t          | |||||          k    sJ t          | |||||          t          | |||||          k    sJ t          | |||t          j        t          j                  t          j        u sJ t          | |||t          j        t          j        d          }|j        t          u sJ |                                t          j        u sJ d S )Nza b1 b2 c x yFr-   )r
   r   r	   ZeroOner>   doit)rH   rC   rD   rJ   r   r   fs          r"   test_appellf1r   t  s    11Ar2q!QAr2q!Q''8Ar2q!Q+G+GGGGGAr2q!Q''8Ar2q!Q+G+GGGGGAr2q!&!&11QU::::BAqvqv>>>A6X6688qur$   c                  0   ddl m}  t          d          \  }}}}}}} | t          ||||||          |          ||z  t          |dz   ||dz   |dz   ||          z  |z  k    sJ  | t          ||||||          |          ||z  t          |dz   ||dz   |dz   ||          z  |z  k    sJ  | t          ||||||          |          dk    sJ  | t          ||||||          |          t	          t          ||||||          |          k    sJ d S )Nr   )r    za b1 b2 c x y zr'   )rO   r    r
   r   r   )r    rH   rC   rD   rJ   r   r   r   s           r"   test_derivative_appellf1r     sz   ((((((#$566Ar2q!Q4BAq!,,a00AbD!a%RRSVUVYZUZ\]_`9a9a4abc4ccccc4BAq!,,a00AbD!a%RRSVUVYZUZ\]_`9a9a4abc4ccccc4BAq!,,a00A55554BAq!,,a00ZBPRTUWXZ[@\@\^_5`5```````r$   c                  X   t          d          \  } }}}t          ddt          dz                                t          dd           dt          dz  dz  z   t          dz  d	z  z   t          d
z  dz  z   t	          t          dz            z   k    sJ t          t                                        t          dd           t          | |f| |ft                                        t          dd           k    sJ t          | |f||ft                                        t          dd           t          | |f||ft                    t	          t          dz            z   k    sJ t          t          d           dz  t          d          dz  fddt          z  t          dz   z                                t                    dt          z
  t          dz  dz  z   dt          dz  z  dz  z
  dt          dz  z  dz  z
  dt          dz  z  dz  z
  t	          t          d
z            z   k    sJ t          dz  t          t          d           dz  t          d          dz  fddt          z  t          dz   z            z                      t                    t          dz  t          t          z  dz  z
  t          t          dz  z  dz  z   dt          z  t          dz  z  dz  z
  dt          z  t          dz  z  dz  z
  dt          z  t          dz  z  dz  z
  t	          t          d
z            z   k    sJ d S )Nza1 b1 a2 b2r/   rM   r   rw   r'   r*   r1      rv   ih  r)      @   ]   r2   rx      )
r
   r   r   _eval_nseriesr   r   r   r	   nseriesr   )rA   rC   rB   rD   s       r"   test_eval_nseriesr     s   ]++NBBA&&44Q4@@	AqDF
QT"Wq!tCx'!AqD''12 2 2 2q66!D))r2hR!$$221a>>? ? ? ?"bB8Q''55aDAAr2hR!$$qAww./ / / /1Q44%'1Q446"D!A#q1u+66>>qAA	A1Q1a4!Bq!tGBJ.AqD;a1ggEF F F FqD1a1a($!QU<<<EEaHH
1r!tAv1a4	!AbDAIaK/"R%1*S.@2b5A:c>QTUVWYZVZT[T[[\ \ \ \ \ \r$   N)<sympy.core.containersr   rO   r   sympy.core.numbersr   r   r   r   sympy.core.singletonr	   rW   r
   r   r   r   (sympy.functions.elementary.miscellaneousr   (sympy.functions.elementary.trigonometricr   'sympy.functions.special.gamma_functionsr   r   r   r   r   sympy.series.orderr   rN   r   r   r   sympy.series.limitsr   sympy.testing.pytestr   r   sympy.core.randomr   r;   r   r:   r   r<   r#   rF   rS   r_   ri   ro   r   r   r   r   r   r   r   r   r   r   r   r$   r"   <module>r      s   ' ' ' ' ' ' * * * * * * 4 4 4 4 4 4 4 4 4 4 4 4 " " " " " " % % % % % % = = = = = = = = 9 9 9 9 9 9 8 8 8 8 8 8 9 9 9 9 9 9 D D D D D D D D D D                       % % % % % % - - - - - - - -' ' ' ' ' ' ' ' ' '  +@ +@ +@\+ + +$+ + +
% 
% 
%A A A&@M @M @MF< < <(? ? ?? ? ? VZ VZ VZr 0 0 0>6 6 6  a a a\ \ \ \ \r$   