
    MZd                     d   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y)    )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 y )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        @/usr/lib/python3/dist-packages/sympy/series/tests/test_limits.pytest_basic1rj   %   s\   Ar?b   Ass"""!Qs"""Aq2#"$$$!Q$22#%%%3q61aS)Q...1a!!!QB2%%%#a&!R RC'''Q1b!R'''1sA2w2&!+++QqS!R B&&&QT1b!bS(((!a%1tAw;'A.!333!a%"a#ua!eb[!Q'????!a%"a,q1urk1aS0QQQQ!a%!)b!QC0E1q519r/1aUX4YYYY1SVQ"rc$q'k111QUAq!$SVR777qsQwB'1,,,B3155(((q!Q&!%%///AEAqc*b000AEAqc*rc111AEA:q!-"444AEA:q!-3333q61bc*rc1113q61bc*b0003q61bd,3333q61bd,2223q!t9a!B$!Q!7SARGGG3q!t9a!B$!Q!7SAbSHHH3q619a"Xa^"3#>2#EEE3q619a"Xa^"3#>"DDDQB;q/A/A1::#NNNNQB;q/A/A1::#NNNNQB;q/A/A1::#NNNNQB;q/A/A1::#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7Aqc*sAg555Aq!%***a!QC(A---RCA3'B3a"f~+====!c!f*r!1a(E3q6A:2BAq,IIII 47Aq,22247Aq,33347Aq,22247Aq,333QqSAc!fH$a#6"<<<QqSAaCAS1R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 y )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!Wa$***S!Q$ZB'2---S#a&\!1b)R///acCG#Q+r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 y )Nr\   r   rY   rZ   r]   rE   rO   r   rg   rh   ri   test_basic3rq   w   s>    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 y )
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a!etAw&2.!333Q1q\Aq":.!B$tAw,q.@@@rh   c            	      \   t        dd      \  } }}t        | |z        t        |       t        |      z
  z
  }|j                  | t              dk(  sJ ||z  j                  | 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 y )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      sm   g-GAq!AaCCFSVO$A771b>QE==B1$$$Wt,FC6C!GcAg&s1q5z136A:/AAQIa%H E VD3K/36!8c>3sAvdH 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 y )N   r^   rX   ra   rY   r\      )rE   r%   rO   r
   rg   rh   ri   test_piecewiser      s:    )AE1%)AE2Ar3?8Ar?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kD  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 y )NrX      r\   r   Trx   g      ?rt   r_   rc   r^   )r&   rO   r'   r   rE   )func1func2func3s      ri   test_piecewise2r      sK   d1gIi!A#'3tA1Q37Q,4F/G+H!H!A#PQ'K !1Wc$q1acAg\>'9":;;TBD DEq!tAvqCx(1Q3;*=>EA{AF+q1uk1q5-ADQQRUDTVZC[\E1"""1"""2!###rh   c                       G d dt               } t         | t              t        t              t	         | t              t        t              k(  sJ y )Nc                       e Zd Zed        Zy)test_basic5.<locals>.myc                 H    |t         j                  u rt         j                  S y N)r   rf   rd   )clsargs     ri   evalztest_basic5.<locals>.my.eval   s    ajj uu !rh   N)__name__
