
    Rie                        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
mZmZ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 d	lmZmZmZ d d
lmZmZm Z  d dl!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z( d dl)m*Z*m+Z+m,Z, d dl-m.Z.m/Z/m0Z0 d dl1m2Z2 d dl3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z? d dl@mAZAmBZBmCZCmDZD d dlEmFZFmGZGmHZHmIZImJZJmKZK d dlLmMZMmNZNmOZO d dlPmQZQ d dlRmSZSmTZT d dlUmVZVmWZW d dlXmYZYmZZZ d dl[m\Z\ d dl]m^Z^ d dl_m`Z` d dlUmaZa d dlbmcZc d dldmeZemfZf d dlgmhZhmiZimjZjmkZk  eddd           Zld! Zmd" Znd# Zod$ Zpd% Zqd& Zrd' Zsd( Ztd) Zud* Zvd+ Zwd, Zxd- Zyd. Zzd/ Z{d0 Z|d1 Z}d2 Z~d3 Zd4 Zd5 Zd6 Zd7 Zd8 Zd9 Zeed:             Zd; Zd< Zd= Zd> Zd? Zd@ ZdA ZdB ZdC ZdD ZdE ZdF ZdG ZdH ZdI ZdJ ZeedK             ZdL ZdM ZdN ZdO ZdP ZdQ ZdR ZdS ZeedT             ZdU ZdV ZdW ZdX ZdY ZdZ Zd[ Zd\ Zd] Zd^ Zd_ Zd` Zda Zdb Zdc Zdd Zde Zdf Zdg Zdh Zdi Zdj Zdk Zdl Zdm Zdn Zdo Zdp Zdq Zdr Zds Zdt Zdu Zdv Zdw Zdx Zdy Zdz Zd{ Zd| Zd} Zd~ Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zeed             Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd Zd 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d Zd ZdÄ ZdĄ ZdS )    )product)Sum)Functiondiff)
EulerGamma)EIRationaloopizoo)S)Symbolsymbols)binomial	factorialsubfactorial)Absresign)LambertWexplog)acoshacothacschasechatanhsinhtanh)ceilingfloorfrac)cbrt	real_rootsqrt)	Piecewise)acosacotacscasecasinatancoscotcscsecsintan)besselibesselybesseljbesselk)Eierferfcerfifresnelcfresnels)digammagamma
uppergamma)meijerg)Integral	integrate)Limitlimit)
logcombinesimplify)hyperexpand)AccumBounds)Mul)
heuristics)Order)XFAILraises)xyzknTintegerpositivec            	      ,   t          t          t          t                    t          u sJ t          t          t          t                     t           u sJ t          t           t          t                    t           u sJ t          t          dz  t          t                     t          u sJ t          t          dz   t          t                    t           u sJ t          t          t          t                    z  t          dd          dk    sJ t          dt          z  t          t                    dk    sJ t          t	          t                    t          t                    t          u sJ t          t	          t                     t          t                    t           u sJ t          t	          t                    t          z  t          t                    t          u sJ t          dt          z  t	          t                     z
  t          t                    dk    sJ t          t          dt          z  z   t          t                    t          u sJ t          t          t          dz  z
  t          t                    t           u sJ t          dt          z   dt          d          z   z  t          d          dk    sJ t          dt          z   t          z  t          d          t          t          dz   t          z  t          d          k    sJ t          dt          z   t          z  t          dd          t          t          dz   t          z  t          dd          k    sJ t          dt          z   t          z   t          z  t          dd          t          dt          z   t          z   t          z  t          dd          k    sJ t          t          t          z  t          t                    z  t          d          t           t          t                    z  k    sJ t          t          t          t          z             t          z  t          d          t          t          t                              t          z  k    sJ t          t          dt          z  dz             t          t                    dk    sJ t          t          j        t          t                     t          j        u sJ t          t          d          t          z  t          t          j                  t          j        u sJ t          dt          dz
  z  t          dd          t          u sJ t          dt          dz
  z  t          dd          t           u sJ t          ddt          z
  dz  z  t          dd          t           u sJ t          ddt          z
  dz  z  t          dd          t          u sJ t          dt          t                    z  t          t          d          t           u sJ t          dt          t                    z  t          t          d          t          u sJ t          dt          t                    z  t          t          dz  d          t           u sJ t          dt          t                    z  t          t          dz  d          t          u sJ t          dt!          t          dz            z  t          dt          z  t#          dd          z  d          t          u sJ t          dt!          t          dz            z  t          dt          z  t#          dd          z  d          t           u sJ t          dt%          t                    dz  z  t          t          t#          dd          z  d          t           u sJ t          dt%          t                    dz  z  t          t          t#          dd          z  d          t          u sJ t          t!          t                    t          t                    t'          t          j        t          j                  k    sJ t          t%          t                    t          t                    t'          t          j        t          j                  k    sJ t          t-          t                    t          t                    t'          t          j        t          j                  k    sJ t          t/          t                    t          t                    t'          t          j        t          j                  k    sJ t          t          t                    t          z  t          dd	          dk    sJ t          t          dz  t          dd	          dk    sJ t          dt          dz  z  t          dd	          t          u sJ t          dt          z  t          dd	          t0          u sJ t          ddt          z  z   t          d          t          u sJ t          ddt          z  z   t          dd          t           u sJ t          t          d
z  t          dd          t          u sJ t          t          dz  t          dd          t           u sJ t          dt          t                    z  t          dd          t           t2          z  k    sJ t          t          dz  t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t           z  t          dd          t           ddt          z
  z  z  k    sJ t          dt          t                    z   t          z  t          d          t          t          t                    dz   t          z  t          d          k    sJ t          dt5          t                    z  t          dd          t          k    sJ t          dt5          t                    z  t          dd          t           k    sJ t          dt7          t                    z  t          dd          t          k    sJ t          dt7          t                    z  t          dd          t           k    sJ t          t          dt          z            dt          t                    z  z   t          dd          t          k    sJ t          t          dt          z            dt          z  z   t          dd          t          k    sJ d S )N   r   +dir   -      +-)rE   rO   r   r   r   r&   rD   rP   r   r.   r?   r   NaNrL   r2   r   r3   r
   r/   rI   NegativeInfinityInfinityr1   r0   r   r	   r,   r        >lib/python3.11/site-packages/sympy/series/tests/test_limits.pytest_basic1rj   %   sk
   Ar??b    Ass""""!Qs""""Aq2#"$$$$!Q$22#%%%%3q661aS)))Q....1a!!!!QB2%%%%#a&&!R  RC''''Q1b!!R''''1sA2ww2&&!++++QqS!R  B&&&&QT1b!!bS((((!a%1tAww;'A..!3333!a%"a##ua!eb[!Q'?'?????!a%"a,,,q1urk1aS0Q0Q0QQQQQ!a%!)b!QC000E1q519r/1aUX4Y4Y4YYYYY1SVVQ""rc$q''k1111QUAq!$$SVVR7777qsQwB''1,,,,B315((((q!Q&&!%////AEAqc***b0000AEAqc***rc1111AEA:q!---"4444AEA:q!---33333q661bc***rc11113q661bc***b00003q661bd,,,33333q661bd,,,22223q!t99a!B$!Q!7SAAARGGGG3q!t99a!B$!Q!7SAAAbSHHHH3q6619a"Xa^^"3#>>>2#EEEE3q6619a"Xa^^"3#>>>"DDDDQB;q/A1:#N#NNNNNQB;q/A1:#N#NNNNNQB;q/A1:#N#NNNNNQB;q/A1:#N#NNNNN Q1aT***a////Aq!&&&!++++1a4A4(((B.... 1a%%%,,,, QqS!Q2%%%% QqS!QC(((RC////R!QC(((B....R!QC(((RC////477Aqc***sAg5555Aq!%%%****a!QC(((A----RCA3'''B3a"f~+=====!c!ff*r!1a((E3q66A:2BAq,I,IIIII 477Aq,,,2222477Aq,,,3333477Aq,,,2222477Aq,,,3333QqSAc!ffH$a#666"<<<<QqSAaCAS111R777777rh   c                     t          t          t          z  t          dd          dk    sJ t          t          t                    dz
  t          z  t          d          dk    sJ t          ddt          z  z   t          t                    dk    sJ t          t          dt          z             t          t                    dk    sJ t          t          t          t                     z   t          t                    t          u sJ t          t          t          t          dz             z   t          t                    t          u sJ t          t          t          t          t                               z   t          t                    t          u sJ t          ddt          z  z   t          t                     z
  t          t                    dk    sJ d S )Nr   rY   rZ   r\   rc   rX      rE   rO   r   r   rg   rh   ri   test_basic2rn   l   s_   Aq!%%%****#a&&1*aA&&!++++QqS!R  A%%%%#ac((Ar""b((((S!WWa$$****S!Q$ZZB''2----S#a&&\\!1b))R////acCGG#Q++r111111rh   c                      t          dt          z  t          dd          t          u sJ t          dt          z  t          dd          t           u sJ d S )Nr\   r   rY   rZ   r]   rE   rO   r   rg   rh   ri   test_basic3rq   w   sV    1a$$$****1a$$$++++++rh   c                     t          dt          z  t          t          z  z   t          d          dk    sJ t          dt          z  t          t          z  z   t          d          dt          z   k    sJ t          dt          dz  z  t          t          dz  z  z   t          d          dt          dz  z
  k    sJ t          t          t          dz             t          t                    z
  t          t                    dk    sJ t          dt          dz  dz   z  t          dt          f          dt          z  t          d          z  d	z  k    sJ d S )
NrX   r   r\      rb   ra   i   r^   	   )rE   rO   rP   r&   r   rC   r   rg   rh   ri   test_basic4ru   |   s	   1qsAq!!Q&&&&1qsAq!!QU****1a4!AG)#Q++sQqSy8888a!etAww&2..!3333Q1q\Aq":..!B$tAww,q.@@@@@@rh   c            	         t          dd          \  } }}t          | |z            t          |           t          |          z
  z
  }|                    | t                    dk    sJ ||z                      | t                    dk    sJ t          dd          \  }}|dz  |dz
  |dz   z  t          |dz             z  |dz  dz   dz  z  d|dz  dz   |dz   z  z  z   d|z  t	          ||z            z  |dz  dz  d	z
  t          |dz  |dz  z             z  z   |dz  dz   dz  z  z
  z  }t          ||t                    t
          |d
z  z  |dz  dz   dz  z  k    sJ d S )Nza b cTrV   r   ztau xrX   r\   ra         ?r^   )r   r   rE   r   r-   r   )abcAtaurO   exprs          ri   test_logr      s   g---GAq!AaCCFFSVVO$A771b>>QE==B1$$$$Wt,,,FC6C!GcAg&s1q5zz136A:/AAQIa%H E VD3KK/36!8c>3sAvdH D D 3 1fqj1_%% &D q"CFCFQJ?!:::::::rh   c                      t          t          t          dz
  d          dz   t          dz   z  t          dd          t          dd          k    sJ d S )N   r^   rX   ra   rY   r\      )rE   r%   rO   r
   rg   rh   ri   test_piecewiser      sK    )AE1%%)AE2Ar3??8Ar??RRRRRRrh   c                  <   dt          t                    z  t          dt          z  dz
  t          t          dddt          z  dz
  dz  z  z
                      z  dt          z  dz
  dk    fddt          z  z
  t          t          dddt          z  dz
  dz  z  z
                      z  df          z  } t          t          dz  dz  t          dk    ft          dz  dz
  df          }t          t          dz
  d	z  t          d
k     ft          dz
  d	z  t          dk    ft          t          t          dz
                      df          }t	          | t          d          dk    sJ t	          |t          d          dk    sJ t	          |t          d
          dk    sJ d S )NrX      r\   r   Trx   g      ?rt   r_   rc   r^   )r&   rO   r'   r   rE   )func1func2func3s      ri   test_piecewise2r      s   d1ggIi!A#'3tA1Q37Q,4F/G/G+H+H!H!A#PQ'K !1Wc$q1acAg\>'9":":;;;TBD D DEq!tAvqCx(1Q3;*=>>EA{AF+q1uk1q5-ADQQRUDTDTVZC[\\E1""""1""""2!######rh   c                       G d dt                     } t           | t                    t          t                    t	           | t                    t          t                    k    sJ d S )Nc                   $    e Zd Zed             ZdS )test_basic5.<locals>.myc                 :    |t           j        u rt           j        S d S N)r   rf   rd   )clsargs     ri   evalztest_basic5.<locals>.my.eval   s    aj  u ! rh   N)__name__