__module____qualname__classmethodr   rg   rh   ri   myr      s    		 
	rh   r   )r   rE   rO   r   rD   )r   s    ri   test_basic5r      s8    X 
 A2%1q""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 y NrX   )rE   rO   rP   rQ   rg   rh   ri   test_issue_3885r      s1    1qsAq!QqS1Q3Y...rh   c                  >   t        t        t              t        z  t        d      dk7  sJ t        t        t              t        z  t        d      j                         dk(  sJ t        t        t        dd      j                  t        t        dt        d      fk(  sJ y )Nr   r\   r`   rZ   )rD   r2   rO   doitargsr   rg   rh   ri   
test_Limitr      su    Q1a A%%%Q1a %%'1,,,Aqd#((Q1fTl,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 y )Nra   rY   r]   rb   rc   r   r\   rX         r^   rx   )
rE   r"   rO   r
   r   rI   r   Halfr-   r!   rg   rh   ri   
test_floorr      sQ   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2k166'1Q4PQ66RRRR tAwB'1,,,tAwRC(B...a!1b)Q...a!1rc*b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 y )Nr   rY   r]   rc   r_   r   )rE   r"   r2   rO   r.   rg   rh   ri   &test_floor_requires_robust_assumptionsr      s   s1v1c*a///s1v1c*b000s1v1c*a///s1v1c*a///q3q6z"Aq#.!333q3q6z"Aq#.!333q3q6z"Aq#.!333q3q6z"Aq#.!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 y )Nra   rY   rc   r]   r   r\   rX   r^   r      rx   )rE   r!   rO   r
   r   rI   r   r   rg   rh   ri   test_ceilingr      s   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QS)S000 71Q3<!1a-!Q???S!GAJ.26+qvvgqQRtTUv: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 y )Nr   rY   r\   r]   r_   r   )rE   r!   r2   rO   r.   rg   rh   ri   (test_ceiling_requires_robust_assumptionsr      s   Q!Q,111Q!Q,111Q!Q,111Q!Q,111SV$aC0A555SV$aC0A555SV$aC0A555SV$aC0A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 y )
Nr   r\   rY   r]   r`   rX   c                  @    t        t        t              t        dd      S Nr   r`   )rE   r#   rO   rg   rh   ri   <lambda>ztest_frac.<locals>.<lambda>   s    uT!WaD9 rh   ra   rx   )rE   r#   rO   r   rI   r2   r.   rN   
ValueErrorr   r   rg   rh   ri   	test_fracr      s   a!R K1$5555a1Q3B';q!+<<<<a1Q3RC(K2,>>>>a!Q#{1b'9999c!fq!S)Q...c!fq!S)Q...c!fq!T*a///adQ4(A---
:9:bdQhAs+q000bdQhAs+q000a!&&j!1a.#555acAq![A%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 y )Nr   rY   r]   ra   )rE   r"   r2   rO   r3   rg   rh   ri   test_issue_14355r     s    s1vax!Q,111s1vax!Q,111Awqy!1a-333Awqy!1a-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 y )NrO   Trealr\   r   rX   )r   rE   r-   r2   r&   r   r   rO   s    ri   	test_atanr     sk    sAaQqS!1a(A---a4A;&a0!R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 y )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     sP   QA!###SVa#q(((SVa#q(((SQZ!Q'3q6111 #a!e*s1q5z)AaC0!Q747BBB SVAqD[!1b)Q...CAq!t$SQUQUQJ)>%??!CDaLPQQQQ SQZ]Q&'As3r999 SVa#r)))SQ[!1a(B... 	sT"ASVaZQ'B/1444 C!aL3q1Q3w</02Aq9Q>>> QQB,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 y )	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#ha(!Q4B8JJJJQd1gtC!H~5561=QGGGrh   c                      t        dd      } d| z  t        |  t        z        z  }t        |t        t              dk(  sJ |j                  t        t              dk(  sJ y )NrQ   Trw   rc   r   )r   r   rO   rE   r   )rQ   fs     ri   test_issue_3871r   :  sS    sT"A
1S!AYAAr?a771b>Qrh   c                  r   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 y )
NrS   rO   Tr   r\   rX   ra   r   z1/3)r   rE   r   r   r   Exp1rS   rO   s     ri   test_exponentialr   A  s6   sAsA!ac'Aq"%Q///!a1g+!1b)S1X555!a1qk/A%q"-QqS9991q51q5/A%q"-R888a!A#g\!1b)QZ777!ac'AqsQh&2.#ah-???rh   c                      t        d      } t        dt        | t        |       z   z  z   | z  | t              t        t              k(  sJ y )NrS   r\   )r   rE   rO   r2   r   r   )rS   s    ri   test_exponential2r   L  s<    sA!aSVn$q(!R0CF:::rh   c                      t        dt        z  t              } t        | t        t              }|j	                         t        u sJ y r   rB   rO   rD   r   r   r   ls     ri   	test_doitr   Q  s1    QAaBA668r>>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              j                  t              t        d	t        f      j                         j                  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              j                  t              t        d	t        f      j                         j                  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 y )
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0BBBBQ#a!e*$q(!R0KA4FFFF Q#a&Q-'B/;r13EEEE s1v+qB
c!f*aB	[R !R#a&[/E	BB#c!fnnS1Aq!9=BBDLLSQRTUWYZ^````	[c!fQhAq15q!c!f*~	FB#c!fnnS1Aq!9=BBDLLSQRTUWYZ^````3q6A:q.1$a,Ar0BBBB 	
QBQ!aAAr?k!R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 y Nr\   r   )rE   r6   rO   r   r	   r5   r4   r7   rg   rh   ri   !test_bessel_functions_at_infinityr   n  s9    A2&!+++AB3'1,,,A1R4(BqD000AA2b5)bSU222A2&!+++AB3'1,,,A1R4(RC///AA2b5)bS000A2&",,,AB3'B3...A1R4(A---AA2b5)Q...A2&!+++AB3'B3q5000A1R4(A---AA2b5)Q... A2&!+++rh   c                      t        dt        z  t              } t        | t        t              }|j	                  d      |k(  sJ y )NrX   Fdeepr   r   s     ri   
test_doit2r     s8    QAaBA66u6"""rh   c                      t        t        t        t              z  t        t              dz
  z  t        t               dk(  sJ y r   rm   rg   rh   ri   test_issue_2929r     s0    !c!f*s1vz*As3q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 y )Nr\   rX   r   r   )rE   r.   rO   r   r   r2   r   rg   rh   ri   test_issue_3792r     s    !c!f*ad"Aqvv.!aAFFm2CCCCSQZ!^$a+s1s1v:>>>SQZ!^$a+q3q6z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 y )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AFQ"aeeQVn444QA"Aq)SVAX555QA#Q*c!fa"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 y )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J  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 y )Nrx      r   g      r   )rE   rO   r   r   rg   rh   ri   test_issue_5164r     s    CB2s70b00000CB1R5#:---CA!###TAr"a'''TAq!QqTD\111rh   c                  d    ddt         z  z   dt         z  z  } t        | t         d      t        k(  sJ y )N      ?r   )rO   rE   r   )funcs    ri   test_issue_5383r     s0    cAg1-Dq!!!!rh   c                  F   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 y )Nr\   rX   r   r^   ih  )rO   r   r   r   r   rE   r   r~   s    ri   test_issue_14793r     s    1aZ3q6!A%AbD	!3IaLaD"Q$K()*A.Dq"1c)))rh   c                     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}t        |       t        |      k(  sJ t        t        | |            D ]0  \  }\  }}|\  }}}}|||z  z  }		 t        |	t        d|      |k(  sJ 2 y # t        $ r 	 J w xY w)	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     s   !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8 
;D#
1a1X	Qq)S000	

  	 t	s   EE)c                  D   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 y )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1aff%b111sA3qs8Q"a'''rh   c                  t    t        dt        z   dt        z  z  t        j                  z
  t        d      dk(  sJ y r   )rE   rP   r   r   rg   rh   ri   test_issue_5229r    s.    !a%1Q3!&&(!Q/1444rh   c                     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 ]3  \  }\  }}|\  }}} |t              }	 t        |t        ||      |k(  sJ 5 y # t        $ r 	 J w xY w)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    s   #s#a%BqD"b!Q.?@s% &E !bS"aRCQB31b2#q!R"6Gu:W%%%#Cw$78 
;D#1aqT	Qq)S000	

  	 t	s   C44D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 y )Nr\   r^   r   r_   )rE   rO   r   rg   rh   ri   test_issue_3934r    s_    !aQi-1Q3'A.!333!ac(Q1X%)1a0A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 y )NM   r^   r\   gfffffFY@)rE   rO   r
   r   rg   rh   ri   test_calculate_seriesr    sc     HRO#QHRO);%;<aDIIIE1q%x<(!R0A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 y )Nr   r\   d   i]    rE   rO   r   r   rg   rh   ri   test_issue_5955r    s    !R%!ae)$a,111!S&1q#v:&2.!333!T'A4K(!R0A555!T'AED=3r723a<AAArh   c                      t        t        dt        t              z        t        t	        t                    z  t        d      dk(  sJ y r   )rE   r   r2   rO   r/   rg   rh   ri   test_newissuer    s2    Qs1vXs3q6{*Aq1Q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 y r   )rE   rO   r   rD   r2   rg   rh   ri   test_extended_real_liner    s    RB5RB#7777AAJ"$a+uQCF
^b5H!Q/OOOOAq"r!tQ!3333R!A#q"%q2v!|Q)CCCCrh   c                      t        dd      } t        |       t        z  t        d|       k7  sJ t        t        | dz  dz
  z  | t              t        u sJ y )NrO   Trw   r\   rX   r   )r   rL   r   rE   r   s    ri   test_order_oor    sM    sT"A8B;%1+%%%QTAX2&",,,rh   c                  H    t        t        d        t        t        d        y )Nc                  T    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#h2(> rh   c                  V    t        t        t         t        z        t        t              S r   r  rg   rh   ri   r   z!test_issue_5436.<locals>.<lambda>   s    c1"Q$iB(? rh   rN   NotImplementedErrorrg   rh   ri   test_issue_5436r    s    
 >?
 ?@rh   c                  H    t        t        d        t        t        d        y )Nc                  0    t        t        t        dd      S )Nr   rZ   rD   rO   rg   rh   ri   r   z test_Limit_dir.<locals>.<lambda>$  s    eAq!3 rh   c                  0    t        t        t        dd      S )Nr   0rZ   r   rg   rh   ri   r   z test_Limit_dir.<locals>.<lambda>%  s    uQ1#6 rh   )rN   	TypeErrorr   rg   rh   ri   test_Limit_dirr$  #  s    
934
:6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 y )Nr\   r  rp   rg   rh   ri   test_polynomialr&  (  sf    !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 y Nr\   )rE   rP   rO   rQ   r   rg   rh   ri   test_rationalr)  -  s    11q5	Aq1uIaK/22Ar:q1uqsmKKK11q5	Aq1uIaK/22As;A!}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 y NrX   r   )rE   r   rO   rQ   rP   r   r   rg   rh   ri   test_issue_5740r,  2  s>    QC!HQJ&1-DQK???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      j                         | dz  k(  sJ y )NrS   TrT   r\   rX   )r   rO   rE   cancel)rS   r   s     ri   test_issue_6366r/  6  sg    sD4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 y )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L!A#)*Ar2a777AsubSz)))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 y )	Nr_   r^   r   rX   #   rs      r\   )rO   r
   rP   r   r   rE   r   r   s    ri   test_issue_6560r7  F  s    	
1a4Ahq!n$	$1QT6!8aff+<(=1WQY)')+AqD)35=a^)DFGQi(Q 
QAAr?a1fQh1a41AaCE9HQNJJJJrh   c                  X   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  j                  ||d
z         t        t        fd       t	        j                  ||      t
              d
k(  sJ t	        j                  ||      t
              j                         d	|d
z   z  | z   d
z
  | d
z   |d
z   z  z  k(  sJ y )NrS   r   Trw   r{   pm)negativerX   r\   c                  &    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  sO   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	
QUa!	a!eq1u--. . .rh   c                  |    t        d      } t        t        t        t        | z   z        t        t              dk(  sJ y )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 y )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%d1g555acAg1c*d1g555acAg1%$q'111acAg1c*rcDGm;;;acAg1%$q'111acAg1c*d1g555acAg1%b111acAg1c*adT"Xo===a!A#g1%58333a!A#g1c*rcAeAhJ.>>>>a!A#g1%aaj888a!A#g1c*qbqk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*b1U1Q46]?.BBBBa!A$q&(l#Q3/A2eAaDFm3CCCCa!A$q&(l#Q*aad1fo===a!A$q&(l#Q3/B351a=3HHHHa!Q2a4'''a!Q$A---acAaDFl#Q*d1Q46l:::acAaDFl#Q3/D1aL=@@@acAaDFl#Q*adT1Q4%'].BBBBacAaDFl#Q3/41a=@@@acAaDFl#Q*d1Q46l:::acAaDFl#Q3/2QqT!V3DDDDacAaDFl#Q*rcD1aL.@@@@acAaDFl#Q3/D1aL=@@@QqS1Wq!$",,,QqS1Wq!S)aRU222aRTAX1%!B...aRTAX1c*ad222acAg1%***acAg1c*qb000qbdQhA&1",,,qbdQhAs+q000acAg1%"!Q777acAg1c*ad1f~o===qbdQhA&B!A$q&>/999qbdQhAs+ad1f~===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 y )Nry   r\   rX   r   )r   rQ   r&   r2   r.   rE   r   r   )ry   r   s     ri   test_issue_6364rE    su    sA	1tAE{3q619$$tAE{3q619'<<=AAq>QA	AFF 23333rh   c                      t        t        dt        t               z        t        dz  z  t        d      t        dt        z        k(  sJ y r+  )rE   r   r8   rO   r   rg   rh   ri   test_issue_6682rG    s9    Qr1"vX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 y )Nry   r   )r   rE   rO   r   r   r@  s    ri   test_issue_4099rI    s    sA1ar$q'z)))!Aq!DG+++!Aq""T!W,,,1a47
***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 y )Ndxr\   r   rX   )r   rE   r&   r   rO   )rK  s    ri   test_issue_4503rL    sl    	B$q3q2v;'$q3q6z*::B>AFA$s1v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 y )Nrg   )r\   )r   r   r`   )rA   rO   rH   rE   r   )Ggs     ri   test_issue_6052rP    sP    BdQB'AAAAq$1$$$Ar?rc!!!rh   c                  D   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      j                         dk(  sJ y )Nr\   rs   r   rX   g       @)r&   rO   r4   rE   r   evalfr   s    ri   test_issue_7224rS    s|    771T!A#Y''D4a##D(!Q/14444a##D(!Q/5573>>>rh   c                  `    t        t        t        dd      dz
  z  t        t              dk(  sJ y )Nr\   g    eAr   )rE   rS   r
   r   rg   rh   ri   test_issue_8208rU    s*    Xa%)*Ar2a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 y )Nr\   r   rX   r^   r   r   )rE   rO   r
   r&   rg   rh   ri   test_issue_8229rW    sB    !Xa^#a'$q'A+A)FF2NRSSSSrh   c                  n    t        dd      \  } }t        t        d|| z  z
        |t              dk(  sJ y )Nzd tTrw   r\   rc   )r   rE   r9   r   )r   ts     ri   test_issue_8433rZ    s5    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 y )NrR   T)rU   nonnegativelamdarw   r   )r   rE   r   r   r   )rR   r]  s     ri   test_issue_8481r^    sK    sDd3A7T*ECK')A,62>!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 y )NrX   r^   r   )rE   r   rS   r   rg   rh   ri   test_issue_8462r`    sQ    !QqS!1b)R///!QqS!A1"I-q"5:::rh   c                      t        ddd      } t        d      }t        || z  |t               t        t        d| z        z  k(  sJ y )NrS   TrT   rO   rc   )r   rE   r   r   r   s     ri   test_issue_8634rb    sC    sD40AsAAq2#"T2']"2222rh   c                  z   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 y )NrO   Tr   rR   rw   r   r_   g      @r\   rX   )r   rE   rS   r   )rO   rR   s     ri   test_issue_8635_18176rd    s   sAsT"AAAE
"Ar*a///AAE
"Ar*b000AAG$a,222AAEAI&2."444sT"AAAE
"Ar*b000AAE
"Ar*rc111rh   c                  X    t        t        t              t        t              t        u sJ y 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       y )	NrS   T)rU   r{   rw   r\   r   c                  b    t        t              t              z  z   z  z  t              S r   )rE   r   r   r{   rS   s   ri   r   z!test_issue_9252.<locals>.<lambda>  s*    s1v3q6.BQT.I1b(Q rh   )r   rE   r   r   rN   r  ri  s   @@ri   test_issue_9252rj    s\    sD!AsT"A#a&Ac!fH%Q
2Ar:a???
 QRrh   c                  R    t        t        t              dz  t        dd      dk(  sJ y )Nr5  r   r]   )rE   r2   rO   rg   rh   ri   test_issue_9558rl    s#    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 y )Nr   rX   )rE   rR   r   r   r   rg   rh   ri   test_issue_10801rn    s7    Q!hqsA.112Ar:b@@@rh   c                  x    t        dd      \  } }t        t        | |z        t        |       z  | d      |k(  sJ y )Nzs xTr   r   )r   rE   r9   )r   rO   s     ri   test_issue_10976rp    s9    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 y Nr\   rX   )rE   r   rS   r   r&   r   r   rg   rh   ri   test_issue_9041rs    s?    1!CF(Qad1f!=>2F!KKKrh   c                  .   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 y )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QAq!..1#555!Q$AqD!$1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 y )N   r^   r\   )rE   r   rS   r   rg   rh   ri   test_issue_9471ry    s[    2Aa>1a4'2.!3332Aa