__module____qualname__classmethodr   rg   rh   ri   myr      s-        		 	 
	 	 	rh   r   )r   rE   rO   r   rD   )r   s    ri   test_basic5r      sm        X   
 A2%1q""5"5555555rh   c                      t          t          t          z  t          t          z  z   t          d          t          t          z  dt          z  z   k    sJ d S NrX   )rE   rO   rP   rQ   rg   rh   ri   test_issue_3885r      s=    1qsAq!!QqS1Q3Y......rh   c                     t          t          t                    t          z  t          d          dk    sJ t          t          t                    t          z  t          d                                          dk    sJ t          t          t          dd          j        t          t          dt          d          fk    sJ d S )Nr   r\   r`   rZ   )rD   r2   rO   doitargsr   rg   rh   ri   
test_Limitr      s    Q1a  A%%%%Q1a  %%''1,,,,Aqd###(Q1fTll,CCCCCCCrh   c                     t          t          t                    t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t                    t          d	d          d	k    sJ t          t          t                    t          d	d          d
k    sJ t          t          t          dt          z            z  dz  t          dd          t          dd          k    sJ t          t          t          dz             t          t                    z
  t          t                    t          t          j         t          d          dz            k    sJ t          t          t          t                              t          t                    dk    sJ t          t          t          t                              t          t                     dk    sJ t          t          t          t                              t          t                    dk    sJ t          t          t          t                              t          t                     dk    sJ d S )Nra   rY   r]   rb   rc   r   r\   rX         r^   rx   )
rE   r"   rO   r
   r   rI   r   Halfr-   r!   rg   rh   ri   
test_floorr      s   q1b#&&",,,,q1b#&&",,,,q1b#&&",,,,q1b#&&",,,,q1a%%****q1a%%++++q1a%%****q1a%%****q1a%%****q1a%%****q1c3''3....q1c3''3.... 51::aAs++x1~~====q3w%((*Ar22k16'1Q44PQ66R6RRRRR tAwwB''1,,,,tAwwRC((B....a!!1b))Q....a!!1rc**b000000rh   c                     t          t          t          t                              t          dd          dk    sJ t          t          t          t                              t          dd          dk    sJ t          t          t	          t                              t          dd          dk    sJ t          t          t	          t                              t          dd          dk    sJ t          t          dt          t                    z             t          dd          dk    sJ t          t          dt          t                    z             t          dd          dk    sJ t          t          dt	          t                    z             t          dd          dk    sJ t          t          dt	          t                    z             t          dd          dk    sJ d S )Nr   rY   r]   rc   r_   r   )rE   r"   r2   rO   r.   rg   rh   ri   &test_floor_requires_robust_assumptionsr      sx   s1vv1c**a////s1vv1c**b0000s1vv1c**a////s1vv1c**a////q3q66z""Aq#..!3333q3q66z""Aq#..!3333q3q66z""Aq#..!3333q3q66z""Aq#..!333333rh   c                     t          t          t                    t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t                    t          dd          dk    sJ t          t          t                    t          d	d          d
k    sJ t          t          t                    t          d	d          d	k    sJ t          t          t          dt          z            z  dz  t          dd          t          dd          k    sJ t          t          t          dz             t          t                    z
  t          t                    t          t          j         t          d          dz            k    sJ d S )Nra   rY   rc   r]   r   r\   rX   r^   r      rx   )rE   r!   rO   r
   r   rI   r   r   rg   rh   ri   test_ceilingr      sN   QC((B....QC((B....QC((A----QC((B....Q3''1,,,,Q3''1,,,,Q3''1,,,,Q3''1,,,,Q3''1,,,,Q3''1,,,,QS))S0000QS))S0000 71Q3<<!1a--!Q????S!!GAJJ.266+qvgqQRttTUv:V:VVVVVVVrh   c                     t          t          t          t                              t          dd          dk    sJ t          t          t          t                              t          dd          dk    sJ t          t          t	          t                              t          dd          dk    sJ t          t          t	          t                              t          dd          dk    sJ t          t          dt          t                    z             t          dd          dk    sJ t          t          dt          t                    z             t          dd          dk    sJ t          t          dt	          t                    z             t          dd          dk    sJ t          t          dt	          t                    z             t          dd          dk    sJ d S )Nr   rY   r\   r]   r_   r   )rE   r!   r2   rO   r.   rg   rh   ri   (test_ceiling_requires_robust_assumptionsr      sx   Q!Q,,1111Q!Q,,1111Q!Q,,1111Q!Q,,1111SVV$$aC00A5555SVV$$aC00A5555SVV$$aC00A5555SVV$$aC00A555555rh   c                  "   t          t          t                    t          t                    t	          dd          k    sJ t          t          t                    dt          z  z  t          t                    t	          dd          k    sJ t          t          t                    dt          z  z  t          t                     t	          dt                    k    sJ t          t          t                    t          z  t          t                    t	          dt                    k    sJ t          t          t          t                              t          dd          dk    sJ t          t          t          t                              t          dd          dk    sJ t          t          t          t                              t          dd          dk    sJ t          t          t          dz            t          dd          dk    sJ t          t          d            t          t          dt          z  dz             t          dd          dk    sJ t          t          dt          z  dz             t          dd          dk    sJ t          t          t          t          j
        z             t          dd          d	k    sJ t          t          dt          z            t          d          t	          dd          k    sJ d S )
Nr   r\   rY   r]   r`   rX   c                  T    t          t          t                    t          dd          S Nr   r`   )rE   r#   rO   rg   rh   ri   <lambda>ztest_frac.<locals>.<lambda>   s    uT!WWaD99 rh   ra   rx   )rE   r#   rO   r   rI   r2   r.   rN   
ValueErrorr   r   rg   rh   ri   	test_fracr      sH   a!R  K1$5$55555a1Q3B'';q!+<+<<<<<a1Q3RC((K2,>,>>>>>a!Q##{1b'9'99999c!ffq!S))Q....c!ffq!S))Q....c!ffq!T**a////adQ4((A----
:99:::bdQhAs++q0000bdQhAs++q0000a!&j!!1a..#5555acAq!![A%6%6666666rh   c                  *   t          t          t          t                    t          z            t          dd          dk    sJ t          t          t          t                    t          z            t          dd          dk    sJ t          t          t	          t                     t          z            t          dd          dk    sJ t          t          t	          t                     t          z            t          dd          dk    sJ d S )Nr   rY   r]   ra   )rE   r"   r2   rO   r3   rg   rh   ri   test_issue_14355r     s    s1vvax!Q,,1111s1vvax!Q,,1111Awqy!!1a--3333Awqy!!1a--333333rh   c                  >   t          dd          } t          t          |           t          d| z            z  | d          dk    sJ t          t          |           t	          | dz             z   t	          |           z
  | t
                    t          dz  k    sJ d S )NrO   Trealr\   r   rX   )r   rE   r-   r2   r&   r   r   rO   s    ri   	test_atanr     s    sAaQqS!1a((A----a4A;;&a0!R88BqD@@@@@@rh   c            
         t          t          t                    t          d          dk    sJ t          t          t          t                              t          d          dk    sJ t          t          t	          t                              t          d          dk    sJ t          t          t          t          dz                       t          d          t          d          k    sJ t          t          t          t          z             t          t          t          z
            z
  dt          z  z  t          d          t          t                    k    sJ t          t          t          t                    t          dz  z            t          t                    dk    sJ t          t          t          t          t                    t          dz  z            t          t          t          dz             t          dz   dz  z            z  dz
  z  t          t                    dk    sJ t          t          t          t          dz
            dz  dz
            t          dd          t          k    sJ t          t          t          t                              t          d          t          k    sJ t          t          t          t          t                                        t          d          t          k    sJ t          dd          } t          t          t          |           dz             t          |           z  | t                    dk    sJ t          | t          d| z  t          z             t          t          d| z  z
            z
  z  dz  | d          dk    sJ t          t	          |           t          |           z  | t          d	          d
k    sJ d S )Nr   r\   rX   r^   rY   rQ   Trw   r]   rc   )rE   absrO   r2   r.   r   rP   r   r   r   r   r   rQ   s    ri   test_set_signsr     s   QA!####SVVa##q((((SVVa##q((((SQZZ!Q''3q661111 #a!e**s1q5zz)AaC0!Q77477BBBB SVVAqD[!!1b))Q....CAq!t$$SQUQUQJ)>%?%??!CDaLLPQQQQQ SQZZ]Q&''As33r9999 SVVa##r))))SQ[[!!1a((B.... 	sT"""ASVVaZQ'B//14444 C!aLL3q1Q3w<</02Aq99Q>>>> QQB,,222222rh   c                     t          dd          } t          t          d| z            t          |           z   | dd          t	          dd          k    sJ t          t          dt          t          |                     t          t          d| z                      z  z             | d          t          d          k    sJ d S )	NrO   Tr   r\   r   rY   rc   rX   )r   rK   r2   r-   rI   rE   r   r&   r   s    ri   test_heuristicr   4  s    sAc!A#hha(!Q44B8J8JJJJJQd1ggtC!HH~~55661==QGGGGGGrh   c                      t          dd          } d| z  t          |  t          z            z  }t          |t          t                    dk    sJ |                    t          t                    dk    sJ d S )NrQ   Trw   rc   r   )r   r   rO   rE   r   )rQ   fs     ri   test_issue_3871r   :  sk    sT"""A
1S!AYYAAr??a771b>>Qrh   c                     t          d          } t          dd          }t          d|| z  z   | z  | t                    t          |          k    sJ t          d|d| z  z  z   | z  | t                    t          |dz            k    sJ t          d|d| z  dz   z  z   | z  | t                    t          |dz            k    sJ t          |dz
  |dz   z  |z  |t                    t          d          k    sJ t          ddd|z  z   |z  z   |t                    dt          j        z   k    sJ t          dd|z  z   |z  d|z  |z  z  |t                    t          t	          d	                    k    sJ d S )
NrS   rO   Tr   r\   rX   ra   r   z1/3)r   rE   r   r   r   Exp1rS   rO   s     ri   test_exponentialr   A  sr   sAsA!ac'Aq"%%Q////!a1g+!1b))S1XX5555!a1qk/A%q"--QqS99991q51q5/A%q"--R8888a!A#g\!1b))QZ7777!ac'AqsQh&2..#ahh--??????rh   c                      t          d          } t          dt          | t          |           z   z  z   | z  | t                    t          t                    k    sJ d S )NrS   r\   )r   rE   rO   r2   r   r   )rS   s    ri   test_exponential2r   L  sN    sA!aSVVn$q(!R00CFF::::::rh   c                      t          dt          z  t                    } t          | t          t                    }|                                t          u sJ d S r   rB   rO   rD   r   r   r   ls     ri   	test_doitr   Q  s=    QAaBA6688r>>>>>>rh   c            
         t          t          t                    t          t          dz             z
  t          t                    t	          dd          k    sJ t          t          t                    t          t          dz             z
  dz   t          t                    t	          dd          k    sJ t          t          t                    t          t                    t          t                    z  z
  t          t                    t	          dd          k    sJ dt          d          z   dz  } dt          d          z   dz  }t          t	          | |          ddt          d          z   z  d          }t          t          t          t          t                    
                    t                    t          d	t          f                                          
                    t                              t          t                    |k    sJ t          t	          dt          d          dz  z   t          d          dz  dz             ddt          d          z
  z            }t          t          t          t          t                    
                    t                    t          d	t          f                                          
                    t                              t          t                    |k    sJ t          t          t                    dz   dz  t          z  t          t                    t	          d	t                    k    sJ dt           z  t          t                    dz   t          z  z  }t          |t          t                    t	          d	t                    k    sJ d S )