#QT)1R0B666rh   c                  j    t        t        t        dt        z              t        t              dk(  sJ y rr  )rE   r:   r   rO   r   rg   rh   ri   test_issue_11496r{  
  s%    c!A#h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 y )Nr   r\   )rG   rE   rO   rP   rS   rg   rh   ri   test_issue_11879r}    s?    EAaC!8AqD=!+Q23qQqSz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 y )NrR   r   r\   g333333?r^   
   )r   rE   r   r
   )rR   s    ri   test_limit_with_Floatr    sK    A1b!Q&&&S!VQ#x2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 y Nr^   r\   rX   )rE   rO   r   r
   rg   rh   ri   test_issue_10610r    sH    Aa1"q&k!1q51*,QT11b9Xa^KKKrh   c                  6   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 y )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VeAh%61d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    s   Q%("Aq#.#a&888Q%("Aq#.#a&1Q3r6/AAA
:CDQ%("Ar*b000Q%("Aq#.#a&888Q%("Aq#.2#555
:CDQ%("Ar*b000rh   c                  n    t        t        t        t              z   t        z  t        t              dk(  sJ y r(  )rE   rS   r.   r   rg   rh   ri   test_issue_6599r  '  s%    !c!f*aB'1,,,rh   c                  ,   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 y )Nr^   rX   r  rm   rg   rh   ri   test_issue_12555r  +  st    !Q$ArE/aec!fn5q2#>!CCC!Q$ArE/aec!fn5q"=CCCrh   c                     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  }
|
j                  ||      j                  d      t	        |
||      j                  d      k(  sJ y )	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  s3   gD)GAq!#$54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 NOqSTUXXY\\]M]	
_B 771b>  d +uRB/?/F/FD/F/QQQQrh   c                  L   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 y )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BqD1QVV8O,-./58@R8HI I Irh   c                  F   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  j                         t        t              t        u sJ t        t        t        t              z   dz  j                         t        t              t        u sJ t        t        t        t              z   dz  j                         t        t               t        u sJ t        t        t        t              z   dz  j                         t        t               t        u sJ y r   )rE   rO   r2   r.   r   expandrg   rh   ri   test_issue_12564r  A  s   A#a&3q6)1rc2b888A#a&3q6)1b1R7771s1v:/))+Q3r9991s1v:/))+Q3r9991s1v:/))+Q4:::1s1v:/))+Q4:::rh   c                  H    t        t        d        t        t        d        y )Nc                  b    t        t        t              t        t              j	                         S r   )rD   r   rO   r   r   rg   rh   ri   r   z"test_issue_14456.<locals>.<lambda>K  s    c!fa(=(B(B(D rh   c                  j    t        t        dz  t        dz   z  t        t              j                         S )NrX   r\   )rD   rO   r   r   rg   rh   ri   r   z"test_issue_14456.<locals>.<lambda>L  s$    adAaCj!S(A(F(F(H rh   r  rg   rh   ri   test_issue_14456r  J  s    
 DE
 H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 y )Nr^   r      rX   )rE   r1   r   rO   r   rg   rh   ri   test_issue_14411r  O  sF    3qtAv!|$$a2r"uqy)9:rc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 y rr  rp   rg   rh   ri   test_issue_13382r  S  s<    a!eaZ!^adQh/!34a<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 y )Nrc   r\   rE   rO   r   r   rg   rh   ri   test_issue_13403r  W  sA    B!c!a%j.1,q3q6z::;QCqHHHrh   c                     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 y r  r  rg   rh   ri   test_issue_13416r  [  sl    1a4%A	/QUQUQJ$6s1q5z1}$DDq!tCPQFTUI~VXY[]^bccccrh   c                     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 y )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SWXZ[W[\^W^abdeaefgagWgjklnjnWn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 y )Nry   rc   )r   rE   r9   rO   r   r&   r@  s    ri   test_issue_13750r  c  sN    sAQUQ#r)))T!Wq[!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 y rr  )	
isinstancerE   r2   rO   r   r   rD   r.   r   rg   rh   ri   test_issue_14276r  i  s    eCFCFNAr2E:::eCFCFNAr2E:::eCCF,a4e<<<!aAA''1a4!84a<AAArh   c                      t        dt        t              t        t              z  z  dt        z  z  t        t              dk(  sJ y r(  )rE   r   rO   r   rg   rh   ri   test_issue_14514r  p  s3    !SVSV^$!,a4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 y r   )rE   r2   rO   r.   r3   r0   r   rI   r   re   rf   r/   r   rg   rh   ri   test_issues_14525r  t  s   QSV#c!fSVm3Q;{1K]K]_`_i_i?jjjjQSV#c!fSVm3Q;{1K]K]_`_i_i?jjjjQ#a&!)#Q+{1;M;Mqzz/ZZZZQ#a&!)#Q+{1;M;Mquu/UUUUQ#a&!)#Q+{1;M;Mquu/UUUUQSVQY&2.+a>P>PRSRWRW2XXXXQSVQY&Q/B7;vqzz;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 y )NrX   r\   r   )rE   r&   rO   r.   r   rg   rh   ri   test_issue_14574r  ~  s7    aQAX&!a%0!R8A===rh   c                  p   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 y )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8A;2&(1a.888!a$...!a"%"a8888A;B3'2---rh   c                  &    t        t        d        y )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#hs2a4y.@!R(H rh   r  rg   rh   ri   test_issue_14377r    s    
 H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 y )NrX   ra   r^   r\   )rO   r>   rE   r   r   r6  s    ri   test_issue_15146r    s    	