Nr\   ra   rX   rc   r^   rb   F)evaluater   )rE   r2   rR   r   rI   r.   rJ   rG   r   rS   rewriter   r   rO   )lohit1t2es        ri   test_series_AccumBoundsr   W  s   Q#a!e**$a,,B0B0BBBBBQ#a!e**$q(!R00KA4F4FFFFF Q#a&&Q-'B//;r13E3EEEEE s1vv+qB
c!ff*aB	[R  !R#a&&[/E	B	B	BB#c!ffnnS11Aq!9==BBDDLLSQQRRTUWYZZ^`````	[c!ffQhAq155q!c!ff*~	F	FB#c!ffnnS11Aq!9==BBDDLLSQQRRTUWYZZ^`````3q66A:q.1$a,,Ar0B0BBBBB 	
QBQ!aAAr??k!R00000000rh   c                     t          t          dt                    t          t                    dk    sJ t          t          dt                    t          t                     dk    sJ t          t          dt                    t          t          t          z            t          t          z  k    sJ t          t          dt                    t          t           t          z            t           t          z  k    sJ t          t          dt                    t          t                    dk    sJ t          t          dt                    t          t                     dk    sJ t          t          dt                    t          t          t          z            t           k    sJ t          t          dt                    t          t           t          z            t           k    sJ t          t          dt                    t          t                    t          k    sJ t          t          dt                    t          t                     t           k    sJ t          t          dt                    t          t          t          z            dk    sJ t          t          dt                    t          t           t          z            dk    sJ t          t          dt                    t          t                    dk    sJ t          t          dt                    t          t                     t           t          z  k    sJ t          t          dt                    t          t          t          z            dk    sJ t          t          dt                    t          t           t          z            dk    sJ t          t          dt                    t          t                    dk    sJ d S Nr\   r   )rE   r6   rO   r   r	   r5   r4   r7   rg   rh   ri   !test_bessel_functions_at_infinityr   n  s    A2&&!++++AB3''1,,,,A1R4((BqD0000AA2b5))bSU2222A2&&!++++AB3''1,,,,A1R4((RC////AA2b5))bS0000A2&&",,,,AB3''B3....A1R4((A----AA2b5))Q....A2&&!++++AB3''B3q50000A1R4((A----AA2b5))Q.... A2&&!++++++rh   c                      t          dt          z  t                    } t          | t          t                    }|                    d          |k    sJ d S )NrX   Fdeepr   r   s     ri   
test_doit2r     sI    QAaBA66u6""""""rh   c                      t          t          t          t                    z  t          t                    dz
  z  t          t                     dk    sJ d S r   rm   rg   rh   ri   test_issue_2929r     s@    !c!ff*s1vvz*As33q888888rh   c                  *   t          dt          t                    z
  t          dz  z  t          t          j                  ddt          t          j                  z  z
  k    sJ t          t          t          t          dz             dz             t          d          t          dt          d          z             k    sJ t          t          t          t          dz             dz             t          d          dt          d          z   k    sJ d S )Nr\   rX   r   r   )rE   r.   rO   r   r   r2   r   rg   rh   ri   test_issue_3792r     s    !c!ff*ad"Aqv..!aAFm2CCCCCSQZZ!^$$a++s1s1vv:>>>>SQZZ!^$$a++q3q66z999999rh   c                  <   t          dt          dz   z  t          d          t          dd          k    sJ t          dt          t          z   z  t          d          t          j        dt          z   z  k    sJ t          t          t                    t          dz  dz   z  t          d          t          d          dz  k    sJ t          t          t                    t          dz  t          z   z  t          d          t          d          dt          z   z  k    sJ d S )Nr\   r^   rX   r_      r   )rE   rO   r
   r   r   Oner   rg   rh   ri   test_issue_4090r     s    AEAq!!Xa^^3333AFQ""aeQVn4444QA"Aq))SVVAX5555QA#Q**c!ffa"fo======rh   c                      t          t          t                    t          dd          t          u sJ t          t          t                    t          t          dz  d          dk    sJ d S )Nr   rY   rZ   rX   )rE   r/   rO   r   r   rg   rh   ri   test_issue_4547r     s\    QA3'''2----QBqDc***a//////rh   c                     t          t          dz  t          t                    t          dz  cxk    r	t          u sn J t          t          dz  t          d          t          d          dz  k    sJ t          t          dz  t          d          dk    sJ t          t          dz  t          t                    dk    sJ t          t          dz  t          d          t          d          dz  k    sJ d S )Nrx      r   g      r   )rE   rO   r   r   rg   rh   ri   test_issue_5164r     s    CB2s70000b000000CB1R55#:----CA!####TAr""a''''TAq!!QqTTD\111111rh   c                  x    ddt           z  z   dt           z  z  } t          | t           d          t          k    sJ d S )N      ?r   )rO   rE   r   )funcs    ri   test_issue_5383r     s<    cAg1-Dq!!!!!!!rh   c                     t           t          d          dz  z   t          t                     z  t           z
  t          dt          z            dz  z   t          t	          t                               z
  t          d          dt           z  z  z   t           dz  z  } t          | t           t                    t          d          dz  k    sJ d S )Nr\   rX   r   r^   ih  )rO   r   r   r   r   rE   r   r~   s    ri   test_issue_14793r     s    1aZ3q66!A%AbD		!3IaLLaDD"Q$K()*A.Dq"1c))))))rh   c                  N   t          t          t          t           gddgddt          j        t          dd          gddg                    } g t          t          t           t          t           t          z  t          t           dt          dd          z  z  t          ddddddddt          t          t          t           t          t           t          z  t          t           dt          dd          z  z  ddddddddR }t          |           t          |          k    sJ t          t          | |                    D ]G\  }\  }}|\  }}}}|||z  z  }		 t          |	t          d|          |k    sJ 7# t          $ r 	 J w xY wd S )	Nrc   r\   rX   r^   r]   rY   r   rZ   )listr   rO   r   r   r
   r   r	   len	enumerateziprE   AssertionErrorprint)