1AqD1adQh<!Q$.A1BBB	1a4!8q!tgadQhl334678:;< 	=AAr?ad1f$$$rh   c                     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 y )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!f$$$	QA1Yq\)	)AqD	0Yq1u5E)TU,5VY[]^Y^5^_AAr?b   rh   c                  t    t        t        dz  t        dz   dz  z
  t        dz  z  t        t              dk(  sJ y )Ni  r\   i  i0rp   rg   rh   ri   test_issue_15282r    s3    !T'QUTM)QW4a<EEErh   c                      t        t         t        t        t              dz         z   t        z  t        t        d      dk(  sJ y )Nr\   r]   rZ   r   )rE   rO   r   r   r   rg   rh   ri   test_issue_15984r    s3    1"s3q6A:&)1bc:a???rh   c                  t    t        t        t        d      t        t              z  t        t              dk(  sJ y r(  )rE   r@   rO   r?   r   rg   rh   ri   test_issue_13571r    s)    Aq!E!H,a4999rh   c                      t        t        t        t                    t        d      t        t        t        j
                              k(  sJ y r(  )rE   r(   r;   rO   r   r   rg   rh   ri   test_issue_13575r    s.    d1g1%d155k)::::rh   c                     t        t        t              t        z  t        dd      j                         dk(  sJ t        t        dz  t        dd      j                         dk(  sJ t        dt        dz  z  t        dd      j                         t        u sJ t        dt        z  t        dd      j                         t
        u sJ y )Nr   r`   rZ   r\   rX   )rD   r2   rO   r   r   r   rg   rh   ri   test_issue_17325r    s    Q1aT*//1Q666Aq!&++-2221a4A4(--/25551a%**,333rh   c                  T    t        t              j                  t        d      dk(  sJ y )Nr   )r   rO   rE   rg   rh   ri   test_issue_10978r    s!    A;Q"a'''rh   c                  ^    t        t        t        dz        t        t              t        u sJ y 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  j                  t               } t        | t         dd      dk(  sJ y )Nr\   rY   rZ   )rO   r   rE   )r   s    ri   test_issue_15323r    s7    
ac'AAAAqc"a'''rh   c                      t        t        t        t                      t        t              z  t        d      dk(  sJ y r(  )rE   r   r   rO   rg   rh   ri   test_issue_12571r    s0    (CF7##CF*Aq1Q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 y r  r  rg   rh   ri   test_issue_14590r    sM    !Q$Q	A~%QQQ(?@!RHCPQF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 y )Na b)r   rE   rO   rP   ry   rz   s     ri   test_issue_14393r    sU    5>DAq!Q$A+1q!t,a3qaR!V}Q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 y )Nr\   rc   )rE   r   rS   r   r   rg   rh   ri   test_issue_14556r    sH    1q5!Aq1uI.1!1DDaLPSTVPW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 y )Nr\   rX   r^   r   rE   r   rO   r   rg   rh   ri   test_issue_14811r    sU    11a1q5)*ad3a1Q46QU:K6LMqRTUY[[[[rh   c                  \    t        t        t              t        d      t        d      k(  sJ y )Ni ʚ;)rE   r   rO   rg   rh   ri   test_issue_16222r    s!    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 y r(  r  rg   rh   ri   test_issue_16714r    sI    1q1u:Q
*a!a%j81<aDCPQF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 y )NrQ   Trw   r\   )rV   rU   )r   rE   r   rS   r   r?   r   s    ri   test_issue_16722r    s    d#A!a%#ArE)1b1QuQU|^CCCdD1A!a%#ArE)1b1QuQU|^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 y )Nr\   rX   r   r^   )rE   rS   r   r   rg   rh   ri   test_issue_17431r    s    1q5A+AEQ;)AE2B"BCa%$Q<(+,q5234b:=>? ? ?!a%!IaL(1q51q5/)AE:J*JKb  !a%9Q<'1yQ/?+?@!RHAMMMrh   c                      t        t        t        t                     t        t        t                    t        z  z
  t        d      t        k(  sJ y r(  )rE   r8   r   rO   r   rg   rh   ri   test_issue_17671r    s4    SVGs3q6{1},a3z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 y )Nza b c xTrw   r\   rX   )r   rE   r&   r   )ry   rz   r{   rO   s       ri   test_issue_17751r    sl    T2JAq!Q!a%T1q51*QT/AaC"7!";<<aDAaCRSG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 y rr  )rE   r   rS   r&   r   r   r   rg   rh   ri   test_issue_17792r    sD    1d1g%s1vax!m3Q;tAwtBx?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 y )Nr   r]   rc   rY   r\   )rE   r   r2   rO   rg   rh   ri   test_issue_18118r    sD    c!fq!S)R///c!fq!S)Q...rh   c                      t        t        t        t                    t        t        t                    z  t        dd      dk(  sJ y )Nr   rY   r\   )rE   r2   r&   rO   rg   rh   ri   test_issue_18306r     s0    T!Wd3q6l*Aq#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 y )Nr^   r  )rE   r   r   rO   r   rg   rh   ri   test_issue_18378r    s@    S1X\"3s1v3#77B?1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 y )Nr\   rX   r^   )rE   r   rO   r   r   rg   rh   ri   test_issue_18399r    sO    !ad1fQh,!A#&2.#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 y )NrX   r]   rZ   )rE   r3   rO   r&   r   r   rD   rg   rh   ri   test_issue_18442r    sN    Q!d2h-(!RS9U3q6APTUWPXMCZ\]_agj=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 y )Nr   r\   r]   )rE   r   r   rO   rg   rh   ri   test_issue_18452r    sJ    SVaA&!+++SVaAs+q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 y )Nr\   r]   rZ   rX   r  r   )rE   r2   rO   r   rD   r.   r3   rI   rg   rh   ri   test_issue_18473r    se   Q!A#2&%A1q"#*NNNNQ!A#2&%A1q"#*NNNNQ!A#2&%A1q"#*NNNN#a&1*!$a,111#a&2+1%q"-222#a&1*!$a,s1vzQqS6I1bVY0ZZZZ#a&1*!$a,Aq0AAAA#a&!)qs#a,Ar0BBBB#a&!)qs#Q+{1a/@@@@#a&1*!$a"-Q1CCCC#a&!)qs#Q,Ar0BBBB#a&!)qs#a"-Q1C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 y NrX   r^   r\   )rE   r   rO   r   rg   rh   ri   test_issue_18482r  &  sC    !C!H*c!A#hl+qs3Q;s1vEEErh   c            	         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 y )Nr\   r   rX   rY   rZ   r]   )rE   r2   rO   r&   r.   rg   rh   ri   test_issue_18508r  *  s    QQs1vX&1-a888QQs1vX&1#6$q'AAAQQs1vX&1#647(BBBrh   c                  &    t        t        d        y )Nc                  Z    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 rh   r  rg   rh   ri   test_issue_18521r  0  s    
 FGrh   c                      t        dd      \  } }t        t        |       | |      t        |      k(  sJ t        t        t        |             | |      t        t        |            k(  sJ y )Nr  Trw   )r   rE   r   r   r  s     ri   test_issue_18969r  4  sZ    54(DAq!a#x{222Xa[!1a(C,<<<<rh   c                      t        t        t        t              dt        z  z  z  t        t              t	        d      k(  sJ y r(  )rE   rS   r   r   r   rg   rh   ri   test_issue_18992r  :  s/    IaL1Q3'(!R0CF:::rh   c                      t        d      } t        t        |       t        | dz
        t        | dz         z  z  | d      dk(  sJ y )NrO   r\   rX   r   rc   )r   rE   r?   r   s    ri   test_issue_19067r  >  s@    sAq5Q<a!e45q!<BBBrh   c                  j    t        t        dt        z  dt         z  z  z  t        t              dk(  sJ y r  rp   rg   rh   ri   test_issue_19586r
  C  s,    QT!qb'\"Ar*a///rh   c                  ^    t        d      } t        dd      }t        | |z   | d      dk(  sJ y )NrS   r9  T)zeror   )r   rE   )rS   r9  s     ri   test_issue_13715r  G  s2    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 y r  )rE   rS   r2   r   rg   rh   ri   test_issue_15055r  M  s\    AQAaC(AE3q!a%y>+AABQBFKQPRSWX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 y )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GDAaQQwY)>$???!B$F2NPQSTUZ[^`ac^cZcegYggggrh   c                  v   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 y )Nr\   r^   rX   ra   )rE   r4   rO   r   r&   r   rg   rh   ri   test_issue_19154r  W  s    AqD!1gamQ&6#67R@Ad1gIbLQRNRRRAqD!1gamQ&6#67bSARQZPR]ST_TTTrh   c                  d   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 y )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  \  sm   &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!fd	ASU1WdB'1,,,Aa'r2a777rh   c                  `    t        t        d       dz  t        z  t        t              dk(  sJ y )Nr\   r   r   r  rg   rh   ri   test_issue_19739r   o  s'    1Q4%'Aq"%***rh   c                  z    t        dt         z  t        dt        dz   z  dz         z  t        t              dk(  sJ y )NrX   r   r\   )rE   rO   r&   r   rg   rh   ri   test_issue_19766r"  s  s5    aRa!a%j1n--q"5:::rh   c                     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 y )
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XaZBC'HHHHsAQqS!Q#uS1XaZBC'HHHHsD!AQqS1b![Q%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 y )NrX   rY   rZ   r]   r`   rc   r\   )rE   r3   rO   r2   r   rD   rI   r   rg   rh   ri   test_issue_7535r'    s   QCF#Q1-s1vc#a&k7I1bQRdX[1\\\\QCF#Q1#6%As3q6{@RTUWYZ[W[ad:eeeeQCF#Q1$75QCPQFASUVXZ[\X\bf;ggggSVQr!t$B(::::3#rc(
{B33333qRy>["b1111qbSz?k2#r22223#b'	?k2#r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 y )Nr\   r   rX   )rE   rO   r   rg   rh   ri   test_issue_20365r)    s5    1q5AaC.1$a'A.1"Q$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 y )Nr\   rX   r   )rE   rO   r,   r   rg   rh   ri   test_issue_21031r+    sL    1q5AaC.A!Gq!A#w#77a@!QG1Q3NNNrh   c                      t        t        t        t        z        dt        z  dz
  z  t        d      t        dz  k(  sJ y )Nr^   r   r   )rE   r2   r   rO   rg   rh   ri   test_issue_21038r-    s2    RTAaC"H%q!,1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 y )Nr\   r   rY   r]   r`   )r   rO   r2   rE   r   s    ri   test_issue_20578r/    sc    q6C!HDa#!###a#!###a$1$$$rh   c                     t        t              } | j                  t        t              t        k(  sJ | j                  t        t               t         k(  sJ t        t        t                     } | j                  t        t              t        t               k(  sJ | j                  t        t               t        t              k(  sJ t        t        t                    } | j                  t        t              t        t              k(  sJ | j                  t        t               t        t               k(  sJ | j                  t        t              t        t              k(  sJ t        t        t        dt        z                    } | j                  t        t              t        t        t                     k(  sJ | j                  t        t               t        t        t                    k(  sJ | j                  t        t              t        t        t                     k(  sJ | j                  t        t               t        t        t                    k(  sJ y )N)logxr\   )r   rO   nseriesrP   r1  s    ri   test_issue_21227r3    s   AA99QQ91$$$99QaR9 QB&&&SVGA99QQ93r7***99QaR9 CF***CFA99QQ93q6)))99QaR9 CG+++99QQ93q6)))CAaCMA99QQ93sA2w<///99QaR9 CAK///99QQ93sA2w<///99QaR9 CAK///rh   c                      t         dz
  t        dt         dz
  z        z  }  | j                  t         d      dk(  sJ  | j                         j                  t         d      dk(  sJ y r   )rO   r.   rE   r  )r   s    ri   test_issue_21415r5    sY    Q3AqsG
C399Qq>Q3::<a"a'''rh   c                      t        t        t        dz         t        t              z  t        t              t        k(  sJ y r(  )rE   r   rS   r   r   rg   rh   ri   test_issue_21530r7    s*    a!eT!W$a,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 y )Nr_   r\   rX   )r&   rE   rO   r  s    ri   test_issue_21550r9    sG    	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 y )Nr\      l   qjl   S[	)rE   rO   r   r   )outs    ri   test_issue_21661r=    sU    
QUs1vz*Q.!3Q
;C!M"2%SW(<<<<<rh   c                      t        t        t        t              t        t        z  z  j	                  t        d      t        d      t        d      dz  k(  sJ y )Nr   r   r\   i 	 )rE   r6   rQ   rO   r=  r   rg   rh   ri   test_issue_21701r?    s=    '!Q-1$**1a0!Q71Q4;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 y )Nry   Tr   r\   rX   )r   rC   r   rO   rE   r   r   r   )ry   r	   s     ri   test_issue_21721rA    sN    sA!Ra!eaZ()1-A1771b>QVV###rh   c                     dt        dt        z  t        z  t        z        z
  dt        dt        z  t        z  t        z  dz        z
  z  } | j	                  t        d      dk(  sJ t        |       j	                  t        d      dk(  sJ y )Nr\   ra   r_   r   )r   r	   r   rQ   rE   r   )terms    ri   test_issue_21756rD    sq    BqDGAISAb1%5!56D::aq   d8>>!Q1$$$rh   c                      t        d      } t        | dz   t        dz  z   dt        dz  z
  z        j                  | dd      t        k(  sJ y )Nry   rX   r\   r]   )r   r&   rO   rE   r	   r@  s    ri   test_issue_21785rF    sH    sA!Q$AAqD)*00As;q@@@rh   c                  \    t        dt        z  dt         z  z  t        t              dk(  sJ y )Nrc   rX   r   rp   rg   rh   ri   test_issue_22181rH    s(    "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J  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 y )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$tBxAaC(*+	+B	.B	b!c$q'#ac(*QtBxZ\!^;<<$q'#ac(*QtBxZ\!^;<<= 
>>@
AB Qb	"R///Qb	"R///QS!T"Xb[^333QS!Q&&& q1u:QBF#Dt4(Eq"ua!4<"<<<<< AaC1%%s3qs8a<'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
  j                         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 y )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!A#AaC1Q3<1!*4<<>>2F!QQRU)SSS!A#1q!teq1uqj01QUQJ>?BG1aRSe9TTTrh   c                      t        t        ddt        z  z         t        t              z  t        t              t        d      k(  sJ y rr  )rE   r   rO   r&   r   rg   rh   ri   test_sympyissue_22986rS    s2    q1Q3wQ'B/47:::rh   c                      dt         z  dt          z  z
  dt         z  dt          z  z   z  } t        | t         t               dk(  sJ y )NrX   rc   )rO   rE   r   r1  s    ri   test_issue_23231rU    sA    	
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 y )Nr\   rX   rc   r   )rC   rO   r   r   rg   rh   ri   test_issue_23596rW    s6    q1uadlC1I-1bz:b@@@rh   c                     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 y )NrX   r^   r   rY   r]   )r&   r	   rO   rE   )expr1rN  s     ri   test_issue_23752rZ    s    !AqD1q!E!AqD1Q3"#E1c"tAwhqj0001c"tAwhqj0001c"d1gai///1c"tAwhqj000rh   c                     t        t        t        dz  t        t              z              j                  t              } | j                  t        t              dk(  sJ | j                         j                  t        t              dk(  sJ | j                  t              j                  t        t              dk(  sJ | j                  t              j                         j                  t        t              dk(  sJ y r   )r   r3   r   r    rO   r   rE   r   rG   r   r2   )r  s    ri   test_issue_24276r\    s    	SAd1g		$	$Q	'B88Ar?a;;=q"%***::c?  B'1,,,::c?##%++Ar2a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     sS    ) 0 ! < < " / X X @ @ G G a a a F F L L :Z Z Z Z O O ] ] P P 1 ; . : 2 9  * $ .    
3t,D8N2,
A;S
$6/D124W&67 4A3>H@;
1.,2 # #9:>0
2"
*0(5*6
	6B7D - -A
8
A
M
@**K
 . ..
->`4@+$"?8T,
D;
3	2/S-A
-
L<7
-B7L1-D
	RI
;J
BBIdo0B:[>.J%!F@:;4(* ( (
7SG
X\;TDNBU
P/
<E(
l1
D FCH=;C
0#YhU
8&+;	)37O5%02(2<
=
G$%A
0(,U;"
A18rh   