testsresultsir   resrP   sr   deqs
             ri   test_issue_5183r     sR   !aRaQA7s% % & &E'r '2 's 'B 'A 'r 'B3Xa^^/C+C 'R '''''''!"'$%''''3' "'%'CE'+-'02sB!Q3G/G' ' ' ' ' '  ' "#' %&' 'G u::W%%%%#Cw$7$788 
 
;D#
1a1X	Qq)))S00000 	 	 	 	
 
s   5FF"c                     t          t          t                    t          z  t          t                    dk    sJ t          t	          t                    t          t                    t
          dz  k    sJ t          t          t                    t          t                    t          u sJ t          t          t                    t          z  t          t                    dk    sJ t          t          t                    t          t          j	                  t          t
                    k    sJ t          dd          } t          | t          d| z            z  | d          dk    sJ d S )Nr   rX   rTr   r\   )rE   r2   rO   r   r-   r   r?   r.   r   r   r&   r   r   s    ri   test_issue_5184r    s   Q1b!!Q&&&&a!R  BqD((((q1b!!R''''Q1b!!Q&&&&q1af%%b1111sA3qs88Q""a''''''rh   c                  ~    t          dt          z   dt          z  z  t          j        z
  t          d          dk    sJ d S r   )rE   rP   r   r   rg   rh   ri   test_issue_5229r    s8    !a%1Q3!&(!Q//1444444rh   c                  v   t          t          t          t          gt           dz  dt          dz  t          t          t          dd          z  gddg                    } ddt           t          ddt           t          ddt          t           ddt          t           ddt          t           f}t          |           t          |          k    sJ t          t          | |                    D ]N\  }\  }}|\  }}} |t                    }	 t          |t          ||          |k    sJ ># t          $ r 	 J w xY wd S )NrX   r   r^   r]   rY   rZ   )r   r   r/   r3   r   r
   r   r   r   r   rO   rE   r   r   )	r   r   r   r   r   r   r   r   r   s	            ri   test_issue_4546r    sE   #s#a%BqD"b!Q.?@s% % & &E !bS"aRCQB31b2#q!R"6Gu::W%%%%#Cw$7$788 
 
;D#1aQqTT	Qq)))S00000 	 	 	 	
 
s   	D((D6c                      t          dt          t          d          z  z   dt          z  z  t          d          dk    sJ t          ddt          z  z  ddt          z  z  z   t          z  t          d          dk    sJ d S )Nr\   r^   r   r_   )rE   rO   r   rg   rh   ri   test_issue_3934r    ss    !aQi-1Q3'A..!3333!ac(Q1X%)1a00A555555rh   c            	         t          t          t          dd          z  dt          t          dd          z  z   z  t          t                    dk    sJ t          t          dz  dt          dz  z   z  t          t                    dk    sJ d S )NM   r^   r\   gfffffFY@)rE   rO   r
   r   rg   rh   ri   test_calculate_seriesr    sy     HROO#QHROO);%;<aDDIIIIE1q%x<(!R00A555555rh   c                     t          t          dz  dt          dz  z   z  t          t                    dk    sJ t          t          dz  dt          dz  z   z  t          t                    dk    sJ t          t          dz  dt          dz  z   z  t          t                    dk    sJ t          t          dz  t          dz   dz  t          t                     z   z  t          t                    dk    sJ d S )Nr   r\   d   i]    rE   rO   r   r   rg   rh   ri   test_issue_5955r    s    !R%!ae)$a,,1111!S&1q#v:&2..!3333!T'A4K(!R00A5555!T'AED=3r7723a<<AAAAAArh   c                      t          t          dt          t                    z            t          t	          t                              z  t          d          dk    sJ d S r   )rE   r   r2   rO   r/   rg   rh   ri   test_newissuer    sF    Qs1vvXs3q66{{*Aq11Q666666rh   c                     t          t          t          z
  t          t                    t          t          t          z
  t          t                    k    sJ t          dt          t	          t                    z   z  t          z
  t          d          t          dt          t	          t                    z   z  t          z
  t          d          k    sJ t          t          t          z  t          t                    t          t          t          z  t          t                    k    sJ t          t          t          z
  dt          z  z   t          t                    t          t          t          z
  dt          z  z   t          t                    k    sJ d S r   )rE   rO   r   rD   r2   rg   rh   ri   test_extended_real_liner    s    RB5RB#7#77777AAJ"$a++uQCFF
^b5H!Q/O/OOOOOAq"r!tQ!3!33333R!A#q"%%q2v!|Q)C)CCCCCCCrh   c                      t          dd          } t          |           t          z  t          d|           k    sJ t          t          | dz  dz
  z  | t                    t          u sJ d S )NrO   Trw   r\   rX   r   )r   rL   r   rE   r   s    ri   test_order_oor    sf    sT"""A88B;%1++%%%%QTAX2&&",,,,,,rh   c                  ^    t          t          d            t          t          d            d S )Nc                  l    t          t          t          t          z            t          t                    S r   rE   r   rO   rP   r   rg   rh   ri   r   z!test_issue_5436.<locals>.<lambda>  s    c!A#hh2(>(> rh   c                  n    t          t          t           t          z            t          t                    S r   r  rg   rh   ri   r   z!test_issue_5436.<locals>.<lambda>   s    c1"Q$iiB(?(? rh   rN   NotImplementedErrorrg   rh   ri   test_issue_5436r    s2    
 > >???
 ? ?@@@@@rh   c                  ^    t          t          d            t          t          d            d S )Nc                  <    t          t          t          dd          S )Nr   rZ   rD   rO   rg   rh   ri   r   z test_Limit_dir.<locals>.<lambda>$  s    eAq!333 rh   c                  <    t          t          t          dd          S )Nr   0rZ   r   rg   rh   ri   r   z test_Limit_dir.<locals>.<lambda>%  s    uQ1#666 rh   )rN   	TypeErrorr   rg   rh   ri   test_Limit_dirr$  #  s0    
933444
:6677777rh   c                      t          t          dz   dz  t          dz   dz  dz   z  t          t                    dk    sJ t          t          dz   dz  t          dz   dz  dz   z  t          t                     dk    sJ d S )Nr\   r  rp   rg   rh   ri   test_polynomialr&  (  sx    !a%$Q 12Ar::a????!a%$Q 12As;;q@@@@@@rh   c                     t          dt          z  dt          t          z   z  t          t          t          z   z  t          z  z   t          z  z
  t          t                    t          dz
  t          t          z  z  k    sJ t          dt          z  dt          t          z   z  t          t          t          z   z  t          z  z   t          z  z
  t          t                     t          dz
  t          t          z  z  k    sJ d S Nr\   )rE   rP   rO   rQ   r   rg   rh   ri   test_rationalr)  -  s    11q5	Aq1uIaK/22Ar::q1uqsmKKKK11q5	Aq1uIaK/22As;;A!}LLLLLLrh   c                      t          t          t                    t          z  t          dt          z            t          z  z
  t          d          t
          t          t          t          z
            z  k    sJ d S NrX   r   )rE   r   rO   rQ   rP   r   r   rg   rh   ri   test_issue_5740r,  2  sP    QC!HHQJ&1--DQKK??????rh   c                      t          ddd          } | dz   t          | dz   z  z  t          | dz   z  dz
  z  t          t          dz
  z  z
  }t          |t          d                                          | dz  k    sJ d S )NrS   TrT   r\   rX   )r   rO   rE   cancel)rS   r   s     ri   test_issue_6366r/  6  s{    sD4000A	
QAE
AAJN+aQi7AAq>>  ""ac))))))rh   c                     t          t                    } t          | t          t                    t          u sJ t          t          | z  t          t                    dk    sJ t          | t	          dt
          z  t          z            t          t          z  t          z  z  z  t          t                    dk    sJ t          | t          t                     t          t                     k    sJ d S )Nr   rX   r\   )r   rO   rE   r   r&   r   r   r?   r   s    ri   test_factorialr2  <  s    !AAr??b    1a!!!! D2aLL!A#)*Ar22a7777AsubSzz))))))rh   c                     dt           dz  z  dz  t           t          dd          z  z
  t          dt           dz  z  dz  t          j        z
  z  dt           dz  z  dz  z   dt           dz  z  dz  z
  t          dd          z   dt          dz   z  z  z   } t          | t          t                    dt           dz  z  dz  dt           dz  z  dz  z   dt           z  dz  z
  t          dd          z
  k    sJ d S )	Nr_   r^   r   rX   #   rs      r\   )rO   r
   rP   r   r   rE   r   r   s    ri   test_issue_6560r7  F  s    	
1a4Ahq!nn$	$1QT6!8af+<(=1WQY)')+AqD)35=a^^)DFGQi(Q 
QAAr??a1fQh1a41AaCE9HQNNJJJJJJJrh   c                     t          d          t          dd          } t          d          }t          dd          }t          dd          }d	z  | z
  d
z   z  | | z
  d
z   z  z   z  |z  | d
z
  | z
  d	z   z  | | z
  d
z   z  z   z  |z  z  z   z
  |z  z
  z                      ||d
z             t          t          fd           t	                              ||          t
                    d
k    sJ t	                              ||          t
                                                    d	|d
z   z  | z   d
z
  | d
z   |d
z   z  z  k    sJ d S )NrS   r   Trw   r{   pm)negativerX   r\   c                  0    t           t                    S r   )rE   r   )r~   rS   s   ri   r   z!test_issue_5172.<locals>.<lambda>U  s    dAr(:(: rh   )r   subsrN   r  rE   r   rG   )r   r{   r9  r:  r~   rS   s       @@ri   test_issue_5172r>  K  s   sAsT"""AsAsT"""AsT"""AqS!a%!)_a!QUQY-/014UQA	]A1q519$56::;=>?ABAKD99QAD
 : : : : :;;;1a!R((A----1a!R((1133	
QUa!	a!eq1u--. . . . . .rh   c                      t          d          } t          t          t          t          | z   z            t          t                    dk    sJ d S )Nry   r\   )r   rE   r&   rO   r   ry   s    ri   test_issue_7088rA  [  s>    sAaQi!R((A------rh   c                     t          t          t          t          z  dz             t          d          t          t          d          z
  k    sJ t          t          t          t          z  dz             t          dd          t          d          k    sJ t          t          t          t          z  dz
            t          d          t          d           k    sJ t          t          t          t          z  dz
            t          dd          t           t          d          z   k    sJ t          t          t          t          z  dz             t          d          t          d           k    sJ t          t          t          t          z  dz             t          dd          t          d          k    sJ t          t          t          t          z  dz
            t          d          t          d          k    sJ t          t          t          t          z  dz
            t          dd          dt          z  t          d          z
  k    sJ t          t          t          dt          z  z             t          d          t          t          d          z  k    sJ t          t          t          dt          z  z             t          dd          t           t          t          d          z  z   k    sJ t          t          t          dt          z  z
            t          d          t          t          t          d          z  z
  k    sJ t          t          t          dt          z  z
            t          dd          t           t          d          z  k    sJ t          t          dt          z            t          d          t          dz  k    sJ t          t          dt          z            t          dd          t           dz  k    sJ t          t          t                    t          t                    t          dz  k    sJ t          t          t                    t          t                     t           dz  k    sJ t          t          t          t          d          dz  t          z  z             t          d          t          t          t          t          d          dz            z  z
  k    sJ t          t          t          t          d          dz  t          z  z             t          dd          t           t          t          d          dz            z  k    sJ t          t          t          t          d          dz  t          z  z
            t          d          t          t          t          d          dz            z  k    sJ t          t          t          t          d          dz  t          z  z
            t          dd          t           t          t          t          d          dz            z  z   k    sJ t          t          t                    t          d          t          dz  k    sJ t          t          t                    t          dd          t           dz  k    sJ t          t          t          t          z  t          d          dz  z             t          d          t          t          d          dz            k    sJ t          t          t          t          z  t          d          dz  z             t          dd          t          t          d          dz             k    sJ t          t          t          t          z  t          d          dz  z
            t          d          dt          z  t          t          d           dz            z
  k    sJ t          t          t          t          z  t          d          dz  z
            t          dd          t          t          d           dz            k    sJ t          t          t          t          z  t          d          dz  z             t          d          t          t          d          dz            k    sJ t          t          t          t          z  t          d          dz  z             t          dd          t          t          t          d          dz            z
  k    sJ t          t          t          t          z  t          d          dz  z
            t          d          t           t          t          d          dz            z   k    sJ t          t          t          t          z  t          d          dz  z
            t          dd          t          t          d          dz             k    sJ t          t          t          t          z  dz
            t          d          t          t          z  k    sJ t          t          t          t          z  dz
            t          dd          t           t          z  k    sJ t          t          t           t          z  dz
            t          d          t           t          z  k    sJ t          t          t           t          z  dz
            t          dd          t          t          z  k    sJ t          t          t          t          z  dz
            t          d          t          k    sJ t          t          t          t          z  dz
            t          dd          t           k    sJ t          t          t           t          z  dz
            t          d          t           k    sJ t          t          t           t          z  dz
            t          dd          t          k    sJ t          t!          t          t          z  dz
            t          d          dt          d          dz  z  k    sJ t          t!          t          t          z  dz
            t          dd          dt          d          dz  z   k    sJ t          t!          t           t          z  dz
            t          d          dt          d          dz  z   k    sJ t          t!          t           t          z  dz
            t          dd          dt          d          dz  z  k    sJ d S )NrX   r   r]   ra   r\   rc   r^   )rE   r,   r	   rO   r   r(   r-   r   r   r)   r   r   r+   r*   r   r&   r$   rg   rh   ri   test_branch_cutsrC  `  s	   acAg1%%d1gg5555acAg1c**d1gg5555acAg1%%$q''1111acAg1c**rcDGGm;;;;acAg1%%$q''1111acAg1c**d1gg5555acAg1%%b1111acAg1c**adT"XXo====a!A#g1%%5883333a!A#g1c**rcAeAhhJ.>>>>>a!A#g1%%aaj8888a!A#g1c**qbqk9999acAq!!RT))))acAq#&&2#a%////a!R  BqD((((a!bS!!bSU****a!A$$q&(l##Q**b1U1Q446]]?.BBBBBa!A$$q&(l##Q3//A2eAaDDFmm3CCCCCa!A$$q&(l##Q**aadd1fo====a!A$$q&(l##Q3//B351a==3HHHHHa!Q2a4''''a!Q$$A----acAaDDFl##Q**d1Q446ll::::acAaDDFl##Q3//D1aLL=@@@@acAaDDFl##Q**adT1Q44%']].BBBBBacAaDDFl##Q3//41a==@@@@acAaDDFl##Q**d1Q446ll::::acAaDDFl##Q3//2QqTT!V3DDDDDacAaDDFl##Q**rcD1aLL.@@@@@acAaDDFl##Q3//D1aLL=@@@@QqS1Wq!$$",,,,QqS1Wq!S))aRU2222aRTAX1%%!B....aRTAX1c**ad2222acAg1%%****acAg1c**qb0000qbdQhA&&1",,,,qbdQhAs++q0000acAg1%%"!Q7777acAg1c**add1f~o====qbdQhA&&B!A$$q&>/9999qbdQhAs++add1f~======rh   c                  \   t          d          } t          dt          dt          z             t          |           dz  z  z
  t          dt          z
            t	          |           dz  z  z
  z  }t          |t          d          dt	          |           dz  t          j        z
  z  k    sJ d S )Nry   r\   rX   r   )r   rQ   r&   r2   r.   rE   r   r   )ry   r   s     ri   test_issue_6364rE    s    sA	1tAE{{3q6619$$tAE{{3q6619'<<=AAq>>QA	AF 23333333rh   c                      t          t          dt          t                     z            t          dz  z  t          d          t          dt          z            k    sJ d S r+  )rE   r   r8   rO   r   rg   rh   ri   test_issue_6682rG    sL    Qr1"vvXq!t#Q**c!J,.?.???????rh   c                     t          d          } t          | t          z  t          d          t          t	          |           z  k    sJ t          |  t          z  t          d          t           t	          |           z  k    sJ t          |  t          z  t          t                    t           t	          |           z  k    sJ t          | t          z  t          t                    t          t	          |           z  k    sJ d S )Nry   r   )r   rE   rO   r   r   r@  s    ri   test_issue_4099rI    s    sA1ar$q''z))))!Aq!DGG++++!Aq""T!WW,,,,1a477
******rh   c            	      `   t          d          } t          t          dt          t          | z             z             t          dt          t                    z             z
  | z  | d          t          t                    dt          t          t                    dz             z  z  k    sJ d S )Ndxr\   r   rX   )r   rE   r&   r   rO   )rK  s    ri   test_issue_4503rL    s    	B$q3q2v;;''$q3q66z*:*::B>AFFA$s1vvz"""#$ $ $ $ $ $rh   c                      t          ddddt                     } t          |           }t          |t          dd          dk    sJ t          |t          t                    t           k    sJ d S )Nrg   )r\   )r   r   r`   )rA   rO   rH   rE   r   )Ggs     ri   test_issue_6052rP    sf    BdQB''AAAAq$1$$$$Ar??rc!!!!!!rh   c                     t          t                    t          dt          dt          z                      z  } t          t          t	          | t          t                    z  | z  t          d          dk    sJ t          t          t	          | t          t                    z  | z  t          d                                          dk    sJ d S )Nr\   rs   r   rX   g       @)r&   rO   r4   rE   r   evalfr   s    ri   test_issue_7224rS    s    7771T!A#YY'''D4a###D(!Q//144444a###D(!Q//55773>>>>>>rh   c                  z    t          t          t          dd          dz
  z  t          t                    dk    sJ d S )Nr\   g    eAr   )rE   rS   r
   r   rg   rh   ri   test_issue_8208rU    s9    Xa%%)*Ar22a777777rh   c                      t          t          t          dd          z  dz
  t          t                    dz
  t          dd          z  z  t          d          dk    sJ d S )Nr\   r   rX   r^   r   r   )rE   rO   r
   r&   rg   rh   ri   test_issue_8229rW    sT    !Xa^^#a'$q''A+A)FF2NNRSSSSSSSrh   c                      t          dd          \  } }t          t          d|| z  z
            |t                    dk    sJ d S )Nzd tTrw   r\   rc   )r   rE   r9   r   )r   ts     ri   test_issue_8433rZ    sI    54(((DAqQ1Wq"%%++++++rh   c                      t          ddd          } t          dd          }t          || z  t          |           z  t          |           z  | t                    dk    sJ d S )NrR   T)rU   nonnegativelamdarw   r   )r   rE   r   r   r   )rR   r]  s     ri   test_issue_8481r^    sg    sDd333A7T***ECKK')A,,62>>!CCCCCCrh   c                     t          t          t          t          dz            t          t                    t          k    sJ t          t          t          t          dz            dt           z  z  t          t                    dk    sJ d S )NrX   r^   r   )rE   r   rS   r   rg   rh   ri   test_issue_8462r`    si    !QqS!!1b))R////!QqS!!A1"I-q"55::::::rh   c                      t          ddd          } t          d          }t          || z  |t                     t          t          d| z            z  k    sJ d S )NrS   TrT   rO   rc   )r   rE   r   r   r   s     ri   test_issue_8634rb    sY    sD4000AsAAq2#"T2']]"2222222rh   c                     t          dd          } t          dd          }t          | t          z  | t          dz
  z  z
  | t                    dk    sJ t          | t          z  | t          dz
  z  z
  | t                    t          k    sJ t          | t          z  | t          dz
  z  z
  | t                    t          k    sJ t          | t          z  | t          |z
  d	z
  z  z
  | t                    t          k    sJ t          dd          } t          | t          z  | t          d	z
  z  z
  | t                    t          k    sJ t          | t          z  | t          d
z   z  z
  | t                    t           k    sJ d S )NrO   Tr   rR   rw   r   r_   g      @r\   rX   )r   rE   rS   r   )rO   rR   s     ri   test_issue_8635_18176rd    sX   sAsT"""AAAE
"Ar**a////AAE
"Ar**b0000AAG$a,,2222AAEAI&2.."4444sT"""AAAE
"Ar**b0000AAE
"Ar**rc111111rh   c                  r    t          t          t                    t          t                    t          u sJ d S r   )rE   r   rO   r   rg   rh   ri   test_issue_8730rf    s+    a!R((B......rh   c                  
    t          dd          t          dd           t          t                    t                    z  z  d z   z  z  t                    dk    sJ t	          t
           fd           d S )	NrS   T)rU   r{   rw   r\   r   c                  |    t          t                    t                    z  z   z  z  t                    S r   )rE   r   r   r{   rS   s   ri   r   z!test_issue_9252.<locals>.<lambda>  s1    s1vv3q66.BQT.I1b(Q(Q rh   )r   rE   r   r   rN   r  ri  s   @@ri   test_issue_9252rj    s    sD!!!AsT"""A#a&&Ac!ffH%Q
2Ar::a????
 Q Q Q Q QRRRRRrh   c                  j    t          t          t                    dz  t          dd          dk    sJ d S )Nr5  r   r]   )rE   r2   rO   rg   rh   ri   test_issue_9558rl    s1    QQ3''1,,,,,,rh   c                      t          dt          z  t          t          dt          z  t                    dz  z  z  t          t                    t          k    sJ d S )Nr   rX   )rE   rR   r   r   r   rg   rh   ri   test_issue_10801rn    sF    Q!hqsA..112Ar::b@@@@@@rh   c                      t          dd          \  } }t          t          | |z            t          |           z  | d          |k    sJ d S )Nzs xTr   r   )r   rE   r9   )r   rO   s     ri   test_issue_10976rp    sO    5t$$$DAqQqS#a&&!Q''1,,,,,,rh   c                      t          t          t                    t          t          d          z  t          z  t	          dt
          z  t          z            z  z  t          t                    dk    sJ d S Nr\   rX   )rE   r   rS   r   r&   r   r   rg   rh   ri   test_issue_9041rs    sQ    1!CFF(Qad1f!=>2FF!KKKKKKrh   c                  8   t          d          \  } }}t          | | |          j        |hk    sJ t          | | |d          j        |hk    sJ t          | |z   | |z   |          j        |hk    sJ t          | dz   |z   | dz  |          j        ||hk    sJ d S )Nzx, y, ar]   rX   )r   rD   free_symbols)rO   rP   ry   s      ri   test_issue_9205rv    s    i  GAq!Aq>>&1#----Aq#+s2222QAq!!.1#5555!Q$AqD!$$1aV;;;;;;rh   c                     t          dt          t          d          z  t          dz  z  t          t                    dk    sJ t          dt          t          d          dz   z  t          dz  z  t          t                    dk    sJ d S )N   r^   r\   )rE   r   rS   r   rg   rh   ri   test_issue_9471ry    sq    2Aa>1a4'2..!33332Aa
#QT)1R00B666666rh   c                      t          t          t          dt          z                      t          t                    dk    sJ d S rr  )rE   r:   r   rO   r   rg   rh   ri   test_issue_11496r{  
  s5    c!A#hhB''1,,,,,,rh   c                      t          t          t          t          z   t          z  t          t          z  z
  t          z  t          d                    t          t          t          dz
  z  z  k    sJ d S )Nr   r\   )rG   rE   rO   rP   rS   rg   rh   ri   test_issue_11879r}    sN    EAaC!8AqD=!+Q2233qQqSzAAAAAArh   c                      t          d          } t          d| z  | t                    dk    sJ t          dd| z  z  | t                    t          dd          k    sJ d S )NrR   r   r\   g333333?r^   
   )r   rE   r   r
   )rR   s    ri   test_limit_with_Floatr    sa    A1b!!Q&&&&S!VQ##x2666666rh   c                      t          dt          z  dt           dz
  z  z  t          dz   dz  z  t          dz  z  t          t                    t          dd          k    sJ d S Nr^   r\   rX   )rE   rO   r   r
   rg   rh   ri   test_issue_10610r    sV    Aa1"q&k!1q51*,QT11b99Xa^^KKKKKKrh   c                  2   t          t          t                    t          t                    z   t          dd          t          d          k    sJ t          t          t                    t          t                    z   t          dd          t          d          dt          z  t
          z  z   k    sJ t          t          d            t          t          t                    t          t                    z   t          t                    t          k    sJ t          t          t                    t          t                    z   t          dd          t          d          k    sJ t          t          t                    t          t                    z   t          dd          t           k    sJ t          t          d            t          t          t                    t          t                    z   t          t                    t          k    sJ d S )Nr   rY   rX   r]   c                  ~    t          t          t                    t          t                    z   t          dd          S r   )rE   r   rO   r   rg   rh   ri   r   z"test_issue_10868.<locals>.<lambda>  %    uSVVeAhh%61dCC rh   c                  ~    t          t          t                    t          t                    z   t          dd          S r   )rE   r   rO   r   rg   rh   ri   r   z"test_issue_10868.<locals>.<lambda>#  r  rh   )
rE   r   rO   r   r	   r   rN   r   r   r   rg   rh   ri   test_issue_10868r    sl   Q%(("Aq#..#a&&8888Q%(("Aq#..#a&&1Q3r6/AAAA
:CCDDDQ%(("Ar**b0000Q%(("Aq#..#a&&8888Q%(("Aq#..2#5555
:CCDDDQ%(("Ar**b000000rh   c                      t          t          t          t                    z   t          z  t          t                    dk    sJ d S r(  )rE   rS   r.   r   rg   rh   ri   test_issue_6599r  '  s3    !c!ff*aB''1,,,,,,rh   c                  j   t          dt          z  dt          dz  z  z   t          dz  t          t                    z   z  t          t                     dk    sJ t          dt          z  dt          dz  z  z   t          dz  t          t                    z   z  t          t                    t          u sJ d S )Nr^   rX   r  rm   rg   rh   ri   test_issue_12555r  +  s    !Q$ArE/aec!ffn5q2#>>!CCCC!Q$ArE/aec!ffn5q"==CCCCCCrh   c                  J   t          dd          \  } }}t          ddd          \  }}}}}}}	||z  ||z  z  | z  |z  t          |dz  |d|z  z  z  |dz  z  |dz
  z  |d|z  z  |dz  z  |dz  z  |dz
  z  z   |d|z  z  |d|z  z  z  |dz  z  |dz
  z  |dz  d|z  z
  dz   z  z   d|d|z  z  z  ||dz   z  z  |z  | z  |z  |dz  d|z  z
  dz   z  z
  d||dz   z  z  |d|z  z  z  |z  | z  |z  |dz  d|z  z
  dz   z  z   d||dz   z  z  ||dz   z  z  |dz  z  |dz
  z  z
  |dz
  |dz  d|z  z
  dz   z  z            z
  || z  |z
  | z
  dz   z  }
|
                    ||                              d          t	          |
||                              d          k    sJ d S )	Nzr z xTr   za b s0 K F0 s T)rV   r   rX   r\   r   )r   r&   r=  factorrE   )r   rQ   rO   ry   rz   s0KF0r   Tfxs              ri   test_issue_12769r  0  sY   gD)))GAq!#$54PPPAq"aQ
a%1*Q,r/D"a%AaC.A"5q1u"=
QqS	!Q$q!tQU##$&(1Q3iAaC&8Q&>A&F1qQRs
UV&W#X	"qs)AAJq "2%q!taczQ7#8 	
"q1u+a!A#hq "2%q!taczA~6#7 	
"q1u+a!a%j A%q1u-	#. 23QA!a0H	"J K K K NOqSTUXXY\\]M]	
_B 771b>>  d ++uRB/?/?/F/FD/F/Q/QQQQQQQrh   c                  j   t          t          d          ddt          z  dz
  z  z  dt          z  t          z  z  dt          z  dz   dt          z  dt          j        z  z   z  z  dt          z  dz   dt          z  dt          j        z  z
  z  z  t          t
                    t          d	d
          k    sJ d S )N   r_   r\   i@  rX   r   i   $   )rE   r&   rO   r   r   r   r
   rg   rh   ri   test_issue_13332r  <  s    b!bdQh-'q14acAg1qx5PP1qBqD1QV8O,-./5 58@R8H8HI I I I I Irh   c                     t          t          dz  t          t          t                    z  z   t          t                    z   t          t                     t          u sJ t          t          dz  t          t          t                    z  z   t          t                    z   t          t                    t          u sJ t          t          t          t                    z   dz                                  t          t                    t          u sJ t          t          t          t                    z   dz                                  t          t                    t          u sJ t          t          t          t                    z   dz                                  t          t                     t          u sJ t          t          t          t                    z   dz                                  t          t                     t          u sJ d S r   )rE   rO   r2   r.   r   expandrg   rh   ri   test_issue_12564r  A  s^   A#a&&3q66)1rc22b8888A#a&&3q66)1b11R77771s1vv:/))++Q33r99991s1vv:/))++Q33r99991s1vv:/))++Q44::::1s1vv:/))++Q44::::::rh   c                  ^    t          t          d            t          t          d            d S )Nc                      t          t          t                    t          t                                                    S r   )rD   r   rO   r   r   rg   rh   ri   r   z"test_issue_14456.<locals>.<lambda>K  s$    c!ffa(=(=(B(B(D(D rh   c                      t          t          dz  t          dz   z  t          t                                                    S )NrX   r\   )rD   rO   r   r   rg   rh   ri   r   z"test_issue_14456.<locals>.<lambda>L  s*    adAaCj!S(A(A(F(F(H(H rh   r  rg   rh   ri   test_issue_14456r  J  s2    
 D DEEE
 H HIIIIIrh   c                      t          dt          dt          z  t          z  t          dz  z
            z  t          dt          z  dt          z  dz
  z            t           u sJ d S )Nr^   r      rX   )rE   r1   r   rO   r   rg   rh   ri   test_issue_14411r  O  sU    3qtAv!|$$$a2r"uqy)9::rcAAAAAArh   c                      t          t          t          dz   dz  dz   t          dz  dz   z  dz
  z  t          t                    dk    sJ d S rr  rp   rg   rh   ri   test_issue_13382r  S  sH    a!eaZ!^adQh/!34a<<AAAAAArh   c            	          t          t          dt          t          t          dz             z   dz   t          t          t                    z   z  z   z  t          t                    dk    sJ d S )Nrc   r\   rE   rO   r   r   rg   rh   ri   test_issue_13403r  W  sQ    B!c!a%jj.1,q3q66z::;QCCqHHHHHHrh   c                  8   t          t          dz   t          t                    dz  z  t          dz
  t          dz   dz  z  t          t          dz             dz  z  z   t          dz  t          t                    dz  z  z  t          t                    dk    sJ d S r  r  rg   rh   ri   test_issue_13416r  [  s~    1a4%A	/QUQUQJ$6s1q5zz1}$DDq!tCPQFFTUI~VXY[]^^bcccccccrh   c                  D   t          t          dz  dt          z  dddt          z  z  z
  t          z   dz   z  t          z
  t          dz   dz  t          dz  z   t          z  z
  z  t          t                    t          dz  dz  t          dz  dz  z
  t          dz  z   k    sJ d S )NrX   r\   r   r^   r  rs   r   )rE   rS   rO   r   rg   rh   ri   test_issue_13462r  _  s    Aqsa!QqS'kA--12Q61a4%'AaC-9JJKQPRSSWXZ[W[\^W^abdeaefgagWgjklnjnWnnnnnnnrh   c                      t          d          } t          t          | t          z
            t          t                    dk    sJ t          t          t          t                    t          z
            t          t                    dk    sJ d S )Nry   rc   )r   rE   r9   rO   r   r&   r@  s    ri   test_issue_13750r  c  si    sAQUQ##r))))T!WWq[!!1b))R//////rh   c                     t          t          t          t                    t	          t                    z  t          t
                    t                    sJ t          t          t          t                    t          t                    z  t          t
                    t                    sJ t          t          t          t	          t          t                                        t          t
                    t                    sJ t          ddt          dz  t          t                    z   z  z   t          dz  t          z   z  t          t
                    t          k    sJ d S rr  )	
isinstancerE   r2   rO   r   r   rD   r.   r   rg   rh   ri   test_issue_14276r  i  s    eCFFCFFNAr22E:::::eCFFCFFNAr22E:::::eCCFF,,a44e<<<<<!aAA''1a4!84a<<AAAAAArh   c                      t          dt          t                    t          t                    z  z  dt          z  z  t          t                    dk    sJ d S r(  )rE   r   rO   r   rg   rh   ri   test_issue_14514r  p  sC    !SVVSVV^$!,a44999999rh   c                     t          t          t                    dz  t          t                    z
  t	          t                    t          t                    z  z   t          t                    t          t          j	        t          j
                  k    sJ t          t          t                    dz  t          t                    z
  t          t                    t          t                    z  z   t          t                    t          t          j	        t          j
                  k    sJ t          t          t                    t	          t                    dz  z
  t          t                    t          t          j	        t          j
                  k    sJ t          t          t                    t	          t                    dz  z
  t          t                    t          t          j	        t          j                  k    sJ t          t          t                    t	          t                    dz  z
  t          t                    t          t          j	        t          j                  k    sJ t          t          t                    dz  t	          t                    dz  z
  t          t                    t          t          j	        t          j                  k    sJ t          t	          t                    dz  t          t                    dz  z   t          t                    z
  t          t                    t          t          j         t          j
                  k    sJ d S r   )rE   r2   rO   r.   r3   r0   r   rI   r   re   rf   r/   r   rg   rh   ri   test_issues_14525r  t  s   QSVV#c!ffSVVm3Q;;{1K]_`_i?j?jjjjjQSVV#c!ffSVVm3Q;;{1K]_`_i?j?jjjjjQ#a&&!)#Q++{1;Mqz/Z/ZZZZZQ#a&&!)#Q++{1;Mqu/U/UUUUUQ#a&&!)#Q++{1;Mqu/U/UUUUUQSVVQY&2..+a>PRSRW2X2XXXXXQSVVQY&Q/B77;vqz;Z;ZZZZZZZrh   c                      t          t          t                    t          t          t          dz  z
            z  t          dz   z  t          t                    dk    sJ d S )NrX   r\   r   )rE   r&   rO   r.   r   rg   rh   ri   test_issue_14574r  ~  sG    aQAX&!a%0!R88A======rh   c                     t          t          t                    t          t                    t          j        k    sJ t          dt          t                    z   t          t                    dt          j        z   k    sJ t          dt          t                    z  t          t                    t          dd          k    sJ t          t          t                    t          t                    t          j        k    sJ t          t          t                    t          t                     t          dd          k    sJ t          dt          t                    z  t          t                     dk    sJ d S )Nr^   r_   rX   rc   r   ra   )rE   r=   rO   r   r   r   r
   r<   rg   rh   ri   test_issue_10102r    s   !a$$....Xa[[!R((AJ66668A;;2&&(1a..8888!a$$....!a"%%"a88888A;;B3''2------rh   c                  2    t          t          d            d S )Nc                      t          t          t          t          z            t	          t
          t          z            z  t          t                    S r   )rE   r   r	   rO   r2   r   r   rg   rh   ri   r   z"test_issue_14377.<locals>.<lambda>  s+    c!A#hhs2a4yy.@!R(H(H rh   r  rg   rh   ri   test_issue_14377r    s    
 H HIIIIIrh   c                     t           dz  dt           dz  z  dt           dz  dz
  z  t           dz  z  t          t           dz  dz             z  z
  dt           dz  dz
  z  t           dz  z  t          t           dz  t           z   dz             z  z   t           z   dz   z  } t          | t           t                    t	          d          dz  k    sJ d S )NrX   ra   r^   r\   )rO   r>   rE   r   r   r6  s    ri   test_issue_15146r    s    	
1AqD1adQh<!Q$.A1B1BBB	1a4!8q!tgadQhl3334678:;< 	=AAr??add1f$$$$$$rh   c                  0   dt           z  ddt            z  ddt           z  z  t           z   dz   z  z   z  t           dz   z  t           dz   z  } t          | t           t                    t          d          k    sJ t	          t           d          dz  dt           z  t          t                     z  z   dt           z  z   t          t           dz             dt          t                     z  z   dt           z  z   z  } t          | t           t                    dk    sJ d S )NrX   ra   r\   r   r  r_   r^   )rO   rE   r   r   r   r   r6  s    ri   test_issue_15202r    s    	
Aq1r7Bq!tGaK!O,,	-q1u	5Q?AAr??c!ff$$$$	QA1Yq\\)	)AqD	0Yq1u5E5E)TU,,5VY[]^Y^5^_AAr??b      rh   c                      t          t          dz  t          dz   dz  z
  t          dz  z  t          t                    dk    sJ d S )Ni  r\   i  i0rp   rg   rh   ri   test_issue_15282r    s?    !T'QUTM)QW4a<<EEEEEErh   c                      t          t           t          t          t                    dz             z   t          z  t          t          d          dk    sJ d S )Nr\   r]   rZ   r   )rE   rO   r   r   r   rg   rh   ri   test_issue_15984r    sF    1"s3q66A:&)1bc:::a??????rh   c                      t          t          t          d          t          t                    z  t          t                    dk    sJ d S r(  )rE   r@   rO   r?   r   rg   rh   ri   test_issue_13571r    s:    Aq!!E!HH,a44999999rh   c                      t          t          t          t                              t          d          t          t          t          j                            k    sJ d S r(  )rE   r(   r;   rO   r   r   rg   rh   ri   test_issue_13575r    sA    d1gg1%%d15kk):):::::::rh   c                     t          t          t                    t          z  t          dd                                          dk    sJ t          t          dz  t          dd                                          dk    sJ t          dt          dz  z  t          dd                                          t          u sJ t          dt          z  t          dd                                          t
          u sJ d S )Nr   r`   rZ   r\   rX   )rD   r2   rO   r   r   r   rg   rh   ri   test_issue_17325r    s    Q1aT***//11Q6666Aq!&&&++--22221a4A4(((--//255551a%%%**,,333333rh   c                  l    t          t                                        t          d          dk    sJ d S )Nr   )r   rO   rE   rg   rh   ri   test_issue_10978r    s/    A;;Q""a''''''rh   c                  x    t          t          t          dz            t          t                    t          u sJ d S r   )rE   r"   rS   r   rg   rh   ri   test_issue_14313_commentr    s/    qsQ##r))))))rh   c                      ddt           z  z
  t           z                      t                     } t          | t           dd          dk    sJ d S )Nr\   rY   rZ   )rO   r   rE   )r   s    ri   test_issue_15323r    sI    
ac'AAAAqc"""a''''''rh   c                      t          t          t          t                                t          t                    z  t          d          dk    sJ d S r(  )rE   r   r   rO   rg   rh   ri   test_issue_12571r    sC    (CFF7###CFF*Aq11Q666666rh   c                      t          t          dz  t          dz   t          z  t          z  z  t          dz   t          dz   z  t          dz   z  z  t          t                    t          d          k    sJ d S r  r  rg   rh   ri   test_issue_14590r    s[    !Q$Q	A~%QQQ(?@!RHHCPQFFRRRRRRrh   c                      t          d          \  } }t          t          |z  t          |z  z
  t          | z  t          | z  z
  z  t          t                    |t          |  |z   z  z  | z  k    sJ d S )Na b)r   rE   rO   rP   ry   rz   s     ri   test_issue_14393r    sc    5>>DAq!Q$A+1q!t,a33qaR!V}QFFFFFFrh   c                      t          t          t          dz             dt          dz   z  z  t          t                    dt          z  z  z
  t          t                    t	          d          k    sJ d S )Nr\   rc   )rE   r   rS   r   r   rg   rh   ri   test_issue_14556r    s\    1q5!!Aq1uI.1!1DDaLLPSTVPWPWWWWWWWrh   c                      t          dt          d          dz  t          dz   z  z   dt          z  z  dt          d          dz  t          dz
  z  z  z  t          t                    t          k    sJ d S )Nr\   rX   r^   r   rE   r   rO   r   rg   rh   ri   test_issue_14811r    se    11a1q5)*ad3a1Q446QU:K6LMqRTUUY[[[[[[[rh   c                  |    t          t          t                    t          d          t          d          k    sJ d S )Ni ʚ;)rE   r   rO   rg   rh   ri   test_issue_16222r    s1    QJ''3z??::::::rh   c                      t          t          t          dz   z  t          dz   t          z  z   t          t          dz   z  z  t          z  t          t                    t          t          d                    k    sJ d S r(  r  rg   rh   ri   test_issue_16714r    sY    1q1u:Q
*a!a%j81<aDDCPQFFSSSSSSrh   c                     t          dd          } t          t          t          | z   t                    t          |  z  z  t          t                    dt          | dz             z  k    sJ t          ddd          } t          t          t          | z   t                    t          |  z  z  t          t                    dt          | dz             z  k    sJ d S )NrQ   Trw   r\   )rV   rU   )r   rE   r   rS   r   r?   r   s    ri   test_issue_16722r    s    d###A!a%##ArE)1b11QuQU||^CCCCdD111A!a%##ArE)1b11QuQU||^CCCCCCrh   c                     t          t          dz   dz   t          dz   dz   t          t          dz             z  z  t          dz   z  t          t                    z  t          dz   z  t          t                    dk    sJ t          t          dz   dz  t          t                    z  t          dz   t          dz   z  t          t          dz             z  z  t          t                    dk    sJ t          t          dz   t          t                    z  t          t          t          dz             z  z  t          t                    dk    sJ d S )Nr\   rX   r   r^   )rE   rS   r   r   rg   rh   ri   test_issue_17431r    s!   1q5A+AEQ;)AE2B2B"BCa%$Q<<(+,q5234b: :=>? ? ? ?!a%!IaLL(1q51q5/)AE:J:J*JKb    !a%9Q<<'1yQ/?/?+?@!RHHAMMMMMMrh   c                      t          t          t          t                               t          t          t                              t          z  z
  t          d          t          k    sJ d S r(  )rE   r8   r   rO   r   rg   rh   ri   test_issue_17671r    sH    SVVGs3q66{{1},a33zAAAAAArh   c                      t          dd          \  } }}}t          | dz   |z  t          | dz   dz  |dz  z  ||z  z   |z             z
  |t                    | d| z  dz   z  k    sJ d S )Nza b c xTrw   r\   rX   )r   rE   r&   r   )ry   rz   r{   rO   s       ri   test_issue_17751r    s    T222JAq!Q!a%T1q51*QT/AaC"7!";<<<aDDAaCRSGTTTTTTrh   c                     t          t          t                    t          t                    z  t	          d          t          z  t          z  z  t          t
                    t          d          t          t                    z  k    sJ d S rr  )rE   r   rS   r&   r   r   r   rg   rh   ri   test_issue_17792r    sZ    1d1gg%s1vvax!m3Q;;tAwwtBxx?OOOOOOOrh   c                      t          t          t          t                              t          dd          dk    sJ t          t          t          t                              t          dd          dk    sJ d S )Nr   r]   rc   rY   r\   )rE   r   r2   rO   rg   rh   ri   test_issue_18118r    s^    c!ffq!S))R////c!ffq!S))Q......rh   c                      t          t          t          t                              t          t          t                              z  t          dd          dk    sJ d S )Nr   rY   r\   )rE   r2   r&   rO   rg   rh   ri   test_issue_18306r     sD    T!WWd3q66ll*Aq#66!;;;;;;rh   c                      t          t          t          dt          z            t          z             t          t          t                    t          dz  z             z  t          t                    dk    sJ d S )Nr^   r  )rE   r   r   rO   r   rg   rh   ri   test_issue_18378r    sV    S1XX\""3s1vv3#7#77B??1DDDDDDrh   c                      t          dt          d          dz  t          z  z
  dt          z  z  t          t                    t          u sJ t          t           t          z  t          t                    t          u sJ d S )Nr\   rX   r^   )rE   r   rO   r   r   rg   rh   ri   test_issue_18399r    sc    !add1fQh,!A#&2..#55551"q!R  C''''''rh   c                  *   t          t          t                    dt          t                    z  z  t          t
          d          t          t          t                    dt          t                    z  z  t          t
          d          k    sJ d S )NrX   r]   rZ   )rE   r3   rO   r&   r   r   rD   rg   rh   ri   test_issue_18442r    sl    Q!d2hh-(!RS999U3q66APTUWPXPXMCZ\]_agj=k=k=kkkkkkkrh   c                     t          t          t          t                              t          z  t          d          dk    sJ t          t          t          t                              t          z  t          dd          dk    sJ d S )Nr   r\   r]   )rE   r   r   rO   rg   rh   ri   test_issue_18452r    sd    SVVaA&&!++++SVVaAs++q000000rh   c                     t          t          t                    dt          z  z  t          t                    t	          t          t                    dt          z  z  t          t          d          k    sJ t          t          t                    dt          z  z  t          t                    t	          t          t                    dt          z  z  t          t          d          k    sJ t          t          t                    dt          z  z  t          t                    t	          t          t                    dt          z  z  t          t          d          k    sJ t          t          t                    dz   dt          z  z  t          t                    dk    sJ t          t          t                    dz   dt          z  z  t          t                    dk    sJ t          t          t                    dz
  dt          z  z  t          t                    t	          t          t                    dz
  dt          z  z  t          t          d          k    sJ t          t          t                    dz   dt          z  z  t          t                    t          dd          k    sJ t          t          t                    dz  dt          z  z  t          t                    t          dt                    k    sJ t          t          t                    dz  dt          z  z  t          t                    t          dd          k    sJ t          t          t                    dz   dt          z  z  t          t                     t          dt                    k    sJ t          t          t                    dz  dt          z  z  t          t                     t          dt                    k    sJ t          t          t                    dz  dt          z  z  t          t                     t          dt                    k    sJ d S )Nr\   r]   rZ   rX   r  r   )rE   r2   rO   r   rD   r.   r3   rI   rg   rh   ri   test_issue_18473r    s   Q!A#2&&%A1q"#*N*N*NNNNNQ!A#2&&%A1q"#*N*N*NNNNNQ!A#2&&%A1q"#*N*N*NNNNN#a&&1*!$a,,1111#a&&2+1%q"--2222#a&&1*!$a,,s1vvzQqS6I1bVY0Z0Z0ZZZZZ#a&&1*!$a,,Aq0A0AAAAA#a&&!)qs#a,,Ar0B0BBBBB#a&&!)qs#Q++{1a/@/@@@@@#a&&1*!$a"--Q1C1CCCCC#a&&!)qs#Q,,Ar0B0BBBBB#a&&!)qs#a"--Q1C1CCCCCCCrh   c                      t          dt          dt          z            z  t          dt          z            dz   z  dt          z  z  t          t                    t          d          k    sJ d S NrX   r^   r\   )rE   r   rO   r   rg   rh   ri   test_issue_18482r  &  sU    !C!HH*c!A#hhl+qs3Q;;s1vvEEEEEErh   c            	      P   t          t          t                    t          dt	          t                    z
            z  t          d          t          d          k    sJ t          t          t                    t          dt	          t                    z
            z  t          dd          t          d          k    sJ t          t          t                    t          dt	          t                    z
            z  t          dd          t          d           k    sJ d S )Nr\   r   rX   rY   rZ   r]   )rE   r2   rO   r&   r.   rg   rh   ri   test_issue_18508r  *  s    QQs1vvX&1--a8888QQs1vvX&1#666$q''AAAAQQs1vvX&1#666477(BBBBBBrh   c                  2    t          t          d            d S )Nc                  r    t          t          dt          z
  t          z            t          t                    S r   )rE   r   rS   rO   r   rg   rh   ri   r   z"test_issue_18521.<locals>.<lambda>1  s"    c1q5A+.>.>2(F(F rh   r  rg   rh   ri   test_issue_18521r  0  s    
 F FGGGGGrh   c                  &   t          dd          \  } }t          t          |           | |          t          |          k    sJ t          t          t          |                     | |          t          t          |                    k    sJ d S )Nr  Trw   )r   rE   r   r   r  s     ri   test_issue_18969r  4  s    54(((DAq!a##x{{2222Xa[[!!1a((C,<,<<<<<<<rh   c                      t          t          t          t                    dt          z  z  z  t          t                    t	          d          k    sJ d S r(  )rE   rS   r   r   r   rg   rh   ri   test_issue_18992r  :  s?    IaLL1Q3'(!R00CFF::::::rh   c                      t          d          } t          t          |           t          | dz
            t          | dz             z  z  | d          dk    sJ d S )NrO   r\   rX   r   rc   )r   rE   r?   r   s    ri   test_issue_19067r  >  sT    sAq5Q<<a!e45q!<<BBBBBBrh   c                      t          t          dt          z  dt           z  z  z  t          t                    dk    sJ d S r  rp   rg   rh   ri   test_issue_19586r
  C  s8    QT!qb'\"Ar**a//////rh   c                  z    t          d          } t          dd          }t          | |z   | d          dk    sJ d S )NrS   r9  T)zeror   )r   rE   )rS   r9  s     ri   test_issue_13715r  G  sF    sAsAQ1""""""rh   c            
         t          t          dz  t           dz
  t          dt          z            z  t          dz   t          dt          dz   z            z  z   z  t           dz   z  t          t                    dk    sJ d S r  )rE   rS   r2   r   rg   rh   ri   test_issue_15055r  M  sl    AQAaC(AE3q!a%y>>+AABQBFKQPRSSWXXXXXXXrh   c            
         t          dd          \  } }t          d          \  }}}t          ||z  |z  t          |           t          d|z  |z  |z  | |dz  z  z             z  z
  | |z  z   ||z  z  |d          |||z  z   |z  k    sJ d S )Nzm viTrw   zB ti dra   rX   r   )r   rE   r&   )r:  viBtir   s        ri   test_issue_16708r  Q  s    FT***EArx  HAr1!B$r'DGGDAaQQwY)>$?$???!B$F2NPQSTUUZ[^`ac^cZcegYgggggggrh   c                     t          t          ddt          z            t          t          dt                    dz  z  z  t          t                    dt	          d          z  t
          z  dz  k    sJ t          t          ddt          z            t          t          dt                    dz  z  z  t          t                     dt	          d          z  t
          z  dz  k    sJ d S )Nr\   r^   rX   ra   )rE   r4   rO   r   r&   r   rg   rh   ri   test_issue_19154r  W  s    AqD!!1gammQ&6#67R@@Ad1ggIbLQRNRRRRAqD!!1gammQ&6#67bSAARQZPR]ST_TTTTTTrh   c                     t          dd          } t          dd          }t          dd          }t          dd          }t          dd          }t          d          }d	|d
z  z  | z  |z  |d|z  | z  |z  z  z  }|d
z  |d
z  z  }||| z  |z  z  dz
  }| d|z  |z  z  |d
|z  |d
z  z  z  z
  |||| z  |z  z  dz   z  d
|z  |d	z  z  z  z
  |d|z  | z  |z  z  |z  z   }	t          t          |	          |            }
t	          |
d|z  |z  z
  | t
                    dk    sJ t	           |
j                    d|z  |z  z
  | t
                    dk    sJ d S )NbetaTrw   hr:  omegarO  r\   r^   rX   rx   r   r   )r   r   r   r   rE   r   rG   )r  r  r:  wrO  r   qr9  r   Zr   s              ri   test_issue_19453r  \  s   &4(((DsT"""AsT"""Aw&&&AsT"""AAA	!Q$tAa#a%*Q,''A	1QT	A	AdF1HA	
AaCE
Q!AqD\!Aq1T6!8}q'8$91Q3q!t8$DD#a%*Q,!	"A	c!ffd		ASU1WdB''1,,,,Aa'r22a777777rh   c                  z    t          t          d           dz  t          z  t          t                    dk    sJ d S )Nr\   r   r   r  rg   rh   ri   test_issue_19739r   o  s5    1Q44%'Aq"%%******rh   c                      t          dt           z  t          dt          dz   z  dz             z  t          t                    dk    sJ d S )NrX   r   r\   )rE   rO   r&   r   rg   rh   ri   test_issue_19766r"  s  sD    aRa!a%j1n---q"55::::::rh   c                  D   t          d          } t          t          | t          z            t          z  t          t                    t          t          | t          z            t          z  t          t          d          k    sJ t          dd          } t          t          | t          z            t          z  t          t                    t          t          | t          z            t          z  t          t          d          k    sJ t          dd          } t          t          | t          z            t          t                    t          dd          k    sJ t          t          | t          z            t          z  t          t                    d	k    sJ d S )
Nr:  r]   rZ   Tr   )nonzerorc   r\   r   )r   rE   r.   rO   r   rD   rI   )r:  s    ri   test_issue_19770r%  w  s'   sAQqS!Q##uS1XXaZBC'H'H'HHHHHsAQqS!Q##uS1XXaZBC'H'H'HHHHHsD!!!AQqS1b!![Q%7%77777QqS!Q##q((((((rh   c            	         t          t          t                    t          t          t                              z  t          t          dz            t          t          t                    t          t          t                              z  t          t          dz  d          k    sJ t          t          t                    t          t          t                              z  t          t          dz  d          t          t          t                    t          t          t                              z  t          t          dz  d          k    sJ t          t          t                    t          t          t                              z  t          t          dz  d          t          t          t                    t          t          t                              z  t          t          dz  d          k    sJ t          t          t          t                              t          t          dz            t          dd          k    sJ t           dt          t                     z  z  t          t           t                    k    sJ t          dt          t                    z  z  t          t           t                    k    sJ t          dt          t                     z  z  t          t           t                    k    sJ t           dt          t                    z  z  t          t           t                    k    sJ d S )NrX   rY   rZ   r]   r`   rc   r\   )rE   r3   rO   r2   r   rD   rI   r   rg   rh   ri   test_issue_7535r'    s7   QCFF#Q1--s1vvc#a&&kk7I1bQRdX[1\1\1\\\\\QCFF#Q1#666%As3q66{{@RTUWYZ[W[ad:e:e:eeeeeQCFF#Q1$7775QCPQFFASUVXZ[\X\bf;g;g;gggggSVVQr!t$$B(:(:::::3#rc((
{B3333333qRy>["b111111qbSz?k2#r2222223#b''	?k2#r22222222rh   c                      t          t          dz   dt          z  z  t          z
  t          z  t          d          t           dz  k    sJ d S )Nr\   r   rX   )rE   rO   r   rg   rh   ri   test_issue_20365r)    sA    1q5AaC.1$a'A..1"Q$666666rh   c                      t          dt          z   dt          z  z  ddt          z  z   ddt          z  z  z  z
  t          t                    z  t          d          t          dz  k    sJ d S )Nr\   rX   r   )rE   rO   r,   r   rg   rh   ri   test_issue_21031r+    sZ    1q5AaC.A!Gq!A#w#77a@!QGG1Q3NNNNNNrh   c                      t          t          t          t          z            dt          z  dz
  z  t          d          t          dz  k    sJ d S )Nr^   r   r   )rE   r2   r   rO   rg   rh   ri   test_issue_21038r-    s@    RTAaC"H%q!,,1444444rh   c                     t          t                    t          dt          z            z  } t          | t          dd          dk    sJ t          | t          dd          dk    sJ t          | t          dd          dk    sJ d S )Nr\   r   rY   r]   r`   )r   rO   r2   rE   r   s    ri   test_issue_20578r/    s    q66C!HHDa#!####a#!####a$1$$$$$$rh   c                  D   t          t                    } |                     t          t                    t          k    sJ |                     t          t                     t           k    sJ t          t          t                               } |                     t          t                    t          t                     k    sJ |                     t          t                     t          t                    k    sJ t          t          t                              } |                     t          t                    t          t                    k    sJ |                     t          t                     t          t                     k    sJ |                     t          t                    t          t                    k    sJ t          t          t          dt          z                                } |                     t          t                    t          t          t                               k    sJ |                     t          t                     t          t          t                              k    sJ |                     t          t                    t          t          t                               k    sJ |                     t          t                     t          t          t                              k    sJ d S )N)logxr\   )r   rO   nseriesrP   r1  s    ri   test_issue_21227r3    s!   AA99QQ91$$$$99QaR9  QB&&&&SVVGA99QQ93r77****99QaR9  CFF****CFFA99QQ93q66))))99QaR9  CGG++++99QQ93q66))))CAaCMMA99QQ93sA2ww<<////99QaR9  CAKK////99QQ93sA2ww<<////99QaR9  CAKK//////rh   c                      t           dz
  t          dt           dz
  z            z  }  | j        t           d          dk    sJ  | j                                        t           d          dk    sJ d S r   )rO   r.   rE   r  )r   s    ri   test_issue_21415r5    sj    Q3AqsG
C39Qq>>Q3:<<a""a''''''rh   c                      t          t          t          dz             t          t                    z  t          t                    t          k    sJ d S r(  )rE   r   rS   r   r   rg   rh   ri   test_issue_21530r7    s:    a!eT!WW$a,,111111rh   c                      t          d          dz
  dz  } t          t          | z
  t          dz  t          z   dz
  z  t          |           t          d          dz  k    sJ d S )Nr_   r\   rX   )r&   rE   rO   r  s    ri   test_issue_21550r9    sW    	a1aA!a%!Q$(Q,'A..$q''!);;;;;;rh   c                      t          t          t          dz   z  t          t                    dz   z  dz   t          z  t          d          } | t          d          dz  dt          d          z  z   k    sJ d S )Nr\      l   qjl   S[	)rE   rO   r   r   )outs    ri   test_issue_21661r=    sh    
QUs1vvz*Q.!3Q
;
;C!M""2%SWW(<<<<<<<<rh   c                      t          t          t          t                    t          t          z  z                      t          d          t          d          t          d          dz  k    sJ d S )Nr   r   r\   i 	 )rE   r6   rQ   rO   r=  r   rg   rh   ri   test_issue_21701r?    sP    '!Q--1$**1a00!Q771Q44;FFFFFFrh   c                      t          dd          } t          dt          dt          | z
  dz  z   z  z  t                    } |j        t          t
                    t          j        k    sJ d S )Nry   Tr   r\   rX   )r   rC   r   rO   rE   r   r   r   )ry   r	   s     ri   test_issue_21721rA    s^    sA!Ra!eaZ()1--A171b>>QV######rh   c                  T   dt          dt          z  t          z  t          z            z
  dt          dt          z  t          z  t          z  dz            z
  z  } |                     t          d          dk    sJ t          |                               t          d          dk    sJ d S )Nr\   ra   r_   r   )r   r	   r   rQ   rE   r   )terms    ri   test_issue_21756rD    s    BqDGAISAb1%5%5!56D::aq    d88>>!Q1$$$$$$rh   c                      t          d          } t          | dz   t          dz  z   dt          dz  z
  z                                | dd          t          k    sJ d S )Nry   rX   r\   r]   )r   r&   rO   rE   r	   r@  s    ri   test_issue_21785rF    sY    sA!Q$AAqD)**00As;;q@@@@@@rh   c                  p    t          dt          z  dt           z  z  t          t                    dk    sJ d S )Nrc   rX   r   rp   rg   rh   ri   test_issue_22181rH    s4    "q1r7"Ar**a//////rh   c            	      \   t          d          t          t          d          t          t          dz            z  dz            z  dz  } t          d          t          z  t          t          d          t          t          dz            z  dt          d          z  t          z  dz  z
             t          t          d          t          t          dz            z  dt          d          z  t          z  dz  z             
 z   z  dz  }t          | t          t                     t          d           t          z  dz  k    sJ t          |t          t                     t          d           t          z  dz  k    sJ t          | t          t           d          t          d          t          z  dz  k    sJ t          |t          t           d          dk    sJ t          t          t          z
            t          t           t          z
            z
  }t          |d	
          }t          |t          t                    t          |t          t                    cxk    rt          t          z  k    sn J t          t          t          dz            t          z
             t          t          t          dz            t          z             z   x}}t          |t          t          d          dt          z  t          z  k    sJ t          |t          t          d          dk    sJ d S )Nr  rX   r   r5  r_   <   r]   r   T)forcerY   )
r&   r-   r3   rO   r	   r   rE   r   rF   r   )e1e2r~   expr2s       ri   test_issue_22220rO    s   	b$tBxxAaC(*++	+B	.B	b!c$q''#ac((*QtBxxZ\!^;<<<$q''#ac((*QtBxxZ\!^;<<<= 
>>@
AB Qb	"R////Qb	"R////QS!!T"XXb[^3333QS!!Q&&&& q1u::QBF#Dt4(((Eq"ua!4!4<<<<"<<<<<< AaC1%%%s3qs88a<'8'889D4q"c""ac"f,,,,q"c""a''''''rh   c                     t          dd          \  } }t          |dz   | z  |dz   | dz   z  || dz   z  z
  z  |t                    d| dz   z  k    sJ t          |dz   | z  |dz   | dz   z  || dz   z  z
                                  z  |t                    d| dz   z  k    sJ t          |dz   | z  ||| z   |dz   | z  z   z  |dz   | z  z   z  |t                    d| dz   z  k    sJ d S )Nzk, nTrw   r\   )r   rE   r   r  )rR   rS   s     ri   test_issue_22334rQ    s   FT***DAq!A#AaC1Q3<1!*45q"==AEJJJJ!A#AaC1Q3<1!*4<<>>>2FF!QQRU)SSSS!A#1q!teq1uqj01QUQJ>?BGG1aRSe9TTTTTTrh   c                      t          t          ddt          z  z             t          t                    z  t          t                    t          d          k    sJ d S rr  )rE   r   rO   r&   r   rg   rh   ri   test_sympyissue_22986rS    sD    q1Q3wQ'B//477::::::rh   c                      dt           z  dt            z  z
  dt           z  dt            z  z   z  } t          | t           t                     dk    sJ d S )NrX   rc   )rO   rE   r   r1  s    ri   test_issue_23231rU    sM    	
AQB!Q$aR.)AAsr!!!!!!rh   c                      t          dt          z   t          dz  z  t          dt          z            z  t          dt          f          t          k    sJ d S )Nr\   rX   rc   r   )rC   rO   r   r   rg   rh   ri   test_issue_23596rW    sD    q1uadlC1II-1bz::b@@@@@@rh   c                  X   t          t           t          dz  z  t          z   dz
            } t          t           t          dz  z  t          t          z  z   dz
            }t          | t          dd          t          d           t          z  k    sJ t          | t          dd          t          d           t          z  k    sJ t          |t          dd          t          d          t          z  k    sJ t          |t          dd          t          d           t          z  k    sJ d S )NrX   r^   r   rY   r]   )r&   r	   rO   rE   )expr1rN  s     ri   test_issue_23752rZ    s    !AqD1q!!E!AqD1Q3"##E1c""tAwwhqj00001c""tAwwhqj00001c""d1ggai////1c""tAwwhqj000000rh   c                     t          t          t          dz  t          t                    z                                          t                    } |                     t          t                    dk    sJ |                                                     t          t                    dk    sJ | 	                    t                                        t          t                    dk    sJ | 	                    t                                                                        t          t                    dk    sJ d S r   )r   r3   r   r    rO   r   rE   r   rG   r   r2   )r  s    ri   test_issue_24276r\    s    	SAd1gg			$	$Q	'	'B88Ar??a;;==q"%%****::c??  B''1,,,,::c??##%%++Ar22a777777rh   N(  	itertoolsr   sympy.concrete.summationsr   sympy.core.functionr   r   
sympy.corer   sympy.core.numbersr   r	   r
   r   r   r   sympy.core.singletonr   sympy.core.symbolr   r   (sympy.functions.combinatorial.factorialsr   r   r   $sympy.functions.elementary.complexesr   r   r   &sympy.functions.elementary.exponentialr   r   r   %sympy.functions.elementary.hyperbolicr   r   r   r   r   r   r    #sympy.functions.elementary.integersr!   r"   r#   (sympy.functions.elementary.miscellaneousr$   r%   r&   $sympy.functions.elementary.piecewiser'   (sympy.functions.elementary.trigonometricr(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   sympy.functions.special.besselr4   r5   r6   r7   'sympy.functions.special.error_functionsr8   r9   r:   r;   r<   r=   'sympy.functions.special.gamma_functionsr>   r?   r@   sympy.functions.special.hyperrA   sympy.integrals.integralsrB   rC   sympy.series.limitsrD   rE   sympy.simplify.simplifyrF   rG   sympy.simplify.hyperexpandrH   !sympy.calculus.accumulationboundsrI   sympy.core.mulrJ   rK   sympy.series.orderrL   sympy.testing.pytestrM   rN   	sympy.abcrO   rP   rQ   rR   rS   rj   rn   rq   ru   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&  r)  r,  r/  r2  r7  r>  rA  rC  rE  rG  rI  rL  rP  rS  rU  rW  rZ  r^  r`  rb  rd  rf  rj  rl  rn  rp  rs  rv  ry  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  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/  r3  r5  r7  r9  r=  r?  rA  rD  rF  rH  rO  rQ  rS  rU  rW  rZ  r\  rg   rh   ri   <module>ry     s=         ) ) ) ) ) ) 0 0 0 0 0 0 0 0 ! ! ! ! ! ! < < < < < < < < < < < < < < < < " " " " " " / / / / / / / / X X X X X X X X X X @ @ @ @ @ @ @ @ @ @ G G G G G G G G G G a a a a a a a a a a a a a a a a a a F F F F F F F F F F L L L L L L L L L L : : : : : :Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z Z O O O O O O O O O O O O ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] ] P P P P P P P P P P 1 1 1 1 1 1 ; ; ; ; ; ; ; ; . . . . . . . . : : : : : : : : 2 2 2 2 2 2 9 9 9 9 9 9       * * * * * * $ $ $ $ $ $ . . . . . . . .                        
F3t,,,D8 D8 D8N2 2 2, , ,
A A A; ; ;S S S
$ $ $6 6 6/ / /D D D1 1 124 4 4W W W&6 6 67 7 7 4 4 4A A A3 3 3>H H H  @ @ @; ; ;
  1 1 1., , ,2 # # #9 9 9: : :> > >0 0 0
2 2 2" " "
* * *  0( ( (5 5 5  *6 6 6
	6 	6 	6B B B7 7 7D D D - - -A A A
8 8 8
A A A
M M M
@ @ @* * ** * *K K K
 . . .. . .
-> -> ->`4 4 4@ @ @+ + +$ $ $" " "? ? ?8 8 8T T T, , ,
D D D; ; ;
3 3 3	2 	2 	2/ / /S S S- - -A A A
- - -
L L L< < <7 7 7
- - -B B B7 7 7L L L1 1 1- - -D D D
	R 	R 	RI I I
; ; ;J J J
B B BB B BI I Id d do o o0 0 0B B B: : :[ [ [> > >. . .J J J% % %! ! !F F F@ @ @: : :; ; ;4 4 4( ( (* * * ( ( (
7 7 7S S SG G G
X X X\ \ \; ; ;T T TD D DN N NB B BU U U
P P P/ / /
< < <E E E( ( (
l l l1 1 1
D D D F F FC C CH H H= = =; ; ;C C C
0 0 0# # #Y Y Yh h hU U U
8 8 8&+ + +; ; ;	) 	) 	)3 3 37 7 7O O O5 5 5% % %0 0 02( ( (2 2 2< < <
= = =
G G G$ $ $% % %A A A
0 0 0( ( (,U U U; ; ;" " "
A A A1 1 18 8 8 8 8rh   