
    \h                    j   S SK JrJr  S SKJr  S SKJr  S SKJrJ	r	J
r
  S SKJr  S SKJr  S SKJrJr  S SKJrJrJrJrJrJr  S S	KJrJrJrJr  S S
KJr  S SK J!r!J"r"J#r#J$r$  S SK%J&r&  S SK'J(r(  S SK)J*r*J+r+J,r,J-r-J.r.  S SK/J0r0J1r1J2r2  S SK3J4r4J5r5J6r6J7r7  S SK8J9r9  S SK:J;r;J<r<J=r=  S SK>J?r?  S SK@JArAJBrBJCrCJDrDJErEJFrFJGrGJHrH  S SKIJJrJJKrKJLrLJMrM  S SKNJOrO  S SKPJQrQJRrR  S SKSJTrT  S SKUJVrVJWrW  S SKXJYrYJZrZ  S SK[J\r\  S SK]J^r^  S SK_J`r`JaraJbrb  S SKJcrc  S SKdJereJfrfJgrg  S S KhJiriJjrjJkrk  S S!K_JlrlJmrmJnrnJoroJprpJqrqJrrrJsrsJtrtJuru  S S"KvJwrw  S S#KxJyry  S S$KzJ{r{J|r|J}r}J~r~  S S%KJr  S S&KJrJrJrJrJrJrJrJrJrJrJrJrJrJrJr  SS' jrS( rS) rS* rS+ rS, rS- rS. rS/ rS0 rS1 rS2 rS3 rS4 rS5 rS6 rS7 rS8 rS9 rS: rS; rS< rS= rS> rS? rS@ r\|SA 5       rSB rSC rSD rSE r\{SF 5       rSG rSH rSI rSJ rSK rSL rSM rSN rSO rSP rSQ rSR rSS r\}" ST5      SU 5       rSV rSW rSX r\|SY 5       rSZ r\{S[ 5       r\{S\ 5       r\|S] 5       rS^ rS_ rS` r\{Sa 5       rSb rSc rSd rSe rSf rSg rSh rSi rSj rSk rSl rSm rSn rSo rSp rSq rSr rSs rSt rSu rSv rSw rSx rSy r\|Sz 5       r\{S{ 5       rS| r\|S} 5       rS~ rS rS rS rS rS rS rS rS rS rS rS rS rS r\{S 5       rS rS rS r\{S 5       rS rS rS r\{S 5       rS rS Gr S GrS GrS GrS GrS GrS GrS GrS Gr\{S 5       Gr	S Gr
S GrS GrS GrS GrS GrS GrS GrS GrS GrS GrS GrS GrS GrS GrS GrS GrS GrS GrS GrS GrS GrS Gr S Gr!S Gr"S Gr#S Gr$S Gr%S Gr&S Gr'S Gr(g)    )Qask)Add)Tuple)
DerivativeFunctiondiff)Mod)Mul)GoldenRatioTribonacciConstant)EFloatIRationaloopi)EqGtLtNe)S)DummySymbolWildsymbols)sympify)binomial)Absarg	conjugateimre)LambertWexplog)atanhcoshsinhtanh)floor)cbrtrootsqrt)	Piecewise)acosasinatanatan2cossecsintan)erferfcerfcinverfinv)Integral)AndOr)Matrix)MatrixSymbolSparseMatrix)Polygroebner)sstr)denom)nsolvesolvesolve_linear)nfloat)solve_linear_systemsolve_linear_system_LUsolve_undetermined_coeffs)_filtered_gens_solve_lambert_lambert)
_invertunradchecksolposify_ispow	det_quickdet_perm	det_minor_simple_densdenoms)cm)CRootOf)slowXFAILSKIPraises)verify_numerically)abcdekhpxyztqmRc                 J    [        [        U 5      R                  " U40 UD6SS9$ )NT)	full_prec)rD   r   evalf)re   noptionss      X/var/www/auris/envauris/lib/python3.13/site-packages/sympy/solvers/tests/test_solvers.pyNSrv   /   s#    
  .g.$??    c                     [        [        S5      u  pU " [        5      U" [        5      p2[        U[        -   S-
  X#-
  S-
  /U[        U5      X#S-   [        U* S-
  0:X  d   e[        X#[        -  -   S-
  X#/SS9USUS0/:X  d   e[        X#S-  [        -  -   [        -
  X#/SS9U[        US0/:X  d   e[        U " S5      S-
  [        S-   /SS9[        S	U " S5      S0/:X  d   eg )
Nfg         Tdictr      )mapr   ri   rG   rj   )fgfxgxs       ru   test_swap_backr   3   s    xDAqT1Q4"q&1*bgk*B26	!VQa ! ! !dQt4"aQ8HHHH!eAg!B8$7RBN;KKKK!A$(AE".Ar1Q43C2DDDDrw   c                 H     [        X5        g! [        [        4 a     gf = f)NTF)rG   	TypeErrorNotImplementedError)eqsymbols     ru   guess_solve_strategyr   =   s*    b*+ s    !!c            	      b   [        [        S5      [        5      (       d   e[        [        [        5      (       d   e[        [        [        -   [        5      (       d   e[        S[        -  [        5      (       d   e[        [        [	        S5      -   [        5      (       d   e[        [        S[        SS5      -  -   [        5      (       d   e[        [        S-  S-   [        5      (       d   e[        [        S-  S-
  [        5      (       d   e[        [        [        -  [        -   [        5      (       d   e[        [        [        [        5      -  [        -   [        5      (       d   e[        [        [        S-  -
  [        S-  [	        S[        S-  -
  5      -  -  [        5      (       d   eg )N   rz   r   r|   )r   r   ri   ra   r.   r   rj   r%    rw   ru   test_guess_polyr   E   sF   1q****A''''Q++++1a))))T!Wa0000QA%6!6::::A1....A1....1q!----3q6Aq1111	
QTAqDa!Q$h'(!- - - -rw   c                     [        [        [        5      S-   [        5      (       d   e[        [        [        SS5      -  [        [        5      -   S-   [        5      (       d   e[        S[        -  S[        [        5      -
  -  [        5      (       d   e[        [        S[        -  -   [        -   [        5      (       d   eg )Nr   r|   r   )r   r.   ri   r   rj   r   rw   ru   test_guess_poly_cvr   U   s    a1a1111	8Aq>DG#a'- - - -1a$q'k!2A7777  QqS1a1111rw   c            	         [        [        S-   [        S-  S-   -  [        5      (       d   e[        [        [        S-  -
  [        S-  [        S[        S-  -
  5      -  -  [        5      (       d   e[        [        [        5      S-   [        [	        SS5      -  [        [        5      -   S-   -  [        5      (       d   eg )Nr   rz   r|   )r   ri   rj   r.   r   r   rw   ru   test_guess_rational_cvr   `   s    !a%!Q$(!3Q7777	
QTAqDa!Q$h'(!- - - -  $q'A+8Aq>0ADG0Ka0O!PRSUUUUrw   c                     [        [        [        5      S-   [        5      (       d   e[        S[        [        5      -  [        -
  [        5      (       d   e[        [        [        5      [        [        * 5      -   [        -
  [        5      (       d   e[        S[        -  S-
  [        5      (       d   e[        S[        -  * S-   [        5      (       d   e[        [
        [        [        -  -  [        -
  [        5      (       d   eg )Nr   rz   r|   
   )r   r%   ri   r4   rj   ra   rb   r   rw   ru   test_guess_transcendentalr   k   s    Q!Q00003q6Aq2222AaR1a" " " "1r	1----A
A....!Q$
A....rw   c            
      :  ^^ [         S[        S0m[         S[        -  -   S-
  S[         -  S[        -  -   S-
  4m[        UU4S j[        [        [
        [        4 5       5      (       d   e[        [        T6 [         [        5      T:X  d   e[        [        [         S-  S-
  5      5      [        S5      [        S5      * 1:X  d   e[        [         [        -   S	-
  [         [        -
  S-
  /5      [         S[        S
0:X  d   e[        [         [        [         5      -
  [         SS9[        [         5      /:X  d   e[        S5      [        S[         5      s=:X  a  / :X  d   e   e[        SS/5      / :X  d   e[        [        S5      /[         /5      / :X  d   e[        [        S 5        [        [        S 5        [        [         [         [        [        /S9S/:X  d   e[        [        S 5        [        [        S 5        [        [         [         [        [        /S9S/:X  d   e[        [        S	-
  [        15      S	/:X  d   e[        [        S	-
  [         [        15      [        S	0/:X  d   e[        [         [        -   S	-
  [         [        /5      S	[        -
  [        4/:X  d   e[        [         [        -   S	-
  [         [        /SS9[         S	[        -
  0/:X  d   e[        [         [        -   S	-
  5      [         S	[        -
  0/:X  d   e[        [        [        [         -  -   S-
  [        [        /5      [        S[        S0:X  d   e[        [        [        -   [         -  [        -   [         -
  [        [        /5      [        [         * [        [         0:X  d   e[        [         S-  -  [        [         -  -   [         -   [         ["        -
  S-  S[$        -  [&        -  -   S-  [$        -  -
  n [        U ["        [$        [&        /[        [        [         /S9nU["        [        * S[        -  -  [&        S[        -  [         -  [        S-  -
  S[        -  -  [$        SS[        -  -  0:X  d   e[        U ["        [$        [&        /SS9U/:X  d   e[        U ["        [$        [&        /SS9["        [$        [&        /[        * S[        -  -  SS[        -  -  S[        -  [         -  [        S-  -
  S[        -  -  414:X  d   e[        U ["        [$        [&        /[        [        [         /SS9["        [        * S[        -  -  [&        S[        -  [         -  [        S-  -
  S[        -  -  [$        SS[        -  -  0:X  d   e[        [        -   [         -  [        S-  -
  S-   [        [        4n[        U6 [        S-  [        [         -  -
  S-
  [         -  [        4/:X  d   e[        [        [         -  [        S-  [         S-   -  -   S	[         -  -
  S[         -  -
  [        [        SS9[        [        S-  * [         -  S	[         S	-  -  -   S[         S-  -  -   S[         -  -   S-   [         S-  [         S-   -  -  0/:X  d   e[        SS[         -  [        -
  [        [        5      -   -  5      / :X  d   e[        [(        S 5        [        [        [        [         5      [         -   /5      [         [+        S5      * [        S0/:X  d   e[        [        [         5      [         -
  [        [        5      [        -
  45      [         [+        S
5      * [        [+        S
5      * 0/:X  d   e[        [        [        [         5      [         -   /[         [        5      [+        S5      * S4/:X  d   e[        [         S-  [,        -
  [,        5      [         S-  /:X  d   e[        / [         /5      / :X  d   e[        [         S-  S-
  [        S-
  4[         [        5      SS/:X  d   e[        [         S-  S-
  [        S-
  4[        [         5      SS/:X  d   e[        [         S-  S-
  [.        -   [        S-
  [.        -
  4[        [.        [        [         SS9[        [.        [        [         /[        [.        [.        S-   [        S[.        -
  5      * 4[        [.        [.        S-   [        S[.        -
  5      414:X  d   e[        [         [        -   S-  S-
  [         [        -   S-
  /5      [         [        * S-   0/:X  d   e[        [         [        -   S-
  S[         -  S[        -  -   S-
  45      [         [        * S-   0:X  d   e[        [1        [         S-  S5      5      S/:X  d   e[        S[1        [         S5      /[         /SS9[         S0/:X  d   e[        [1        [         [         5      [1        [         S5      [1        [         [         S-   5      /[         /SS9/ :X  d   e[        [1        [         [         S-   5      [         S:  /[         5      (       a   e[        [1        [         S5      [         S-   S:  /5      [1        [         S5      :X  d   e[        [1        [         [         5      [1        [         [         S-   5      /[         5      / :X  d   e[        S[         5      / :X  d   e[        [         S-
  S/[         /SS9/ [        5       4:X  d   e[        [        * [         [        -   S-
  -  S-  [        S-
  [         -  [        -  S[        -  -   /SSS9[         [        /S[        -
  [        4[         S414:X  d   e[	        [        [        S-
  [         [        S	5      [.        -  -
  45      R3                  5       5      [         [        /:X  d   e[        [         S-
  [         /[        [         4SS9[        [         /[        5       4:X  d   e[        [         S-
  [         /[        [         1SS9[         [        /[        5       4:X  d   eg ) Nr   r{   rz         c              3   `   >#    U  H#  n[        U" T5      [        [        5      T:H  v   M%     g 7fNrG   ri   rj   ).0	containeranseqss     ru   	<genexpr>"test_solve_args.<locals>.<genexpr>{   s+      '% 7@uYs^Q*c1%s   +.r   r|   Timplicit*   c                  V    [        [        S-
  [        S-   4[        [        [        5      $ Nr|   rz   r   r   rw   ru   <lambda>!test_solve_args.<locals>.<lambda>       ua!eQU^Q1=rw   c                  4    [        [        [        [        5      $ r   rG   ri   r   rw   ru   r   r          uQ1~rw   excluder   c                  V    [        [        S-
  [        S-   4[        [        [        5      $ r   r   r   rw   ru   r   r      r   rw   c                  4    [        [        [        [        5      $ r   r   r   rw   ru   r   r      r   rw   r}   setF)r   simplify      c                      [        [        [        5      [        [        5      -   [        [        5      -   [        [        5      -   5      $ r   )rG   r%   ri   r6   rj   r   rw   ru   r   r      s'    U3q6CF?SV+Cc!f+L%Mrw   )r   rz   )rz   rz   )rz   r           )r   check)ri   rj   alltuplelistr   	frozensetrG   r   r   r%   r.   r_   
ValueErrorra   rb   rc   rg   rh   rf   r   r$   r   rk   r   keys)r   solargsr   r   s      @@ru   test_solve_argsr   w   s 
   b!Q-Cqs7Q;1qs
R
(C '	c9%' ' ' ' 'a#s***uQTAXAaD1Q4%=000!a%!)QUQY'(Q1bM999SVQ.3q6(:::9b!******!Q=B$q'A32%%%
:=>
:-.A1v&1#---
:=>
:-.A1v&1#--- Q###QAQF8+++ QQF#Q
|333QQF.Aq1u:,>>>QAE
|+++QqS1q!f%!Q1555!a%Q"QF+A2q!}<<<	
1a4!A#	a!eaZ!A#a%/214	4B
Q1I1ay
1C1qb!A#hAaCEAqDL1Q3#7AqsGDDDDaAYT*se333aAYD)
Qqb!A#h1Q3!A#a%!Q$,1)=>?@A A A aAYAq	EB	
QB!Ha!A#a%!Q$,1-q!QqS':; ; ; E19q!taA%D$<adQqSj1na/34444 1q!tQU|#ac)AaC/ADA
q!teAg!Q$AqD(1Q3.3adAElC	DEF F F AaC!Gc!f$%&",,,
MO !SVaZ!q8A;,1&=%>>>>	Q!SVaZ "'(8B<-Xb\M&J%KL L L !SVaZ!Q'hqk\1,=+>>>>ABAqD6)))aS>R!Q$(AE"Aq)gv->>>>!Q$(AE"Aq)gv->>>>!Q$(Q,A	*Aq!QD 
!Ql	
Aq1utAE{l#	
Aq1ud1q5k"$ %% % % 1q51*q.!a%!),-1qb1f+>>>!a%!)QqS1Q3Y]+,QBF;;;AqD#C5((($1a!A3T21vh>>>"Q(Bq!HbAaCj1A3TBbHHHbAaCj!a%(!,,,,"Q(AaCE"#r!Qx///"Q(Bq!A#J'+r111q>R!a%!$/B;>>>1"a!eai."QUAIaK!A#$56$%q6QUAJA+?"@A A A q1ua$q'!)m,-2245!Q???!a%aV.Aq635/AAA!a%aV.Aq635/AAArw   c            
         [        S[        -  S-
  [        5      [        SS5      /:X  d   e[        [        S[        -  S5      [        5      [        SS5      /:X  d   e[	        [        [        S-  S-
  [        5      5      [
        R                  * [
        R                  1:X  d   e[	        [        [        [        S-  S5      [        5      5      [
        R                  * [
        R                  1:X  d   e[        [        [        S-  -
  [        5      [        S-  /:X  d   e[        [        S5      n [        [        [        S-  -
  [        5      X * S-  [        S5      [        -  U -  S-  -
  U * S-  [        S5      [        -  U -  S-  -   /:X  d   e[        S5      u  pp4pV[        U[        -  U[        -  -   U-
  U[        -  U[        -  -   U-
  /[        [        5      [        XE-  X&-  -
  X-  X#-  -
  -  [        X-  X5-  -
  X-  X#-  -
  -  0:X  d   e[        [
        R                  [        [
        R                  0n[        [        [        -
  [        [        -   4[        [        5      U:X  d   e[        [        [        -
  [        [        -   4[        [        45      U:X  d   e[        [        [        -
  [        [        -   4[        [        /5      U:X  d   e[	        [        [        S-  S[        -  -
  S-
  [        5      5      SS[
        R                  -  -   [        S5      SS[
        R                  -  -
  1:X  d   e[	        [        [        S-  S-
  S-  [        -
  [        5      5      [        S[        [        5      -   5      [        S[        [        5      -   5      * [        S[        [        5      -
  5      [        S[        [        5      -
  5      * 1:X  d   eg )Nr|   rz   r   a11,a12,a21,a22,b1,b2r   r   r   )rG   ri   r   r   r   r   Onerj   r-   r.   r   r   ZeroHalfra   )rxa11a12a21a22b1b2solutions           ru   test_solve_polynomial1r      s'   1q!!Q 0000AaCQHQN#3333uQTAXq!"vquuo555uR1a[!$%155&!%%888QT1!Q$'''	aBQT1
CEDGAIbLN"RCET!WQYr\!^$;"= = = =!()@!ACc#a%#a%-"$c!ec!emb&891a@#'CG"34#'CG"34	

 
 
 1661aff%H!a%QA'8333!a%Q!Q(H444!a%Q!Q(H444uQTBqD[1_a()
QY	!
QY.    uadQh]Q&*+	a$q'k	T!d1g+..!d1g+a$q'k!2 2	44 4 4rw   c                  0    [        S[        5      / :X  d   eg )Nr   r   r   rw   ru   test_solve_polynomial2r     s    A;"rw   c                     [        [        [        5      S-
  [        5      S/:X  d   e[        [        [        5      S-
  [        5      S/:X  d   e[        [        [        SS5      -  S-
  [        5      S/:X  d   e[        [        [        SS5      -  S-
  [        5      S/:X  d   e[        [        [        5      [        [        SS5      -  -   [        [        SS5      -  -   [        5      S/:X  d   eg)	z
Test for solving on equations that can be converted to a polynomial equation
using the change of variable y -> x**Rational(p, q)
r   rz   r   r   r|      r   N)rG   r.   ri   r   r   rw   ru   test_solve_polynomial_cv_1ar     s    
 $q'A+q!aS((($q'A+q!aS(((!Xa^#a'+t333!Xa^#a'+t333a1hq!n,,q(1a./@@!DKKKrw   c            
      X   [        [        S[        -  S[        [	        [        5      -  -
  -  [        5      5      [
        R                  S[        S-  -  1:X  d   e[        [        [        [        [        S5      S-
  -  [        5      5      [
        R                  [        S5      1:X  d   eg )Nr   r   rz   r|   r   )r   rG   ri   ra   r.   r   r   r-   r   rw   ru   test_solve_polynomial_cv_1br     sw    uQqS!aQi-(!,-!&&!AqD&1AAAAuQQ
Q'+,2???rw   c                  ~   [        [        S[        -  -   S-
  [        5      [        R                  [        [        S5      -  S-  -   [        R                  [        [        S5      -  S-  -
  /[        R                  [        [        S5      -  S-  -
  [        R                  [        [        S5      -  S-  -   /4;   d   eg)z}
Test for solving on equations that can be converted to a polynomial equation
multiplying both sides of the equation by x**m
r   r|   rz   N)rG   ri   r   r   r   r.   r   rw   ru   test_solve_polynomial_cv_2r     s    
 QqS1a 66Ad1gIaK!DG)A+!5	666Ad1gIaK!DG)A+!5	6	88 8 8rw   c                     [         S-  S[         S-  -  -
  S[         S-  -  -
  S[         -  -   S-   n [        U SS	9nU HH  nU R                  [         UR                  5       5      R                  5       n[	        US
5      (       a  MH   e   [         S-  S[         S-  -  -
  S[         S-  -  -
  S[         -  -   S-   n [        U 5      nU H  nUR
                  [        :X  a  M   e   [        [        [         S-  S[         S-  -  -   S-   5      S
   SS9[        [         S-  S[         S-  -  -   S-   S
5      R                  5       :X  d   eg )Nr{   n   r|   7   rz   i	  i  Fr   r   r   r         exponent)ri   rG   subsrs   tnfuncr[   rI   r   srress       ru   test_quintics_1r   "  s0   	1s1a4x"QT'!DF*S0AauAffQ  "#qzzz  	
1r!Q$w1a4"Q$&+AaAvv     %1qAv)*1->1qAv!1%'')* * *rw   c                  (   [         S-  S[         -  -   S-   n [        U SS9nU HH  nU R                  [         UR                  5       5      R                  5       n[	        US5      (       a  MH   e   [         S-  S[         S-  -  -
  S[         S-  -  -
  S	[         -  -   S
-   n [        U 5      nU H  nUR
                  [        :X  a  M   e   [        [         S-  S[         S-  -  -
  S[         S-  -  -
  [         -   S-
  5      [        [         S-  S[         S-  -  -
  S[         S-  -  -
  [         -   S-
  S5      [        [         S-  S[         S-  -  -
  S[         S-  -  -
  [         -   S-
  S5      [        [         S-  S[         S-  -  -
  S[         S-  -  -
  [         -   S-
  S5      [        [         S-  S[         S-  -  -
  S[         S-  -  -
  [         -   S-
  S5      [        [         S-  S[         S-  -  -
  S[         S-  -  -
  [         -   S-
  S5      /:X  d   eg )Nr{   r   r   Fr   r   r|   rz   r   r   r   r   r   )ri   rG   r   rs   r   r   r[   r   s       ru   test_quintics_2r   9  s   	1r!tbAauAffQ  "#qzzz  	
1r!Q$w1a4"Q$&+AaAvv     A!Q$1a4'!+a/01qAv!Q$&*Q.21qAv!Q$&*Q.21qAv!Q$&*Q.21qAv!Q$&*Q.21qAv!Q$&*Q.254 4 4 4rw   c                      [         S-  [         S-  -   S[        SS5      -  -
  n [        U 5      [        U * 5      s=:X  a  / :X  d   e   eg )Nr{   r|   rz   r   )ri   r   rG   rj   s    ru   test_quintics_3r   L  sF    	1q!ta!Q''A8uaRy&B&&&&&rw   c                      [        [        S-  S[        -  -
  S-   5      n [        S U  5       5      (       a  [        U 5      S:X  d   eg )Nr   rz   c              3   B   #    U  H  n[        U[        5      v   M     g 7fr   )
isinstancer[   r   is     ru   r   &test_highorder_poly.<locals>.<genexpr>T  s     3s!z!W%%s   )rG   ri   r   lenr   s    ru   test_highorder_polyr   Q  s?    
1qs
Q
C3s333CAEErw   c            	          [        [        [        S-  -
  [        S-  [        S[        S-  -
  5      -  -  [        5      [        S-  /:X  d   eg)z!Test solve for rational functionsr|   rz   r   N)rG   ri   rj   r.   r   rw   ru   test_solve_rationalr   W  s?    A1H!Q$QAX!68!<AFFFrw   c                  d    [        [        [        5      S-
  [        -   5      S[        -   /:X  d   eg)z)Test solve for simple conjugate functionsr|   N)rG   r!   ri   r   r   rw   ru   test_solve_conjugater   \  s(    1q1$%!a%000rw   c            	         [        [        S-  [        S-  -
  [        [        SS9[        [        * 0[        [        0/:X  d   e[        [        S-  [        S-  [        [        5      -  -
  [        [        SS9[        [        * [	        [        [        5      5      -  0[        [        [	        [        [        5      5      -  0/:X  d   eg )Nrz   Tr}   )rG   ri   rj   r%   r.   r   rw   ru   test_solve_nonlinearr  a  s    A1a.Ar7QF2CCCCA1SV#Q51qbc!fo:N;<aSVn:M:O O O Orw   c            	          [        S5      n [        [        U S-  SU S-  S-
  -  -
  SSU S-  S-
  -  -
  5      U 5      / :X  d   e[        [        U SU -  -   SU -  5      U 5      / :X  d   eg )Nri   rz   r   r   )r   rG   r   ri   s    ru   test_issue_8666r  g  su    AAqD1adQh<'Q1q\)9:A>"DDDA!GQqS!1%+++rw   c                      [        SS[        S-  -  S[        -  -   -  S-
  [        5      [        SS5      [        R                  /:X  d   eg )Nr   rz      r   )rG   ri   r   r   r   r   rw   ru   test_issue_7228r  m  s@    Q1X!^$q(!,"a!&&0IIIIrw   c                      [        [        [        S-
  5      [        [        S-   5      -   [        5      [        S5      /:X  d   eg )Nr|   r   )rG   r&   ri   r.   r   rw   ru   test_issue_7190r	  q  s2    QqSC!H$a(T"XJ666rw   c                      [        S5      n U [        U S-  S-   5      -  nUR                  U 5      n[        X 5      / :X  d   eg )Nri   rz   r   )r   r.   r	   rG   )ri   r   f_diffs      ru   test_issue_21004r  u  s@    A	$q!tAv,AVVAYFr!!!rw   c                      [        S5      n [        [        [        U [        U S5      U S:  -  45      S5      5      nUS/:X  d   e[	        [        [        U [        U S5      U S:  -  45      S5      U SS9nUSL d   eg )Nri   r   r   r   T)r   rG   r   r/   rR   )ri   r   s     ru   test_issue_24650r  |  s|    AbAr!Qx1q5123Q78A8O8Iq"Q(a!e"456:A1EA99rw   c            	      d   [        S5      u  pp#n[        U S-
  X-
  U SU-  -
  US-
  /X/5      / :X  d   e[        U S-
  X-
  U SU-  -
  U S-
  /X/5      / :X  d   e[        U S-
  U S-
  X-
  U SU-  -
  /X/5      / :X  d   e[        U SU-  -   S-
  SU -  SU-  -   S-
  /X5      U SUS0:X  d   e[        SSXDS-   -  US-   S-  S/US-   US-   S	U-  S-
  US-   * S// S
Q/5      n[        XPXU5      XU* S-
  -  U-  USX#U* S-
  -  U-  0:X  d   e[        X-   U-   U-   U* U-
  /XX#5      X* X#* 0:X  d   eg )Nzx, y, z, t, nr   rz   r{   r   r   r   r   r   )r   r   r   r   r   )r   rG   r?   rJ   )ri   rj   rk   rl   rs   Ms         ru   test_linear_systemr    s   O,MA!!a%AaCQ/!8B>>>!a%AaCQ/!8B>>>!a%Qq1Q3w/!8B>>>!ac'A+r!taczB/61b!Q-GGGAqa%y1q51*a0QAr!tax1q515 " 	#A qQ1-	
r!tHQJ1aQBqD!,- - - !%!)a-!a(!5!RBGGGrw   c                      [        / SQ/ SQ/ SQ/ SQ/5      n [        U [        [        [        5      [        S[        S[        S0:X  d   eg )N)r   g      .@      $@g     @)r   r   r   g      Y@)r   r  g      @g      i@)g      r   r   r   r   g      Ng      d@)r?   rJ   ri   rj   rk   )r  s    ru   test_linear_system_xfailr    sG     	))))+ 	,A
 q!Q*q!Qq%.HHHHrw   c            
      2   [        S5      n [        U " SS5      U " SS5      -   U " SS5      -   U " SS5      -   U " SS5      * U " SS5      -
  /U " SS5      U " SS5      U " SS5      U " SS5      5      U " SS5      U " SS5      * U " SS5      U " SS5      * 0:X  d   eg )Nra   r   r   )r   rG   )ra   s    ru   test_linear_system_functionr    s    A!Aq'AaG#a1g-!Q7!Aq'AaG9KL	!Q1a!Aq'1Q7,01!Q!Aq'1Q7QqRSWH/UV V Vrw   c                  Z    S n [        SS5       H  nU " U5      u  p#[        X#5        M     g )Nc                   ^
 SU -  S-
  n[        SSS9u  m
p#[        SR                  U 5      SS9n[        SR                  U 5      SS9n[        SR                  US-   5      SS9n[        U
4S	 j[        U5       5       5      n/ n[	        U 5       Hq  n	UR                  UR                  T
U	5      R                  T
U05      XI   -
  5        UR                  UR                  T
U	5      R                  T
U05      XY   -
  5        Ms     X4$ )
Nrz   r   z	x, x0, x1Trealzy0_:{}zy1_:{}zc_:{}c              3   8   >#    U  H  u  pUTU-  -  v   M     g 7fr   r   )r   ocoeffri   s      ru   r   Ltest_linear_system_symbols_doesnt_hang_1.<locals>._mk_eqs.<locals>.<genexpr>  s     ;l(!5A:ls   )r   formatsum	enumeraterangeappendr	   r   )wyorderx0x1y0sy1src   exprr   r   ri   s             @ru   _mk_eqs9test_linear_system_symbols_doesnt_hang_1.<locals>._mk_eqs  s     "qKd3	2hoob)5hoob)5GNN57+$7;il;;rAJJtyyA++QG4sv=>JJtyyA++QG4sv=>  vrw   r   r  )r"  rG   )r+  rs   r   rc   s       ru   (test_linear_system_symbols_doesnt_hang_1r-    s+    , 1c]c rw   c                     [        / SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ S	Q/ S
Q/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/5      n [        S5      =nu  p#pEpgppppnnnnn0 U[        S5      * S-  _U[        S5      * S-  _U[        S5      * S-  _U[        S5      S-  _U[        S5      * S-  _U[        S5      S -  _U[        S!5      * S-  _U	[        S"5      * S#-  _U
[        S$5      S-  _U[        S%5      * S-  _U[        S&5      * S-  _U[        S'5      * S(-  _U[        S)5      S(-  _U[        S*5      * S-  _U[        S+5      S,-  _U[        S-5      * S-  _U[        S.5      S -  _U[        S/5      * S-  U[        S05      S-  0En[        U [        US1-   5      -  5      n[	        UU5      U:X  d   e[        S25      n[        UU -  [        US1-   5      -  5      n[	        UU5      U:X  d   eg )3N)B      '   2   X   (   %   `   r   A         r5  H   r      r   r5     L   )r   ]   "   b   ;   ,   C   J   rD  ^   G   =   <      r   rz   9   r     N   )r;  [   rJ     @   r7  r0  5   M   r?  U   :   W   r1  r1  r   $   rC  rM  r|   )rD  F   r   rP  D   +   V   S   Q   r:     .   rC     rA  r\  rL  r1  ?   r   )E   r4  rC     rC  r4  r^  rN  r>  rB  r]  Y   >   r8     &      r   r   r[  )r2     rD  r=  r?  -   r;  r=  r<  r<  r9  c   a   R   r  r]  ri  rJ  rW  #   )rS  rf  rh  r3  r   rO  	   r?  Z   rk  r^  )   rX  r[  rh  rZ  rg  r3  r0  r1  )r   ra  rV  rW  r   !   rO  r[  rZ  r   rY  K   rY  r^  rQ  r?  rc  r:  r   r0  )r   r  rz   r:  rF  4   r6  r{       3   r8  rU  O   r3  r\  rQ  rK     rp  rN  )r;  r8  rd  rR  r[  r1  r_  r<  r;  r   r   1   r5  r/  re  rN  r|   rF  rG  rt  )rK  rk  P   rw  rv  rR  r   r5  rz   rD  6   rk  rv  /   ry  rm  rl  r   ri  r4  )r   rw  rk  rM  r>  rJ  rh  r\  rh  rj  r   r@  0   rr  r/  r0  rc  ry  rj  r5  )rc  rI  I   rP  rr  rY  r<  re  r   rD  \   re  rj  rV  rF  rK  rv  rn  rC  rh  )rz   rs  rI  r0  rF  r5  r\  rF  r{   ro  rj  r7  r>  rN  r7  rh  r\  r3  r`  r2  )r4  8   r   rK  ru  r@  ru  rc  r5  r<  rh  rz  r|   r   rs  rD  r@  rl  T   rs  )rp  r   rT  ru  r7  rm     r_  r0  r;  r]  r<  rD  r   rK  r6  r  rM  r>  r   )rj  rf  r   rr  r   rz   r2  r  rr  r=  r;  rk  ro  r|  rt  ru  rN  r|   rk  r6  )r4  r<  rr  r   r   rF  r~  rL  rk  r{   rK  r{  r   rv  r   rf  r2  r=  rY  rr  )re  rb  rZ  rX  rK  rr  rn  rQ  rJ  r   rC  r   r[  r3  r{  r6  r3  rS  r  r|   zx:19l	   fXj"b!SBs= l	   0e7HPg%O0 l   B> tsypY/l   s LYr%9s;Ll   eAnA&d%$I%%l	    2$(Jsgw l   ydx#ZcCjGY_l	   `Jn +OKa l	   I\<e:B	W9P l	   
 _JawoZ% l	   :N1S:le)B l	   d/%pYA7qm l	   m:.v,&WCa0 l   xmKqe@ Agd5l   [iozkz l	   Nn:!=El2 l	   [R!`8rqw+ l	   [fPo/k#8o	 l	   KdLJw0jG3Y)9r l	   Rlx`[6gI l	   vJ1vBT l   xcyki&_#Ol   )]yRH--TWl   ISsf
rWl   
t[TFl	   \CQl2GB3 l	   1]* }ckkw l	   ]bSE:_jVH}S )r   rj   )r?   r   r   r   rG   r   )r  symsr&  r'  x2x3x4x5x6x7x8x9x10x11x12x13x14x15x16x17x18r   r   rj   s                           ru   (test_linear_system_symbols_doesnt_hang_2r    s   XXXXXXXXXXXXXXXXXXX'Z 	[A* PWW]^DL2rR2SS
a5667\\
a3445YY 	a4556[[ 	a456[[	
 	a5667]] 	a567\\ 	a5667\\ 	a3445YY 	a567\\ 	a6778^^ 	a6778^^ 	a5667\\ 	a567\\ 	a4556[[ 	a456ZZ  	a4556[[!" 	a567\\#$ 	a5667\\a567]]'C, q6$+&&
'Cds"""sA
q1uvdTk**
+Cds"""rw   c            
         [        S5      n [        / SQSSSU -  S/SSU S-  S//5      n[        U[        [        [
        /5      [
        SU S-  S	U -  -   -  [        SS
U -  U S-  S	U -  -   -  -
  [        SU -  U S-  S	U -  -   -  0:X  d   eg )Nrs   )r   rz   r   r   r   r|   rz   r   r   r   rf  r   r   )r   r?   rK   ri   rj   rk   )rs   r  s     ru   test_linear_systemLUr    s    sAq!QqS!nq"adA.>?@A!!aAY/Ar1a4"Q$;7G23QAq!tbd{9K5K23QqS!Q$A+5F4H H H Hrw   c                  !  ^^ SSK Jn Jn  [        [	        [
        5      S-
  [
        5      [        S5      /:X  d   e[        [        U [
        -  U-   [	        [
        5      S-
  -  [
        5      5      U* U -  [        S5      1:X  d   e[        [        [
        5      [        -
  [
        5      [        [        5      * S[        -  -   [        [        5      /:X  d   e[        S[        [
        5      -  [        -
  [
        5      [        [        S-  5      * S[        -  -   [        [        S-  5      /:X  d   e[        [        [        [
        5      [        [
        5      5      [
        5      [        S-  /:X  d   e[        [        [	        [
        5      [	        [
        * 5      -   [        -
  [
        5      5      [        [        S-  [        [        S-  S-
  5      S-  -
  5      [        [        S-  [        [        S-  S-
  5      S-  -   5      1[        [        [        [        S-  S-
  5      -
  5      [        S5      -
  [        [        [        [        S-  S-
  5      -   5      [        S5      -
  1[        [        S-  [        [        S-
  [        S-   -  5      S-  -
  5      [        [        S-  [        [        S-
  [        S-   -  5      S-  -   5      14;   d   e[        [	        [
        5      S-
  [
        5      [        S5      /:X  d   e[        [        [	        [
        5      S5      [
        5      [        S5      /:X  d   e[        [        [
        5      S-
  [
        5      [	        S5      /:X  d   e[        [        S[
        -  5      S-
  [
        5      [        SS5      /:X  d   e[        S[
        S-   -  [
        5      / :X  d   e[        SS[
        -
  -  [
        5      / :X  d   e[        [
        S[
        -  -   [
        5      [!        [        S5      5      * [        S5      -  /:X  d   e[        S[
        -  S-   [        S[
        -  S-
  5      -   [
        5      [        SS5      [!        S[	        [        SS5      5      -  S-  5      S-  -   /:X  d   e[        S[
        -  [        S[
        -  5      -   [
        5      [!        [        SS5      5      S-  /:X  d   e[        [        S[
        -  S	-   S	[	        [
        5      -   -  [
        5      5      [#        S
5      [        S	5      [        [$        -  -   1:X  d   eS[	        S[
        -  S-   5      -  S-
  m[        T[
        5      n['        U5      S:X  a  [)        U4S jU 5       5      (       d   e[        S[        S[
        -  S-   5      -  S-
  [
        5      [	        [        SS5      5      S-
  S-  /:X  d   e[        [	        [
        5      S-   [
        5      [        [$        -  /:X  d   eSS[
        -  S-   S-  -  SSS[
        -  S-   -  -  -
  m[        T[
        5      n[        S5      * nS[        SS5      -  n[        SSU-  S-  -  5      n[        S5      n[        S5      nU[        US-
  5      -  n	US-   n
SS[        S5      -  -  nU* nU[        US-
  5      -  nUS-   nXS[!        Xi* U
-   -  5      -  -
  -  XS[!        XiU
-   -  5      -  -
  -  XS[!        XnU-
  -  5      -  -
  -  XS[!        XnU-   -  5      -  -
  -  XS[!        [        SSU-  S-  -  5      * 5      -  -
  -  /nX2:X  d   U5       e[        TR+                  5       [
        5      U:X  d   e[        [,        [        [
        5      -  [        -
  [
        5      [        [        [,        -  5      * S[        -  -   [        [        [,        -  5      /:X  d   e[        [,        [        S[
        -  5      -  [        -
  [
        5      [        [        [,        -  5      * S-  [        -   [        [        [,        -  5      S-  /:X  d   e[        [,        [        [        [
        5      5      -  [        -
  [
        5      [        [/        [        [        [,        -  5      5      -
  [/        [        [        [,        -  5      S[        -  -
  5      [        -   [/        [        [        [,        -  5      S[        -  -
  5      * [/        [        [        [,        -  5      5      /:X  d   e[        [,        [        [
        5      -  [
        5      [        S-  [        [        SS5      -  /:X  d   e[        [        U[
        -  U [
        -   -  -
  [
        5      U * [        -  [        U-
  -  /U [        -  U[        -
  -  /4;   d   e[        [        U[	        U [
        -  5      -  -
  [
        5      U [        [        U-  5      -  /:X  d   e[        [        USU [
        -  -   -  -
  [
        5      U[        -
  U [        -  -  /[        U-
  U [        -  -  * /4;   d   e[        [        U [
        U-  -  -
  [
        5      [        U -  SU-  -  /:X  d   e[        [,        [
        -  [        -
  [
        5      [        [        5      [        [,        5      -  /:X  d   e[        S[
        -  S-
  [
        5      S[        S5      [        S5      -  -   /:X  d   e[        [
        [        -  5      [
        S0[        S0/:X  d   e[        [
        [        -  /5      [
        S0[        S0/:X  d   e[        [
        [        -  S-
  5      [
        S0[        S0/:X  d   e[        [
        [        -  S-
  /5      [
        S0[        S0/:X  d   e[        [
        [        -  [
        S-  [        S-  -
  -  5      [
        S0[
        [        * 0[
        [        0[        S0/:X  d   e[        [
        [        -  [
        S-  [        S-  -
  -  /5      [
        S0[
        [        * 0[
        [        0[        S0/:X  d   e[        [	        [        S5      [
        -  5      S[
        -  -
  [
        5      S/:X  d   e[        [	        [        S5      [
        -  5      [	        [        S5      [
        -  5      -
  [
        5      S/:X  d   e[1        S5      m[        [        T" [        S5      [
        -  5      -  [        T" [        S5      [
        -  5      -  -
  [
        5      S/:X  d   e[        T" [
        5      T" S5      -
  [
        5      S/:X  d   e[        T" [
        5      T" S[
        -
  5      -
  [
        5      S/:X  d   e[3        [4        U4S j5        [3        [4        U4S j5        [3        [6        U4S j5        [3        [6        U4S j5        [3        [4        S 5        [3        [4        S 5        [        [        [        [
        5      5      5      S[        S-  /:X  d   e[9        SSSS9u  p[;        [        [        U S[        [        U-  5      S-  -
  5      U5      5      S:X  d   e[        [        S[
        -  -  [,        -
  [
        5      [        [        5      [        [,        5      -  /:X  d   e[        S[
        -  5      [        S[
        -  5      [        [
        [        S-  -
  5      4 Hd  n[        [        [
        5      [#        S5      S-  -
  U[        -
  /5      nUS   [           US   [           -   R<                  (       a  M]   UU45       e   [        [        S [
        -  5      ["        R>                  -
  5      [        S!-  [        S"-  /:X  d   e[        [        [
        S [        -  -
  5      S-
  [
        5      S [        -  S [        -  S[        -  -   /:X  d   e[        [        [
        [        -   [,        -   5      S-
  [
        5      [        * [,        -
  [        * [,        -
  S[        -  -   /:X  d   e[        [        [
        [        S-  -   5      5      [        * S-  S[        -  S-  /:X  d   eg )#Nr   ra   rb   r|   rz   r   r   r{   ir  c              3   p   >#    U  H+  nTR                  [        U5      R                  S S9S:H  v   M-     g7fT)chopr   Nr   ri   rs   r   ra   r   s     ru   r   ,test_solve_transcendental.<locals>.<genexpr>*  +      N#QAd!;q!@#   36r   r   r   rm  ia	  r   r   r   c                  V   > [        T " [        [        5      T " SS5      -
  [        5      $ Nr   rz   r   r   s   ru   r   +test_solve_transcendental.<locals>.<lambda>f  s    a1g!Q.?(Crw   c                  d   > [        T " [        [        5      T " S[        -
  S5      -
  [        5      $ Nrz   r   r  s   ru   r   r  g  s!    a1g!a%.CQ(Grw   c                  b   > [        T " [        [        5      T " S[        -
  5      -
  [        5      $ Nr   r   r  s   ru   r   r  h  s    uQq!WqQx%7;rw   c                  T   > [        T " [        [        5      T " S5      -
  [        5      $ r  r   r  s   ru   r   r  i  s    uQq!Wqt^Q7rw   c            	          [        [        [        5      [        [        [        5      5      -  [        [        5      [        [        [        5      5      -  -   S-
  5      $ Nr|   )rG   r)   ri   r(   r   rw   ru   r   r  o  s6    d1gd47m#d1gd47m&;;a?@rw   c                  R    [        [        S-   [        -  [        -  S-
  [        5      $ Nrz   r|   r   r   rw   ru   r   r  s  s    q1uqjlQ.>(Brw   za, bTF)r  negative      ?zP[2.0 - 0.318309886183791*acos(1.0 - 2.0*a), 0.318309886183791*acos(1.0 - 2.0*a)]  i  X  ) 	sympy.abcra   rb   rG   r%   ri   r&   r   r4   rj   r0   r   r   r6   r.   r   r$   r   r   r   r   expandrk   r1   r   r_   r   r   r   stris_Rationalr   )ra   rb   r   resultr&  r'  r  r  r  r  r  r  r  r  r  yir   r   r   s                    @@ru   test_solve_transcendentalr  
  sF   Q!QCF8+++uacAgA
+Q/0aRT3q6NBBBQ!QT!WHqtOT!W#====3q6Aq!tAaCyj1R4&7ac%CCCCCFCF#Q'BqD6111uSVc1"g%)1-.AaC$q!tax.""#AaC$q!tax.""#4 	AQTAX#a&(AQTAX#a&(* 	AaC$AA'))*AaC$AA'))*,3- - - - Q!QCF8+++CFA"s1vh...Q!QCF8+++acQ"xA&7777QUQ2%%%QUQ2%%%QT18CF#3"3CF":!;;;;1q3qsQw<'+	!Q(1S#q)9%:#:1#<=a?	?@A A A1s1Q3x#!Q(@(B'CCCCuacAgCF
+Q/0QrUCFRTM4JJJJ	
3qsQw<!	B
A,Cs8q=S N# NNNNN3qsQw<!#Q'S!Q-@1-Da,G+HHHHQ!QBqD6)))	
AaC!Ga<!A!aL.	(B2q\F
d)B	
HQN	B	Q2b\	B	aB	aB	DaLB	aB	
Ac!fHB
B	DaLB
q&CAhr38}---.Ahr7|,,,-Ahr8}---.Ahr8}---.AhA"QK 001112	4C
 = & =a F***3q6Aq!tAaCyj1R4&7ac%CCCC3qs8a#ac
1r(94!9Q;'GGGG3s1v;"A&
T$qs)_d4!9qt#34r9	d1Q3i!B$	d1Q3i+2 2 2 2 3q61"Q$8Aq>(9!:::: QqS!a%[!$1"Q$A,!A#q1u+(GGGGQs1Q3xZ##ac(
|333QAaC[!$1q51Q3-a!eac];K:L(MMMMQq!tVQQqSAaCL>111A1#a&Q-000AA1s1vc!f}#4"55551:1a&1a&))))!A#<QFQF++++A?1v1v....!Q$(!Q!Q 00001adQTk"#AQB!Q!Q'HHHH!A#q!tad{#$%1a&1qb'Aq6Aq6)JJJJSVAXA%q)aS000SVAXSVAX.2qc999A1SVAX;1SVAX;.2qc9991!a QC'''1!a%!$+++
 CD
 GH
:;<
:78  !A B  BC T!W1b!e*,,, 6u5DAuR3RT1,-q12Z[ [ [ QqSAq!c!fSVm_444 1Q3xAaCQAX/SVad1f_b1f-.Aq	CF1I%222<RH<2 0 T!Vqvv%&2d7BsF*;;;;QaZ1$a(T!VT!Vad],CCCCQUQY!#Q'QBFQBFQrTM+BBBB QAXRCE1R46?222rw   c            	      
   [        S5      n [        S5      " U 5      n[        S5      " U 5      n[        S5      u  p4pVpx[        X1-  XB-  -   U-
  XQ-  Xb-  -   U-
  /X5      n	U	XU-  XH-  -
  X6-  XE-  -
  -  X#U-  XW-  -
  X6-  XE-  -
  -  0:X  d   e[        US-
  U5      S/:X  d   e[        SU-  S-
  U5      [	        SS5      /:X  d   e[        X1R
                  " U 5      -  XBR
                  " U 5      -  -   U-
  XQR
                  " U 5      -  XbR
                  " U 5      -  -   U-
  /UR
                  " U 5      UR
                  " U 5      5      n	XR
                  " U 5      X8-  XW-  -
  X6-  XE-  -
  -  UR
                  " U 5      Xg-  XH-  -
  X6-  XE-  -
  -  0:X  d   e[        UR
                  " U 5      S-
  UR
                  " U 5      5      S/:X  d   e[        SUR
                  " U 5      -  S-
  UR
                  " U 5      5      [	        SS5      /:X  d   eSU-  S-
  SU-  S-
  1n
[        XU15      U[	        SS5      US0:X  d   e[        S5      n[        S	5      nUS-  U" U5      S-  -   SU-  -
  S-
  n[        UR                  U5      [        U" U5      U5      5      U* S-   U" U5      -  /:X  d   e[        S5      n[        S5      " U 5      n[        X1-  XBR
                  " U 5      -  -   U-
  XQ-  XbR
                  " U 5      -  -   U-
  /XR
                  " U 5      5      n	XR
                  " U 5      X8-  XW-  -
  X6-  XE-  -
  -  XU-  XH-  -
  X6-  XE-  -
  -  0:X  d   e[        S5      n[        S	5      n[        U" U5      R                  U5      U" U5      R                  US5      -   S-
  U" U5      R                  U5      U" U5      R                  US5      -
  /U" U5      R                  U5      U" U5      R                  US5      5      n	X" U5      R                  US5      [        S5      S-  U" U5      R                  U5      [        S5      S-  0:X  d   e[        U" U5      R                  US5      U" U5      R                  US5      -   S-
  SU" U5      R                  US5      -
  U" U5      R                  US5      -
  SU" U5      R                  US5      -
  /U" U5      R                  US5      U" U5      R                  US5      5      n	X" U5      R                  US5      S
U" U5      R                  US5      S0:X  d   eg )Nrl   ri   rj   r   r   r|   rz   r   r   r   )r   r   r   rG   r   r	   r   )rl   ri   rj   r   r   r   r   r   r   solneqnsr   Fs                ru   $test_solve_for_functions_derivativesr    s   sAaAaA!()@!ACc#%#%-"$cecemb&891@D	FSVOcg/0	FSVOcg/0   
 Q?qc!!!1q!!Q 0000#ffQi-#ffQi-/"4c&&)mq	M77  !"AFF1I7DVVAY#&37SW3D EFF1I#'CG*;<? ? ? ? Qq	*qc111166!9q!&&),!Q0@@@@aC!GQqS1WD1vAx1~q!"====sAA	1qtQw1q AD1qM*Q!}o=== 	sAaA#%#ffQi-'",ceq	M//  !"FF1I/DVVAY#&37SW3D EB#'CG"347 7 7 7 	sAA!A$))A,11a014adiilQqTYYqRS_6TUaDIIaL!A$))Aq/+DQqTYYq!_ad1fadiilAaDFDDDD!A$))Aq/AaDIIaO3a7QqTYYq!_9LaDIIaO:11Q/123A$))Aq/1Q499QPQ?TDQqTYYq!_a11a!====rw   c                  F   [        S5      n [        S-  U " [        5      S-  -   S[        -  -
  S-
  nUR                  [        5      n[        X " [        5      R                  [        5      5      S[        -
  U " [        5      -  /[        S-
  U " [        5      -  * /4;   d   eg )Nr   rz   r   r   )r   ri   r	   rG   )r   r  re   s      ru   test_issue_3725r    s    A	1qtQw1q A	q	AAaDIIaL!Aqt|n!a%16G%HHHHrw   c            	        ^^ [        S5      u  pp#[        SSXX#/5      n[        SS/ SQ5      n[        SS/ SQ5      n[        XE-  U-
  XX#/5      U SU[        SS5      USUS0:X  d   e[        XE-  U-
  /XX#/5      U SU[        SS5      USUS0:X  d   e[        [	        XE-  U5      XX#/5      U SU[        SS5      USUS0:X  d   e[        XE-  XT-  -
  /XX#/5      XU[        SS5      U-  0:X  d   e[        XF-  Xd-  -
  /XX#/5      XU-
  U[        SS5      U-  0:X  d   e[        XE-  XT-  -
  XF-  Xd-  -
  /XX#/5      XUS	US	0:X  d   e[        [	        XE-  XT-  5      /XX#/5      XU[        SS5      U-  0:X  d   e[        [	        XF-  Xd-  5      /XX#/5      XU-
  U[        SS5      U-  0:X  d   e[        [	        XE-  XT-  5      [	        XF-  Xd-  5      /XX#/5      XUS	US	0:X  d   e[        S
5      u  px[        SXx5      n[        SUS5      m[        SUS5      nUT-  U-
  n	U	R                  U	-  n
U
R                  T5      m[        [        UU4S j5        g )Na b c drz   )r   rz   r   r   )r   rz   r|   r   r   r   r|   r   r   zm nAri   rb   c                     > [        T T5      $ r   )rG   )grad_fri   s   ru   r   #test_solve_Matrix.<locals>.<lambda>  s    uVQ/rw   )
r   r?   rG   r   r   r@   Tr	   r_   r   )ra   rb   rc   rd   r  BCrn   rs   r   r   r  ri   s              @@ru   test_solve_Matrixr    s   #JA!q!aA\"Aq!]#Aq!\"Aq1,'Aq!Xb!_aAr+RRRR!#'Q1L)aAxA1aQS-TTTTACaA\*q!QQAqRT.UUUU!#)qQl+a"a9J/KKKK!#)qQl+q5!Xa^A=M/NNNN!#)QS13Y'!61Aq!:LLLL"QS!#,!.1HROA<M2NNNN"QS!#,!.1!eQAq@P2QQQQ"QS!#,13-a|<q!QPQ@RRRR 5>DAS!AS!QAS!QA	A	A	aAVVAYF
:/0rw   c                  h   [        S5      n [        [        [        5      S:X  d   e[        [        [        /S9S:X  d   e[        [        U /S9S:X  d   e[        [        [        S[        -  -
  5      [        [        S-  4[        S[        -  44;   d   e[        [        [        S[        -  -
  [        /S9[        S[        -  4:X  d   e[        S[        -  [        -
  S5      [        [        S-  4[        S[        -  44;   d   e[        S[        -  [        -
  S[        /5      [        [        S-  4:X  d   e[        S[        -  [        -
  S[        /5      [        S[        -  4:X  d   e[        [        S-  [        -  S5      [        [        S-  4:X  d   e[        U [        5      U [        4[        U 44;   d   e[        [	        [        5      S-  [        [        5      S-  -   S-   [        -   5      [        S	[	        [        5      S-  -
  [        [        5      S-  -
  4:X  d   e[        [	        [        5      S-  [        [        5      S-  -   S-   [        -   [        /S9S:X  d   e[        [        [        S5      5      [        S4:X  d   e[        SS[        -  S-
  -  5      S
:X  d   e[        [        S-   [        [        * 5      -  [        /S9[        S4:X  d   e[        [        S-   [        [        5      -  [        /S9[        S-   [        [        5      -  S4:X  d   e[        [        [        [        S-  * 5      -  [        /S9[        S4:X  d   e[        S[        -  S-
  5      S[        -  S-
  S4:X  d   e[        SS[        S-
  -  -   5      [        S4:X  d   e[        [	        [        5      S-  -  [        [        [        5      S-  -  -   [        -
  n[        U5      S:X  d   e[	        [        5      S-  [        [        5      S-  -   n[        U5      S:X  d   e[        [        S 5        g )Nwr   r   r   r   rz   r|   r   r   r   r   r   r   c                  6    [        [        [        S5      S5      $ r  )rH   r   ri   r   rw   ru   r   #test_solve_linear.<locals>.<lambda>  s    |Bq!Ha8rw   )
r   rH   ri   rj   r4   r6   r   r%   r_   r   )r  r   s     ru   test_solve_linearr    s   S	A1'''A3'6111A3'61111qs7#AaC1ac(';;;;1qs7QC0Q!H<<<!a#AaC1ac(';;;;!aQC(Q!H444!aQC(Q!H4441Q"q!Q$i///11a&1a&!1111A	CFAI-1A56	
BQNSVQY&'( ( (A	CFAI-1A5sCvMMM1a!aV+++1Q37$...QQB!5!R@@@QA4!a%Q8KKKK#q!te*qc2q!f<<<1q!adQh]222Aq1uI&1a&000	
3q619qQ{	"Q	&Bv%%%	QSVQY	Bv%%%
:89rw   c                  j   [        [        [        S-  -  [        [        S-  -  -   [        [        -  -   S[        -  [        -  -   [        -   S-   [        [        [        /[        5      [        S[        S[        S0:X  d   e[        [        [        -  [        [        S-   -  -   S[        -  S-   [        S-  [        -   -  -
  [        [        /[        5      [        S[        S0:X  d   e[        [        S-   [        -  [        S-  -  [        S-   [        -  [        S-  -  -   [        S-   [        -  [        -  -   [        S-   S-  [        -  [        -  -   [        S-   S-  -   [        S-   -  [        [        [        /[        5      [        S[        S[        S0:X  d   e[
        [        [
        -  [
        [        [
        -  -  p!n [        U -  [        U-  -   [        U-  -   U -
  SU-  -
  SU-  -
  n[        [        [        4n[        [
        4n[        X45      [        S[        S[        S0:X  d   e[        X4U5      [        S[        S[        S0:X  d   e[        X4/UQ76 [        S[        S[        S0:X  d   e[        [        [        -  [        -   S-
  [        /5      / :X  d   e[        [        S-  [        -  S[        -  -
  [        /5      [        S0[        S0/:X  d   e[        S[        /5      / :X  d   e[        S[        /SS	9/ :X  d   e[        S[        /SS
9/ 0 4:X  d   e[        S[        /5      / :X  d   e[        [        -  S[        -  -
  [        -   S-
  n[        [        1n[        Xg[        5      [        S[        S0:X  d   e[        Xg[        SS
9[        [        /S14:X  d   e[        [        [        [        -  5      [        S[        -  5      -
  [        45      b   e[        [        [        -  [        [        -  -   S[        -  -
  [        [        45      [        S[        -
  0:X  d   eg )Nrz   r   r   r   r|   r   r   Tr}   r   )rz   r|   )rL   ra   ri   rb   rc   rj   r6   )XYZr   coeffsr  abeqr   s           ru   test_solve_undetermined_coeffsr    s   $	!Q$1a4!A#!A%)A-1ay!
Q1b!" " " %QqS1a!e9_Q37QTAX
&!"A+/0!Ql; ; ; %
a%1a41q5!)AqD.	(	
Q	!
1uaik!m
$'(1uqj
134q5	:	
Aq	1 
B1a	   AqAv!A	
1qsQqS1	qs	"QqS	(B1WFa4D$R0	1aAq5   $R6	1aAq;   $R7$7	1aAq<    %QqS1Wq[1#6"<<<$QT!Vac\A37	
B!Q<   $Q,222$Q$72===$Q62r(BBB$Q,222Q319q=1D	
AA$Ta0Q1aL@@@$TaT:1vx>PPPP$S1XAaC%81$?GGG$QqS1Q3Y1_q!f=!QUKKKrw   c                     [        S5      n [        [        R                  U :  U [        :  5      n[        U S-   S:  5      U:X  d   e[        U S-   S:  /5      U:X  d   e[        U S-   S:  /U 5      U:X  d   e[        U S-   S:  /U /5      U:X  d   e[        U S-  S-
  S5      [        U S-  S-
  S5      /n[        U5      [        [        [        [        [        S5      * U 5      [        U S5      5      [        [        SU 5      [        U [        S5      5      5      5      [        SS5      5      :X  d   e[        SSS9n [        U S-  S-
  S5      [        U S-  S-
  S5      /n[        U5      [        [        [        [        S5      * U 5      [        U S5      5      [        [        SU 5      [        U [        S5      5      5      5      :X  d   e[        U S-
  U S-
  -  S:  U 5      [        [        SU 5      [        U S5      5      :X  d   e[        X S-   -  S:  U 5      [        [        [        * U 5      [        U S5      5      :X  d   e[        [        U 5      [        R                  :  5      [        [        S	-  U :  U [        [        S
S	5      -  :  5      :X  d   e[        [        SU S:  5      5      [        R                  U :*  U [        :  -  :X  d   e[        [        SU S:  5      5      [        * U :  U S:  -  :X  d   e[        [        U S:  S5      5      [        R                  U :*  U [        :  -  :X  d   e[        [        U S:  S5      5      [        * U :  U S:  -  :X  d   e[        [        SU 5      5      S:X  d   e[        [        SU 5      5      S/:X  d   e[        [        SU 5      5      S:X  d   e[        [        SU 5      5      S/:X  d   e[        [        SU ) 5      5      S:X  d   e[        [        SU ) 5      5      S:X  d   e[        [!        SU 5      5      S:X  d   e[        [!        SU 5      5      U [        * :  U [        :  -  [!        U S5      -  :X  d   eg )Nri   r   rz   r   r   Tr  r|   r   r{   F)r   r=   r   r   r   rG   r   r   r>   r.   r   r6   r   r   r   r   r   )ri   r   systems      ru   test_solve_inequalitiesr  *  s   sA
affqj!b&
!CQs"""!a%!)$$$!a%!)a C'''!a%!)qc"c)))A1or!Q$(A/F=Bs2tAwh?Bq"I.2a8R47^,./1!Qx	99 9 9 	sAA1or!Q$(A/F=
3r47(A1b	*C1a"QQ.,IJK K K !a%!a%1$a(C1a"Q(,CCCCEQ"c"bS!*bBi&@@@@Q!&&!SA1r(1a.7H3H%IIIIE1q5!"quuza"f&====D!a%!rcAg!a%%8888AE5!"quuza"f&====AE4!rcAg!a%%8888E1%'''Aq?qc!!!D!%%%Aq?qc!!!EA24'''D1"%'''D!&&&Aq?qB3w1r62R1X====rw   c                  6  ^ [        S[        -  5      / :X  d   e[        [        SS[        -  -
  -  5      S/:X  d   e[        [        [        [        5      -   S-
  5      S/:X  d   e[        S[        -   * S[        -   S-  -  SS[        -   -  -   5      / :X  d   e[        [        S-  * S[        -  -
  [        S-   S-  -   S-
  5      / :X  d   e[        [        [        S-   -  S-   S-  5      / :X  d   e[        [        [        [        S-  S-   5      -  [        5      S/:X  d   e[        [        [        5      [        -
  [        5      [        [        5      /:X  d   e[        [        [        5      5      / :X  d   e[        [        S-  [        -   [        [        5      S-  -   [        [        5      S-  -   S-
  [        5      SS/SS/4;   d   eSSS[        -  S-   -  -  S	-
  m[        T[        5      n [        U 5      S:X  a  [        U4S
 jU  5       5      (       d   e[        [        [        S-  5      [        S-  [        [        5      -  -
  [        [        SS9[        [        /[        [        [        [        5      [        [        S-  5      -  5      4[        [        [        [        5      [        [        S-  5      -  5      * 414:X  d   e[        [        S-  [        S-  -  [        S-  [        S-  -  -
  5      [        [        * 0[        [        0[        S0/:X  d   e[        [        S-
  SS[        S-
  -  -   -  5      / :X  d   e[        [        [        [        -  -  [        -
  [        5      S/:X  d   e[        [        S 5        [        [        S 5        g )Nr   r{   rz   r|   r   r   r   r   r   c              3   p   >#    U  H+  nTR                  [        U5      R                  S S9S:H  v   M-     g7fr  r  r  s     ru   r   "test_issue_4793.<locals>.<genexpr>^  r  r  Tr   c                  \    [        [        [        5      [        [        5      -
  [        5      $ r   )rG   r&   ri   r%   r   rw   ru   r   !test_issue_4793.<locals>.<lambda>e  s    c!fs1voq(Arw   c                  L    [        S[        -  [        [        5      -
  S-
  5      $ r  )rG   ri   r%   r   rw   ru   r   r  f  s    adSVma.?(@rw   )rG   ri   r.   r%   rj   r&   r6   r4   r   r   rk   r_   r   )r   r   s    @ru   test_issue_4793r  Q  s   1:A!G!$$$T!Wq!aS(((1q51q51*$q!a%y01R777!Q$1Az)A-."444!QU)a-2&'2---41q>!1%!,,,Q!QCF8+++Q=BACFAI%A	1A5q9q"gAw=OOOO	
1qsQw<!	B
A,Cs8q=S N# NNNNNQTQT#a&[(!QD9	
A
T#a&3qAv;&'	(1tCFSa[4H/I.I*JK>M M M M AadQT!Q$Y&'QGaVaV+DDDD!a%!aQi-()R///QqSAq!aS(((
 AB
 @Arw   c                     [        [        [        5      5      [        [        [        S-  5      5      s=:X  a  S/:X  d   e   e[        [        [        S-
  5      5      S/:X  d   e[        S5      n [        SU -  [        [        5      -  [        5      / :X  d   e[        S[        -  [        S-   -  S-
  [        5      S/:X  d   e[	        [        [        S-  S[        -
  -  R                  [        5      5      5      [        R                  [        S5      1:X  d   e[        S	5      n[        SS
[        -  U" [        5      -  -
  U" [        5      -  U" [        5      5      [        [        S
S5      -  /:X  d   e[        S[        S
[        -   S
5      -  S-
  [        5      [        SS5      /:X  d   e[        [        [        5      [        [        [        5      5      -   S-
  5      [        SS5      [        S5      S-  -   S-  /:X  d   e[	        [        [        [        [        [        5      5      [        [        [        * 5      5      -   S-
  5      5      5      [        [        S5      * S-   S-  5      [        [        S5      S-   S-  5      1S[        [        S5      * S-   5      -  S[        [        S5      S-   5      -  1[        S[        S5      -  S-   5      [        S[        S5      -  S-   5      14;   d   e[	        [        [        [        [        5      [        [        * 5      -   S-
  5      5      5      [        [        S5      * S-   5      [        [        S5      S-   5      1:X  d   e[	        [        [        [        -  [        S[        -  -  -   S-
  [        5      5      [        SS5      [        S
5      S-  -   S[        -  -  [        SS5      [        S
5      S-  -
  S[        -  -  1:X  d   e[        [        [        [        -  5      [        [        * [        -  5      -  S-
  [        5      [        [        -
  [        S5      -  /:X  d   e[        [        [        -  [        [        -  -  S-
  [        5      [        S5      [        [        5      [        [        5      -   -  /[        S5      [        [        [        -  5      -  /4;   d   e[        R                   n[        [        S[        -  5      [        S5      -
  [        5      S[        U[        SS5      [        S5      ["        -  S-  -
  -  5      [        U[        SS5      [        S5      ["        -  S-  -   -  5      /S[        U* S-  [        S5      U-  ["        -  S-  -
  5      [        U* S-  [        S5      U-  ["        -  S-  -   5      /4;   d   e[        SSS9n[        SU-  S-   US-   -  5      / :X  d   eg )Nr|   r   r   ra   r   rz   r   r  r   r{   rm  i~i  r   r   r^  r  rh   Tpositive)rG   r.   ri   r   r   r	   r   r   r   r   r-   rB   r%   r&   rj   rk   Exp1r   )ra   r   r   rh   s       ru   test_PR1964r  i  s   a>U41:.51#55555a!e!$$$sAAd1gq!R'''1a!eq!$+++uadAEl((+,-!&&!B%@@@A!ac!A$h,!$ad+(1a.0@/AAAA4Aq>!A%q)hw.F-GGGGa4Q=(1,-8B?T"XaZ3ORS2S1TTTTuT$s1v,c1"g6:;<=47(Q,"#S$q'A+)9%:;sDG8a<  !CQ!$4"45DGa #aQi!m"45	

 
 
 uT#a&3r7*Q./01	d1gX\	CQ!,-. . .uQTA!H_q(!,-
2q/DGAI
%1	-Q$q'!)0KqQRs/STU U U QqS#qbd)#a'+QA/????	1QT	Aq"1vs1vA783q63qs8;L:MNO O O 	
AQqSCF"A&	
C8B?T!WQYq[012C8B?TRSWUVYWX[;X8Y4Z[	
C1tAwqy{1}$%sA2a4$q'!)A+a-+?'@A+
 
 
 
 	sT"A!A#'QU#$***rw   c                     [        SSS9n [        U S-  S-   U 5      / :X  d   e[        SSSS9n[        US-
  US-   -  SU-  S-
  -  U5      S/:X  d   e[        SSS9n [        S	5      n[        U S
U-  -   S-
  SU -  SU-  -   S-
  /X5      / :X  d   e[        X-   SUS-  -
  /X5      [        S5      [        S5      * 4/:X  d   e[        S	SS9n[        U S-  US-  [        U 5      -  -
  X SS9X [        U S-  5      -  0/:X  d   e[	        SSS9u  pn[        US-  U S-  -  US-  US-  -  [        U 5      -  -
  X USS9X [        U S-  5      -  0/:X  d   eg )Nri   Tr  rz   r   rs   integerr  r  rj   r{   r   r   r   r}   zx y z)r   rG   r.   r%   r   )ri   rs   rj   rk   s       ru   test_issue_5197r    s   sAA1###sD40A!a%!a%!A#'*A.1#555sT"AsA!ac'A+r!taczB/6"<<< 151q!t8$a+a47(0C/DDDDsT"AA1SV#Q51AaCj/9JJJJg-GA!AadQT!Q$Ys1v--qQTBSQRSTQTX:FWWWWrw   c                     [        [        [        [        [        [        -  -
  -  [        SS95      [	        [        5      [
        R                  [	        [        5      * 1:X  d   e[        [        [        [        [        [        -  -
  -  [        SS95      [	        [        5      [	        [        5      * 1:X  d   e[        SS[        -  S-   -  S[        S-
  -  S-
  45      / :X  d   e[        SS[        -  S-   -  5      / :X  d   eg )NFr   Tr   rz   r|   )r   rG   ri   rj   r.   r   r   r   rw   ru   test_checkingr    s    aQqSk1E*,04Q$q'/JK K KuQAaC[!401d1gQx5HHHH!QqS1W+q!a%y1}-."444AaC!G###rw   c                     [        [        [        S-  S-
  5      S-
  5      [        S5      [        S5      * /[        S5      * [        S5      /4;   d   e[        S[        [        S-  [        -  5      -  S-   [        S-  S-   -  [        5      [        [        [        S[        [        -  [        S5      -  -   5      -  5      * [        [        [        S[        [        -  [        S5      -  -   5      -  5      /:X  d   e[        S5      u  p[        S5      n[        X[        S-  -  -   [        U" [        5      * 5      -
  U" [        5      5      [        [        S-  U [        S-  -  U-   -  5      /:X  d   e[        S5      n[        R                  n[        S[        US[        S-  -  -   5      -
  [        5      [        U* U-   5      * S-  [        U* U-   5      S-  /[        U* U-   5      S-  [        U* U-   5      * S-  /4;   d   e[        [        US	-  [        S-  -
  5      U-  [        5      [        S
US	-  -   5      * [        S
US	-  -   5      /[        S
US	-  -   5      [        S
US	-  -   5      * /4;   d   e[        S[        US[        S-  -  -   5      -
  [        5      [        U* U-   5      * S-  [        U* U-   5      S-  /[        U* U-   5      S-  [        U* U-   5      * S-  /4;   d   e[        US-  S-   [        U[        -  5      [        U[        -  5      -   -  [        5      [        * SU-  -  /:X  d   e[        S[        U[        -  5      [!        U[        -  5      -   -
  [        5      [        S5      U-  /:X  d   e[#        [        S[        U[        -  5      [!        U[        -  5      S-  -   -
  [        5      5      [        S[        S5      -   5      U-  [        [        S5      * S-   5      U-  [        [        S5      * S-
  5      U-  [        S[        S5      -   5      U-  1:X  d   e[        [%        [        5      S-
  5      ['        S5      /:X  d   eg )Nrz   r   r{   r   zC1 C2r   ra   r   r   r   r|   r   )rG   r.   ri   r%   rj   r&   r   r   r   r   r   r   r  r6   r4   r)   r(   r   r2   r7   )C1C2r   ra   r   s        ru   test_issue_4671_4463_4467r    s   adQh!#$$q'DG8)<-1!WHd1g+>)@ @ @ @!SAa[.1$q!tby115	aA"SVO$$	%%tAc!ad3q6k/.B,B'C:E E E E WFBAAgQqTE
*AaD1c!Q$1a4":M6N5OOOOsA	ASQq!tV_$a(
rAv,q$rAv,q.)	qb1fa$rAv,q)-    QWq!t^$Q&*
rAG|
	d2B<01	b1r7l	d2B<001/4 4 4 4 SQq!tV_$a(
rAv,q$rAv,q.)	qb1fa$rAv,q)-, , , , !Q$(S1XAaC01152#qs)DDDd1Q3i$qs)+,a0SVAXJ>>>uQ$qs)d1Q3il23Q78	R$q'\	1	c47(Q,/1T!WHqL!ST!W-a/	11 1 1 a1#a&)))rw   c                  j   [        S5      u  p[        [        U [        S-  -
  [        S-  -
  [        U5      [        [        -  -
  /[        [        /5      5      [        U [        U5      S-  -  5      * S[        U [        U5      S-  -  5      -  [        U5      -  4[        U [        U5      S-  -  5      [        U [        U5      S-  -  5      [        U5      -  41:X  d   e[        [        [        5      [        [        5      -
  S[        -  S-
  /[        [        /5      [        [        [        SS5      5      5      [        SS5      4/:X  d   e[        [        [        5      [        [        5      -
  S[        [        5      -  S-
  /[        [        /5      [        [        [        S5      5      * 5      [        S5      * 4/:X  d   e[        [        [        [        5      [        [        5      -
  [        S-  S-
  /[        [        /5      5      [        [        S5      * 5      [        S5      * 4[        [        S5      5      [        S5      41:X  d   e[        [        5      S-  [        [        5      -
  [        S-  -   S[        [        5      -  S-
  /n[        USS9[        [        /[        S5      * [        [        S[        -  5      * [        [        S5      5      -
  5      4[        S5      * [        [        S[        -  5      * [        [        S5      5      -
  5      * 414:X  d   e[        U[        [        SS9[        [        /[        [        [        S[        -  5      * [        [        5      -   5      4[        [        [        S[        -  5      * [        [        5      -   5      * 414:X  d   e[        [        U[        [        5      5      [        [        [        S-  * [        [        S5      5      -
  5      * 5      [        S5      * 4[        [        S-  * [        [        S5      5      -
  5      S-  [        S5      * 41:X  d   e[        [        U[        [        5      5      [        S5      * [        [        S[        -  5      * [        [        S5      5      -
  5      * 4[        S5      * [        [        S[        -  5      * [        [        S5      5      -
  5      41:X  d   e[        [        5      S-  [        [        5      -
  [        -   S[        [        5      -  S-
  /n[        USS9[        [        /[        S5      * [        S[        -  5      * [        [        S5      5      -
  414:X  d   e[        U[        [        SS9[        [        /[        [        S[        -  5      * [        [        5      -   414:X  d   e[        [        U[        [        5      5      [        [        [        * [        [        S5      5      -
  5      * 5      [        S5      * 4[        [        * [        [        S5      5      -
  5      S-  [        S5      * 41:X  d   e[        U[        [        5      [        S[        -  5      * [        [        S5      5      -
  [        S5      * 4/:X  d   e[        [        [        S-  [        S-  -   5      [        S	5      -
  [        [        -   S-
  4SS9[        [        /[        R                  [        S5      4[        S5      [        R                  414:X  d   e[        [        [        [        S-  [        S-  -   5      [        S	5      -
  [        [        -   S-
  4[        [        5      5      [        R                  [        S5      4[        S5      [        R                  41:X  d   eg )
Nzr,trz   r   r   r|   r   Tr   r   )r   r   rG   ri   rj   r7   r.   r4   r%   r6   r&   r   r   rk   r   )r   rl   r   s      ru   test_issue_5132r    sT   5>DAua!Q$hAos1v!|4q!f=>!CFAI+4#a&!)#4 4SV ;
=!CFAI+Qs1vqy[ 1#a& 89	;; ; ; #a&3q6/1Q37+aV4
c(1a.!
"HQN	345 5 5#a&3q6/1SV8a<01a&9
s3q6{l
c!fW	%&' ' 'uc!fs1voq!tax01a&9:
s1vg,1	SVad 345 5 5q619s1v1$aAhl
3C$
Q
a&$AaCy3s1v;./0
a&4QqS	CAK/0013 	44 4 4 a%	
A
T3qs8)c!f$%	&T3qs8)c!f2D-E,E(FG*I I I I uS!Q $1us3q6{*++,s1vg6	adUSQ[ 	!!	#c!fW-	// / / uS!Q !fWtS1XICF3445
a&$AaCy3s1v;./0	22 2 2 q619s1v!1SV8a<
0C$QF
a&3qs8)c#a&k)*-, $- - - -a%	
A!c!A#hYQ'()*+ + + +uS!Q $rCAK'(()CF73!c#a&k!"1$s1vg.%0 0 0 0 aqs8)c#a&k
!CF7	+,- - -$q!tad{#d2h.A	:E	
A!%%11quu.J0 0 0 0ud1a4!Q$;'$r(2AEAI>1EF
%%11quu&' ' 'rw   c            	         [        S5      u  pnSnSnU S[        -  -   US[        S-  -
  -  [        -  -
  U[        -  S-  [        -  -
  US[        S-  -
  -  [        -  S[        -  -
  U[        -  -
  [        [        -   U-
  /n[        [        U/n[        [	        XVSSS95      S:X  d   e[        [	        XV5      5      S:X  d   eg )Nlam a0 conc{Gzt?̫;?rz   r   T)manualminimalr   rj   ri   r   rG   lama0concra   rb   r   syms          ru   test_issue_5335r     s    M*MCTAA19r1qs7|A~%!Aa/q1Q3w<>AaC!A#%q54<C a*CuSdD9:a???uS1$$$rw   Hangsc                  T   [        S5      u  pnSnSnU S[        -  -   US[        S-  -
  -  [        -  -
  U[        -  S-  [        -  -
  US[        S-  -
  -  [        -  S[        -  -
  U[        -  -
  [        [        -   U-
  /n[        [        U/n[        [	        XVSS95      S:X  d   eg )Nr  r  r  rz   r   Frationalr  r  s          ru   _test_issue_5335_floatr    s     M*MCTAA19r1qs7|A~%!Aa/q1Q3w<>AaC!A#%q54<C a*CuS./1444rw   c                      [        [        [        S-  [        -   S-   /[        /5      5      [	        [        * S-
  5      * 4[	        [        * S-
  5      41:X  d   eg )Nrz   r   )r   rG   ri   rj   r.   r   rw   ru   test_issue_5767r    sS    uadQhl^aS)*Q<-	D!aL?+, , ,rw   c                     [        SSSS9u  pp#pE[        SSSS9u  pgn[        SSSS9n	S[        S5      S-  -  [        [        S5      S-  -  -  U-  [        S5      S	-  [        S-  U	S-  -  -   -  S
U[        S5      S-  -  -  U	[        S5      S-  -  -  -  S[        S5      S-  -  [        [        S5      S-  -  -  U-  SU[        S5      S-  -  -  U	[        S5      S-  -  -  -  -
  n
S[        S5      -  [        -  S-  nXU	4$ )NzD, R, H, B_g, V, D_cT)r  r  zSigma_f, Sigma_a, nuri   rz   r|   i i'  r   r   r  r   d   i  )r   r   r   r.   )Dro   HB_gVD_cSigma_fSigma_anuri   r   expecteds               ru   _make_example_24609r    s   "#9tTA!!"#9tTGb$.A	AaDFB1aL $aioAad
&BC
A!QK-AaDF
#	%	AaDFB1aL $aAaDFmA!QK&?@	A 
 47{2~c!H?rw   c                      [        5       u  pn[        XSS9U/:X  d   e[        U R                  5       U5      u  n[        X1R                  5       -
  5      S:  d   eg )NTr   g+=)r  rG   rs   abs)r   r  ri   	solapproxs       ru   test_issue_24609r  '  sU    )+OB!&8*444"KYy::<'(5000rw   c                  T    [        5       u  pn[        [        X5      5      U/:X  d   eg r   )r  r   rG   )r   r  ri   s      ru   test_issue_24609_xfailr  /  s)     *+OB!uR|
***rw   c                  ~   [        [        [        S-  S[        -  -   S-
  [        [        -   S-
  /[        [        /5      5      [        R
                  [	        S5      4S[        S5      -   S[        S5      -
  4S[        S5      -
  S[        S5      -   41:X  d   e[        [        S-  [        -   S-
  [        S-  [        -   /5      / :X  d   e[        [        S-  [        -   S-
  [        [        -
  S-
  /[        [        45      [        [        S-  [        -   S-
  [        [        -
  S-
  /[        [        45      :w  d   eg )Nrz   r|   r   r{   r   )r   rG   ri   rj   r   r   r.   r   rw   ru   test_polysysr  D  s   uadQqSj1na!eai01a&9:
%%1T!Wa$q'k2	
T!Wa$q'k"	$$ $ $ !Q$(Q,1q)*b000!Q$(Q,A	*QF3uad??A	>#%&F8, , , ,rw   c                  M  ^	^
^ [        [        S 5        [        [        S 5        [        S[        S9m
U4S jn U
4S jm[	        S5      b   eU " [	        [        [        5      5      [        / 45      (       d   eU " [	        [        [        5      S-   5      [        S-
  / 45      (       d   eU " [	        [        [        5      [        [        S5      -   S	-   5      T
S-  T
S	-  -   S	-   T
T
S
-  [        -
  /45      (       d   eU " [	        [        [        5      [        [        S5      -  S	-   5      [        S-  S-
  / 45      (       d   eU " [	        [        [        5      [        S-   [        SS5      -  -   5      [        S-  [        S-   S	-  -
  / 45      (       d   eU " [	        [        [        5      [        [        S-   5      -   [        S	[        -  5      -   5      S[        S	5      -  [        -  S	[        -  -
  S-   / 45      (       d   eU " [	        [        [        5      [        [        S-   5      -   S	-   5      S[        -  S-
  / 45      (       d   eU " [	        [        [        5      [        [        S-   5      -   [        S[        -
  5      -   5      S[        S	-  -  S[        -  -
  / 45      (       d   eU " [	        [        [        [        5      -  [        [        [        5      -  -   [        [        [        5      -  -   [        [        [        5      -  -   5      [        [        [        5      -  [        [        [        5      -  -   S	-  [        [        [        5      -  [        [        [        5      -  -   S	-  -
  / 45      (       d   eU " [	        [        [        5      [        S[        -
  5      -   5      S	[        -  S-
  / 45      (       d   eU " [	        [        [        5      [        S[        -
  5      -   S-
  5      [        S	-  [        -
  S-   / 45      (       d   eU " [	        [        [        5      [        S[        -
  5      -   [        S	[        -   5      -   5      S[        S	-  -  S	[        -  -
  S-   / 45      (       d   e[	        [        [        5      [        S[        -
  5      -   [        S	[        -   5      -   S-
  5      S[        S-  -  S[        S-  -  -   S[        S	-  -  -   S[        -  -
  S-   / 4S[        S-  -  S[        S
-  -  -
  S[        S-  -  -   S[        S	-  -  -
  S-   / 44;   d   e[	        [        [        5      [        S[        -
  5      -   [        S	[        -   5      -   [        SS	[        -  -
  5      -
  5      S[        S-  -  S[        S-  -  -   S[        S	-  -  -   S[        -  -
  S-   / 4:X  d   eU " [	        [        [        5      [        [        S-   5      -   5      [        R                  / 45      (       d   e[        [        5      [        [        S-   5      -   [        S[        [        5      -
  5      -   nU " [	        U5      S[        S	-  -  S[        -  -
  / 45      (       d   e[!        [#        USS 95      [        R$                  [        SS5      1:X  d   e[#        U5      / :X  d   e[!        [#        [        [        5      [        [        S-   5      -
  [        S[        [        5      -
  5      -   5      5      [        R$                  [        SS5      1:X  d   eU " [	        [        [        5      [        [        S-   S5      -   S	[        [        5      -  -   [        5      [        S!5      / 45      (       d   eU " [	        [        [        S[        -
  -  5      [        S-   [        SS5      -  -   5      [        S-  [        S-  -
  [        S-  -
  S	[        S	-  -  -   [        -   S-
  / 45      (       d   eU " [	        [        [        S[        -
  -  5      S	[        [        5      -  -   [        5      S[        -  [        -  [        -   S[        -  -
  / 45      (       d   eU " [	        [        [        5      [        S[        -
  5      -  S	-   [        5      [        S	-  [        -
  S-   / 45      (       d   e[#        ['        [        [        [        S
-   5      5      5      S/:X  d   e[#        ['        [        [        [        S-
  5      -   S5      5      S/:X  d   e[#        ['        S[        [        S	[        -  S-
  5      -   5      5      / :X  d   e[!        [#        ['        [        S[        -  S
-   5      S	-
  [        5      5      5      [        R                  * [        S	5      1:X  d   e[!        [#        ['        [        S	[        -  S-
  5      [        [        S-
  5      -
  S	5      5      5      [        S5      [        S"5      1:X  d   e[#        ['        [        [        S#-   5      S	-   [        S[        -
  5      5      5      S$/:X  d   e[#        S	[        -  S-
  [        SS5      -  S-
  5      S/:X  d   e[!        [#        [        S-   [        [        S-  S[        S-  -  -   [        -
  S5      -
  5      5      [        S%S	5      [        S%S5      1:X  d   e[!        [#        [        S	[        S	-  -  S#-
  5      S[        -
  -
  5      5      [        S5      * [        S	5      1:X  d   e[#        [        S	[        -  S-   5      [        [        S-   5      -
  [        [        S-   5      -
  5      S&/:X  d   e[#        [        [        S-   5      [        S	[        -  S-
  5      -   S[        [        S-
  5      -  -
  5      S/:X  d   e[#        [        [        5      [        [        S#-
  5      -  S'-
  5      S/:X  d   e[#        [        [        S-
  5      [        [        5      -   S-
  5      S/:X  d   e[#        [        S[        S	-  -  S-   5      S[        -  S	-   -
  5      S&/:X  d   e[#        [        [        5      S	-
  S-
  5      S(/:X  d   e[#        [        [        S-
  5      [        [        5      -
  S-
  5      / :X  d   e[#        [        [        S-
  5      [        -
  S#-   5      S)/:X  d   e[#        [        [        S	-
  5      S-
  5      S*/:X  d   e[#        [        S+[        -  [        [        S	-  S-
  5      -
  5      S#-
  5      S/:X  d   e[#        [        [        5      [        [        S-
  5      -
  [        [        [        5      5      -   5      / :X  d   e[        S	[        -  S-   5      [        [        5      -  [        S	S[        -  -   5      -
  n[)        U5      S&   n[#        U5      / :X  d   e[#        U5      / :X  d   e[#        US
[*        -  -   5      [        S%S,5      /:X  d   e[#        US
[*        -  -   5      / :X  d   e[	        [        [        S-   S5      [        [        S5      -
  5      [        S-  [        S-  -
  S[        S	-  -  -
  S[        -  -
  S-
  * / 4:X  d   eU " [	        [        [        [        S5      -   [        [        S5      S	-  -   [        [        5      -   [        5      T
S-  T
S	-  -   T
-   [        [        5      -   T
T
S-  [        -
  /45      (       d   eU " [	        [        [        5      [        [        S5      -   [        -   5      T
S-  T
S	-  -   [        -   T
T
S
-  [        -
  /45      (       d   e[#        [        [        5      [        [        S5      -   S	-
  5      S/:X  d   e[        [        S- 5        [        [        S. 5        [#        [        [        [        [        S5      -   5      [        [        [        -
  S5      -   [        5      [        [        [        SS5      -  [        -   [        SS	5      -  -   /:X  d   eU " [	        [        [        5      [        [        S-   S5      [        [        S	-   5      -  -
  S	-   5      T
S)-  ST
S-  -  -   S/T
S
-  -  -   S'T
S-  -  -
  S0T
S-  -  -
  ST
S-  -  -
  S1T
S	-  -  -
  S2T
-  -
  S3-
  T
T
S	-  [        -
  /45      (       d   e[        [        S-   S5      [        [        S5      -   n[	        U5      S	[        -  S-   / 4:X  d   e[        [        5      [        [        S-   5      -   [        S[        -
  5      -   S
[        S5      -  S-  -
  nU " [	        U5      S4[        S-  -  S5[        S-  -  -   S6[        S	-  -  -   S7[        -  -
  S8-   / 45      (       d   eU " [	        [        [        S5      [        [        S5      S-  -   S-
  5      T
S-  T
-   S-
  T
T
S-  [        -
  /45      (       d   eU " [	        [        [        S	5      [        [        S	5      S-  -   S-
  5      [        S-  S	[        S	-  -  -   [        -   S-
  / 45      (       d   e[	        [        S9-  5      b   eU " [	        [,        [        [        [        -   S5      -   [        [        [        -   S5      S-  -   5      T
S-  T
-   [,        -   T
T
S-  [        -
  [        -
  /45      (       d   eU " [	        [        [        [        [        -   S5      -   [        [        [        -   S5      S-  -   [        5      T
S-  T
-   [        -   T
T
S-  [        -
  [        -
  /45      (       d   eU " [	        [        [        [        [        -   S5      -   [        [        [        -   S5      S-  -   [        5      T
S-  T
S-  -   T
-   [        -
  T
T
S-  [        -
  [        -
  /45      (       d   eU " [	        [        [        S-
  S5      [        [        S-   S5      -   [        S	S5      -   5      T
S-  SS	[        SS5      -  -  T
S-  -  -   T
S-  -   S)S	[        S	S5      -  -  T
S-  -  -   S)S	[        SS5      -  -  T
S	-  -  -   SS	[        SS5      -  -  T
-  -   S-   T
T
S-  [        -
  S-   /45      (       d   e[        [        S: 5        [#        [        [        S5      [        [        S5      -   S	-
  5      S/:X  d   e[        [        5      [        [        S-   5      -   [        S[        -
  5      -   S
[        S5      -  S-  -
  nU " [	        U5      S[        -  S-
  S;[        S-  -  S<[        S	-  -  -   S=[        -  -   S>-
  -  / 45      (       d   e[        S?5      m	[#        U5      T	:X  d   eU " [	        [        [        [        [        S-   S5      -   5      [        [        S-   S5      -
  S	-
  5      T
S-  T
S	-  -
  ST
-  -
  S-
  T
T
S-  [        -
  S-
  /45      (       d   e[        [        S	-  S-   S5      [        [        S	-  S-
  S5      -
  S	-
  nU " [	        U5      T
S-  S)T
S-  -  -
  S@T
S-  -  -   SAT
S	-  -  -
  SAT
-  -   SB-
  T
T
S-  [        S	-  -
  S-
  /45      (       d   e[        [        [        [        S-   S	5      -   5      [        [        S-   S5      -
  S	-
  nU " [	        U5      T
S
-  S	T
S-  -  -
  S#T
S-  -  -
  ST
S-  -  -
  SCT
S	-  -  -   ST
-  -   S-   T
T
S-  [        -
  S-
  /45      (       d   eU " [	        USDSE9T
S
-  SFT
S-  -  -
  SGT
S-  -  -   SHT
S-  -  -
  SIT
S	-  -  -   SJT
-  -
  SK-   T
T
S	-  [        -
  [        [        S-   5      -
  /45      (       d   eU " [	        [        [        [        [        [        S5      S-
  5      -   5      [        [        S
5      -
  S	-
  5      T
S'-  S	T
S-  -  -
  ST
S#-  -  -
  ST
S
-  -  -
  T
S-  -   ST
S-  -  -   SLT
S	-  -  -   SMT
-  -   S+-   T
T
S
-  [        -
  /45      (       d   e[	        [        [/        [        5      S5      [        -  [        [        S-   S5      -  S-
  5      [        SN-  [        S-  [/        [        5      S-  -  -
  S[        S	-  -  [/        [        5      S-  -  -
  S[        -  [/        [        5      S-  -  -
  [/        [        5      S-  -
  * / 4:X  d   e[	        [        SO5      5      b   eU " [	        [        SO5      [        5      T
S	[        -  -  T
-   S-   T
T
S-  [        -
  [        -
  /45      (       d   e[	        [        [        R0                  [        -  -  [        -   [        5      [        S[        -  -  [        S	-  -
  / 4:X  d   e[3        [#        [        [        5      [        -  [        S-  -   S-
  [        5      5      S:X  d   e[3        [#        SP[        S-  -  SQ[        S	-   [        SS5      -  -  [        S	-  -  -   SR[        S	-   [        S	S5      -  -  [        -  -
  S[        -  -
  SS-   [        SST95      S:X  d   e[        SU5      n[#        U[        5      S	[        S	5      S-  -  S*[        -  S*[        [        S	-  5      -  -   [        S5      S-  -  -  [        S5      -  SV-  SW[        -  SX-  [        SW5      SX-  -   [        S5      S-  -  [        S5      * S	-  [        S5      [*        -  S	-  -
  -  -   S	[        S	5      S-  -  S*[        -  S*[        [        S	-  5      -  -   [        S5      S-  -  -  [        S5      -  SV-  SW[        -  SX-  [        SW5      SX-  -   [        S5      S-  -  [        S5      * S	-  [        S5      [*        -  S	-  -   -  -   S	[        S	5      S-  -  S*[        -  S*[        [        S	-  5      -  -   [        S5      S-  -  -  [        S5      -  SV-  SW[        -  SX-  [        SW5      SX-  -   [        S5      S-  -  -   /:X  d   e[        [        S-   S5      [        [        S5      [        [        S5      -   -
  nU " [	        U5      ST
S"-  -  ST
S,-  -  -   T
S-  -   S-
  T
T
SN-  [        -
  /45      (       d   eU " [	        US	-
  5      ST
S"-  -  ST
S,-  -  -   S
T
S)-  -  -   T
S-  -   S'T
S-  -  -   S
T
S
-  -  -   S'T
S-  -  -   S'T
S-  -  -   S#-   T
T
SN-  [        -
  /45      (       d   eU " [	        [        [        S5      [        [        S-   S5      S	-  -
  [        [        S	-   S5      -   5      T
SYT
S-  -  SZT
S-  -  -   S[T
S#-  -  -   T
S
-  -
  S\-
  -  T
T
S-  [        -
  S-
  /45      (       d   eU " [	        [        [        S5      [        [        S-   S5      -   [        [        S	-   S5      S	-  -
  5      SXT
S"-  -  S]T
S'-  -  -   SQT
S,-  -  -   SWT
S)-  -  -   S^T
S-  -  -
  S_T
S-  -  -
  S\T
S#-  -  -
  S`T
S-  -  -   SaT
S-  -  -   SbT
-  -
  T
T
S-  [        -
  S-
  /45      (       d   eU " [	        [        [        S5      S	-  [        [        S-   S5      -
  [        [        S	-   S5      -   5      SbT
S"-  -  SaT
S'-  -  -
  S\T
S,-  -  -   SWT
S)-  -  -
  S`T
S-  -  -   S_T
S-  -  -
  SQT
S#-  -  -   S^T
S-  -  -   S]T
S-  -  -
  SXT
-  -   T
T
S-  [        -
  S-
  /45      (       d   eU " [	        [        [        S5      S	-  [        [        S-   S5      -
  [        [        S	-   S5      -   S	-
  5      SbT
S"-  -  ScT
S'-  -  -   SdT
S)-  -  -   SeT
S-  -  -   SfT
S-  -  -   SgT
S#-  -  -   ShT
S
-  -  -
  SiT
S-  -  -
  SjT
S-  -  -
  SkT
S-  -  -
  SlT
S	-  -  -
  SmT
-  -
  Sn-
  T
T
S-  [        -
  S-
  /45      (       d   e[#        [        [        5      [        [        S-   5      -   [        S[        -
  5      -
  [        S	[        -   5      -
  5      m	[3        T	5      S:X  a  [5        T	S&   5      S S So:X  d   e[7        Sp5      nUS	[        -  S	[        -  -   [        [        S	-  [        S	-  -   5      -   -
  nU[        S	S#5      -  [        S	5      U-  SF-  -
  m	[#        U[        SS 9n[9        U5       Ha  n[#        [        [        -  R;                  [        U5      R=                  [        5      [        SSSq9n[?        U	4Sr jU 5       5      (       d  Ma    O    e[#        [        [        S-   5      [        [        S5      -   S	-
  5      [        Ss5      :X  d   e[#        [        [        [        S-   5      5      [        [        SS5      -  -   S	-
  5      [        St5      :X  d   e[#        [        [        5      [        [        [        5      S-   S5      -   S	-
  5      [        Su5      :X  d   e[        Sv5      nU " [	        U5      T
T
S
-  * [        S5      T
S
-  -  [*        -  -   SwS	[        S	S5      -  -  S[        SS5      -  -  T
S-  -  -
  SxS'[        SS5      -  -  T
S-  -  -   SyS	[        S	S5      -  -  S[        SS
5      -  -  T
S-  -  [*        -  -
  SzT
S-  -  -
  Sz[        S5      -  T
S-  -  [*        -  -   S{S|[        SS5      -  -  T
S	-  -  -   S}-
  S}[        S5      -  [*        -  -   * -  T
T
S-  S~[        -  -
  [        S5      [        S[        S	-  -  S[        -  -
  S-   5      -  -
  S-   /45      (       d   e[#        U5      / :X  d   e[        [        S5      [        [        S5      -
  [        [        S5      -   nU " [	        U5      T
SN-  ST
S"-  -  -   ST
S,-  -  -   T
S-  -   [        -
  T
T
SN-  [        -
  /45      (       d   e[        [        S5      [        [        S5      -   [        [        [        -  S5      -   nU " [	        U5      T
[        -  T
S'-  * ST
S,-  -  [        -  -
  ST
S)-  -  [        S	-  -  -
  T
S-  [        S-  -  -
  ST
S-  -  [        S	-  -  -
  SVT
S#-  -  [        S-  -  -   ST
S
-  -  [        S-  -  -
  ST
S-  -  [        S-  -  -
  ST
S-  -  [        S-  -  -
  [        S
-  -
  -  T
T
S-  [        [        -  -
  /45      (       d   e[        [        S 5        ['        [        [        S5      S-  -  * [        [        S5      S-  -  -   S[        S5      S-  -  * S%[        S5      S-  -  S[        S5      S-  -  -  -
  5      nU " [	        U5      T
S-  * T
S-  -   S[        S5      S-  -  -
  S%[        S5      S-  -  S[        S5      S-  -  -  -
  T
T
SN-  [        -
  /45      (       d   e[        [        5      S-
  m
[	        T
S	-  T
S-  -
  5      [        S-  S
[        S	-  -  -
  S[        -  -   S-
  / 4:X  d   e[	        [        [        S-   -  S-   S-  [        5      b   e[        [        [        -
  5      [A        [,        [        [        [        -
  5      -  5      -  [A        [,        [        [        [        -
  5      -  5      -
  n[#        U[        5      [        S-
  /:X  d   e[	        U5      b   eg )Nc            	          [        [        [        5      [        [        S-   5      -   [        S[        [        5      -
  5      -   S-   5      $ Nr   r|   )rQ   r.   ri   r   rw   ru   r   test_unrad1.<locals>.<lambda>P  s2    d1gQU#d1tAw;&77!;<rw   c                      [        [        [        5      [        S-   [        SS5      -  -   S[        [        5      -  -   5      $ )Nr   r|   rz   )rQ   r.   ri   r   rj   r   rw   ru   r   r   R  s/    d1gQ!Q//!DG);<rw   r   )clsc                    > [        U S   5      [        US   5      :X  d   eUS   (       a  T" X5      $ U S   R                  5       nUS   R                  5       nX#U* 4;   =(       a    U S   US   :H  $ Nr   r   )boolr  )rvr   re   ra   s_checks       ru   r   test_unrad1.<locals>.checkY  sp    BqE{d3q6l***q62##qELLNFMMOG|/1Q/rw   c           	      n  > [        U 5      n U S   R                  [        5      n[        [        UT/[	        U5      -  5      5      nU S   R                  U5      R                  5       U S   S   R                  U5      U S   S   R                  U5      /4n US   R                  U5      R                  5       US   S   R                  U5      US   S   R                  U5      /4n[        U S   5      [        US   5      [        US   * 5      4;   =(       a    [        U S   5      [        US   5      :H  $ )Nr   r   )r   atomsr   zipr   r   r  r  )r&  r   rd   repsr   s       ru   r'  test_unrad1.<locals>.s_checka  s   "XqEKKCA3s1v:&'ejj%%'"Q%(--*=r!uQx}}T?R)ST1v{{4 '')CF1INN4,@#a&)..QUBV+WX2a5zc#a&k3Aw<88 &1J#c!f+%	&rw   r   r|   rz   r   r{   rO  r   r   rm  r   r\  ix  i  i  i  r  i  i	  i     ro  r4        Fr   z32*sqrt(x)*(x + 1)**(1/3) + x - 4*y + (x + 1)**(2/3)rN  r   ir   r   r   rw  r   r   r^  r9  c                      [        [        [        5      [        [        S5      -   [        [        S-   S5      -   S-
  5      $ )Nr|   r   r{   rz   )rG   r.   ri   r-   r   rw   ru   r   r     s-    d1gQ
"T!a%^3a78rw   c                  Z    [        [        S5      * [        [        5      [        -  -   5      $ r  )rG   r.   r(   ri   r   rw   ru   r   r     s    tAwha.B(Crw   r0  rg        r~  i	=  iȣ im i { i  r  c                      [        [        [        S5      [        [        S5      -   [        [        S5      -   R                  [        [        S-  [        -
  S-   5      5      $ )Nrz   r|   r   r{   r   )rQ   r-   ri   r   r   rw   ru   r   r     s?    tAqzDAJ&a399!QTAX\JKrw   i5  i  i i D z
        [4/5, -1484/375 + 172564/(140625*(114*sqrt(12657)/78125 +
        12459439/52734375)**(1/3)) +
        4*(114*sqrt(12657)/78125 + 12459439/52734375)**(1/3)]r1  rx  rd  rv  T)_reverser  r|          rb  rI  rs  r   z!(x+y)**(2*y/3) + (x+y)**(1/3) + 1 @      _unradz9-x + (7*y/8 - (27*x/2 + 27*sqrt(x**2)/2)**(1/3)/3)**3 - 1ra  i   iW  i   i  r{  i  iX  i+  i  i     i  i  i@H  i i i i Z	 i2 i` il i@HM i9  i z0.73r  r   r   c              3   \   >#    U  H!  oT-
  R                  5       R                  v   M#     g 7fr   )r  is_zero)r   ra   r   s     ru   r   test_unrad1.<locals>.<genexpr>K  s"     51aC!))1s   ),z_
        [(-11/(9*(47/54 + sqrt(93)/6)**(1/3)) + 1/3 + (47/54 +
        sqrt(93)/6)**(1/3))**3]a<  
        [(-sqrt(-2*(-1/16 + sqrt(6913)/16)**(1/3) + 6/(-1/16 +
        sqrt(6913)/16)**(1/3) + 17/2 + 121/(4*sqrt(-6/(-1/16 +
        sqrt(6913)/16)**(1/3) + 2*(-1/16 + sqrt(6913)/16)**(1/3) + 17/4)))/2 +
        sqrt(-6/(-1/16 + sqrt(6913)/16)**(1/3) + 2*(-1/16 +
        sqrt(6913)/16)**(1/3) + 17/4)/2 + 9/4)**3]z]
        [(-(81/2 + 3*sqrt(741)/2)**(1/3)/3 + (81/2 + 3*sqrt(741)/2)**(-1/3) +
        2)**2]a  
        -x + (1/2 - sqrt(3)*I/2)*(3*x**3/2 - x*(3*x**2 - 34)/2 + sqrt((-3*x**3
        + x*(3*x**2 - 34) + 90)**2/4 - 39304/27) - 45)**(1/3) + 34/(3*(1/2 -
        sqrt(3)*I/2)*(3*x**3/2 - x*(3*x**2 - 34)/2 + sqrt((-3*x**3 + x*(3*x**2
        - 34) + 90)**2/4 - 39304/27) - 45)**(1/3))   rt  f   iT  i06  rf  i`2 i2  iy  ix i,  i*  c                      [        [        [        S5      [        [        S5      -   [        [        [        -  S5      -   5      $ )Nr|   r{   )rQ   r-   ri   rj   r   rw   ru   r   r   q  s)    5ad1aj04!Q<?@rw   )!r_   r   r   r   rQ   r.   ri   r-   r   ra   rb   rc   rj   rd   r   r   r   rG   r   r   rS   r   rl   r(   r   r   rv   r   reversedr   r	   anyr%   )r   r   rk   rh   re   r  r  xir  r   r   r'  s            @@@ru   test_unrad1rK  N  s@&   
 != >
 != > 	A0	& 8tAw	
B   tAw{#	
Q   tAwa+a/0	
A1q1adQh-(* * * *tAwtAqz)A-.	
AB   tAw!a%(1a.!889	
AQ
	B! ! ! !tAwa!e,tAaCy89	DGA!	a	$& & & &tAwa!e,q01	A2   tAwa!e,tAE{:;	
1a4!A#r   qay1T!W9,qay81T!W9DE
DG)aQi
!	#qay1T!W9'<q&@	@"EG G G GtAwa!e,-	
1q"   tAwa!e,q01	
AB   tAwa!e,tAE{:;	
1a4!A#	2       a4A;&a!e4q89	AqD3q!t8	d1a4i	'$q&	03	6;	AqD3q!t8	d1a4i	'$q!t)	3c	92>>@ @ @ @ a4A;&a!e4tA!G}DE	AqD2ad7	SAX	%A	-	2B78 8 8tAwa!e,-r{;;;;	a4A;	a$q'k!2	2Br	AqD1Q3   uRu%&1668Ar?*CCCC9??uT!WtAE{*T!d1g+->>?@	
!R!" " " tAwa!eQ/!DG);Q?	
@	A2FH H H HtAq1uI!a%(1a.)@@A	
A1q!t	a1f	$q	(1	,b13 3 3 3tAq1uI472A6	
1QQqS"   tAwtAE{*Q.2	
AAr   
 AtAE{#$+++AQUOQ'(QC///Aq4!a=()*b000uRQqS1W)1-./QUUFAaD>AAAuRQqS1WQU3Q789adAbE]JJJDQK!OT!a%[12rd:::!A#'HQN*Q./B4777uQUT!Q$1a4-!"3Q7789	"a(2q/*+ + +uT!AqD&1*%Q/01qteQqT]BBBacAga!e,tAE{:;sBBBa!etAaC!G},qa!e}<=!DDDaa!e$r)*rd222a!etAw&*+s222a1fqj!QqS1W-.1#555a1q!bT)))a!etAw&*+r111a!eq1$%"---a!eq!bT)))bdT!Q$(^+,q01aS888a4A;&d1g672=== 	QqS1Wd1gQ1W-Aq	!A8r>>8r>>QqS>hr2.////QqS>Ra!eQ$q!*,-
Q$A+!Q$
1
$q
()22/ / / / q41:~Q
A5Q?C	
A1q47	"Q1qM24 4 4 4 tAwa+a/0	
A1q1adQh-(* * * *a41:%)*qc111
 !9 :  CDa$q!*n%d1q5!n4a8	QA"Xa^33=5 5 5 5tAwa!eQQU!;;a?@	
B1a4"QT'	!Bq!tG	+bAg	5AqD	@3q!t8	KA

1qM	#$ $ $ $ 	QUAa#A8!a}$$$
q'DQK
$q1u+
-$q'	!
;Br	q!tfQTk	!F1a4K	/&(	:V	CRHJ J J JtAqzDAJM1A56	
AA1a4!8}%' ' ' 'tAqzDAJM1A56	
A!Q$	Q	#% % % %C=   q4Aq>)DQNA,==>	
AA1a4!8a<()+ + + +q4Aq>)DQNA,==qA	
AA1a4!8a<()+ + + +q4Aq>)DQNA,==qA	
A1q1	q!Q$(Q,/02 2 2 2tAE1~QUA6aCD	
A!Xa^##AqD(	(1a4	/"QA5F2Fq!t2K	K
1hq!nQT!
"$%a!Q&7$7$9
:<=
>@A1a4!8a<?P	RS S S S  !L M
 ad1aj(1,-!444
q'DQK
$q1u+
-$q'	!
;Br
A#'DAIad
*VAX5=	>CE E E E
 A BC 9tAQUA./$q1ua.@1DE	
A1qs	Q	AqD1HqL 124 4 4 4 	QTAXqDA1--1Aq	
A1a4"QT'	!Bq!tG	+bd	2R	7	
AqD1a4K!O	    	Qa!eQ 4Aq>1A5Aq	
A!Q$1a4	!AqD&	(2ad7	2RT	9B	>	
AqD1HqL	    q4(	
A1a4"QT'	!C1H	,s1a4x	7#a%	?"	D	
AqD1HtAE{"#	%& & & & tAT!QZ!^ 445Q
BQFG	
B1a4!AqD&	 1QT6	)AqD	01QT6	9Bq!tG	C
1

q!tax=	"# # # #
 d1gq!!#DQN2Q67
R%!Q$tAwz/
!AadF47A:$5
5!DGQJ
F
q'1* 	<    678@@@q<=qA	
QqSA	Aq!tax!|,-/ / / / QVVAX"A&1qs8ad?B*????
 uT!WQYA%)1-.!333uT!Q$Yq1ux1~&=!=ad!BBa!ehq!n$$Q&'),Q/14567G HKLM M M 
F	GBQ<	AaDFRTBtAqDzM)QqT!V44QqT9"<Ac		#s
Ad1f@ !!uQwa14@6 	6781Q46{BqD
41:E1aD! 8!!"18&&(8),/E#I	#s
-d1f, !!uQwa14,686781Q46{BqD
41:E1aD! 8!!"18&&(8),/E#I#s
,Bad1f+M8N	O O O O 
a!eQ41:Q
2	3Br	
1b51QU7	QT	!A	%1b519~68 8 8 8rAv	
1b51QU7	Qq"uW	$q!t	+bAg	5!Q$	>AqD	H
1a4

B^	%& & & & tAqzDQN1$44tAE1~EF	
DAIAqD 2ad7*QT1D8	9	
AqD1HqL	    tAqzDQN2T!a%^A5EEF	QUT!R%Z	$q"u*	,s1b5y	8419	DQT	
AI
 $QT	
*,/1H
57:1u
=?@!Q$(	C
 ?	    tAqz!|d1q5!n4tAE1~EF	QUSBY	ae	+c!R%i	7$q!t)	CQT	
AI
 $QT	
*,0AI
68;A
>@A1a4!8	D
 @	    tAqz!|d1q5!n4tAE1~EIJ	QUT!R%Z	%2+	-q!t	;fQTk	Iq!t
QTk
"$+AqDL
13:1a4<
@BI!Q$,
O
!Q$,
 
#%+
,./AA->	@A A A A Q$q1u+%QU"1q5k* +Cs8q=RAZ^v555 	sA	
acAaCi$q!tad{++	,B
HQN
T!WQYr\
)Cb!5!Aqk1Q3**Q#((+QeL51555 
 	ta!etAqz)A-.! 5# 3$ $ $ $ d1q5k"QA%66:;q B6 @7 7 7 7 a4Q!Q//!34 ; 9    
 6 
7B
 r	
adUT!WQT\!^#c!Xa^*;&;Ax1~<M&MaQRd&RR
2x1~ad"#%(HQN):%:1hq!n;L%LQPQT%QRS%STVZ[\^_[_V_`T!WQT!#BA$66q!t;<>DE 	tAwq  
 q!tc!e|d1gd5A:q<< 7 /     !	"# # # # 9??	ad1aj	 41:	-BrrEAaeGOa2g%1,q01aeai.AC C C C	ad1aj	 4!Q<	/BrA#2v!R%	)AaeGAqDL81a419DAvad{#%'1WQT\245adF1a4K@BCAqD&A+NAvad{#%&T* +-.1qs
O=> > > > @B 
Q1a[L1qtAv;&QqT!Vad1f~a!A$q&k7Q(Q	RBr
Q$AAaDF	#rQqT!VnQ1a[&@	@1aeai.QS S S S 	Q!AA1!Q$1a4-!A#"5"92!>>>>!QU)a-2&*222 
a!eS4A;'	'#aQUm*<	<BQ<AE7"""9rw   c                      [        S[        SS[        S-  -  -
  5      -   5      [        S[        SS[        SS[        S-  -  -
  5      -  -   5      -   -  -
  n [        U 5      [        R                  /:X  d   eg )Nr   r   rz   )r.   ri   rG   r   r   r   s    ru   test_unrad_slowrN    sk     q4AadF
##
$q!d1qa!AqD&j9I7I3I.J*J'K
KB9   rw   c            	         [        [        [        S-  S[        S-  -  -
  S5      S-   [        -
  5      [        SS5      /:X  d   e[        [        [        S-   S5      [        [        S-  S-
  S5      -   S-   5      SS[	        [        S-  [        S-  -   S[        S-  -  -   S[        S-  -  -   S[        -  -   S-   S	5      S-  -   /:X  d   eg )
Nr|   rz   r   r{   r   r   r  r   r   )rG   r-   ri   r   r[   r   rw   ru   test_unrad_failrP    s     adQq!tVmQ'!+a/0Xa^4DDDDa!eQ$q!tax"33a78
BA1qAv-!Q$6A=A1EqHH=J J J Jrw   c            	        ^ [        S5      u  mpnUTS-  -
  U S-  -
  nU [        U5      * [        [        U5      S-  S-   5      -  T[        U5      * [        U5      -  [        [        U5      S-  S-   5      -  0n[        X45      S:X  d   e[        [	        TS5      TS05      SL d   e[        [        TS5      TS05      SL d   e[        [	        TS:  S5      TS05      SL d   e[        [	        TS:  S5      TS05      SL d   e[        [	        TS:  S5      TS05      SL d   e[        [	        TS:  S5      TS05      SL d   e[        [	        TS-   TS-  S-   5      TS05      SL d   e[        TS-
  TS-  S-
  /TS5      SL d   e[        TS-
  TS-  S-
  /TS5      SL d   e[        [        TS-  S-
  5      TS5      SL d   e[        S0 5      SL d   e[        STS-
  /TS5      SL d   e[        SST/TS5      SL d   e[        U TS5      SL d   e[        TS-   TSSS	9SL d   e[        TS-   TSSS	9SL d   e[        [        S
T-  5      T[        [        S5      S-  5      05      SL d   e[        [        S
T-  5      T[        [        S5      S-  5      [        [        -  -   05      SL d   e[        STS-  -  TS5      SL d   e[        [        U4S j5        [        [        U4S j5        g )Nz
x, y, r, trz   r   TFr   g|=r  	numericalr}  r{   r  c                     > [        T S5      $ r  rR   r  s   ru   r   test_checksol.<locals>.<lambda>  s    x1~rw   c                     > [        / T S5      $ r  rU  r  s   ru   r   rV    s    xAq1rw   )r   r.   r7   rR   r   r   rB   r%   r&   r   r   r_   r   )rj   r   rl   r   dict_var_solnri   s        @ru   test_checksolrY    s2   &JAqQ	
QTAqDB$q'	DQQ$77	DG8CF?4A	A..0MB&$...Bq%L1e*-555Bq%L1e*-666Bq1udOaV,444Bq1udOaV,555Bq1ue$q!f-555Bq1ue$q!f-666Bq1uadQh'!Q0D888QUAqD1H%q!,444QUAqD1H%q!,555DANAq)T111Ar?d"""UAENAq)U222S!QKA&%///Aq!%%%AeGQT2d:::AeGQU3u<<<C1I3tAwqy>23u<<<C1I3tAwqy>AbD#89:eCCCAadFAt$---
:-.
:12rw   c                     [        [        S-
  5      S[        4:X  d   e[        S5      S:X  d   e[        [        S[        -  5      S-
  [        5      S[        S5      -  [        4:X  d   e[        [        S[        -  [        [        -  -   5      S-
  [        5      [        S-   [        S5      -  [        4:X  d   e[        [        [        5      [        S4:X  d   eg )Nrz   )rz   r   r   r|   r   )rP   ri   r%   r&   ra   r   rw   ru   test__invertr[    s    1q5>aV###1:3qs8a<##a&!}4443qsQqSy>A%q)q1uc!fna-@@@@1a=QF"""rw   c                     [        [        * [        -  S[        -  [        [        5      -  -   [        5      [	        [        S-  5      /:X  d   e[        [        [        -  5      / :X  d   e[        [        [        -  S-
  5      [	        [        [        S5      5      5      /:X  d   e[        [        S-
  [        S-
  -  [        S-
  [        S-
  -  -  5      S/:X  d   eg )Nrz   r|   r   )rG   ra   ri   r&   r%   r$   r   rw   ru   test_issue_4463r]    s    !A!CF
"A&3qs8*444A;"A?s8CF#3455551q51q5/a!ea!e_561#===rw   c                     [        S5      u  pp#pEpgppppnnXX%XzU4nUUU-  -   X#-  -
  USU-  SU-  -   SU-  -   -  XV-  -
  UU-  -
  USU-  SU-  -   SU	-  -   -  X&-  -
  Xx-  -
  USU-  SU-  -   SU-  -   -  XX-  -
  X-  -
  U
SU-  SU-  -   SU-  -   -  X|-  -
  X-  -
  USU-  SU-  -   -  X-  -
  /n[        [        UUSSSS95      S:X  d   eg )Nza:rr   TF)r  r   r   )r   r   rG   )ra   rb   rc   rd   re   r   r   rg   r   jrf   lrn   rs   r  rh   rm   r   r  r   s                       ru   test_issue_5114_solversra    s.   ;B5>8A!aA!aAq qQDqs7QS=qsQqSy1Q3!#!#	1Q319qs?ac!AC'	1Q319qs?ac!AC'	1Q319qs?ac!AC'	1Q319C uS$t55IJaOOOrw   c                  r   [        S5      u  pp#pE[        S5      u  pgppX-
  U-
  X#-
  U-
  X4-   U-
  U * U-   U-   SU -  SU-  -
  SU-  -
  SU-  -
  US-  -
  S-   U* U	-   U* U-   SU-  SU-  -   SU-  -   U
-
  USU-  -
  SU-  -   U-   4	nXU-   USU-  SU-  -
  S	U-  -
  S
U-  -
  S-   X2U-
  XU-
  X* S-  SU-  S-  -   US-  -
  XU
SU-  SU-  -   SU-  -   0/nXXXgX4n[        U/UQ7SSSS.6U:X  d   e[        U/UQ7SSS.6U VVs/ s H0  n[        U Vs/ s H  nUR                  " UU5      PM     sn5      PM2     snn:X  d   e[        U/UQ7SS06/ :X  d   e[        U/UQ76 / :X  d   eU Vs/ s H  nUR	                  US   5      PM     snSSX%-
  U* U-   SSSSS/	:X  d   eg s  snf s  snnf s  snf )NI1:7dI1,dI4,dQ2,dQ4,Q2,Q4r   rz   r|   r   r  r  r   r   r0  TF)r  r   r~   r  r   r  r   )r   rG   r   getr   )I1I2I3I4I5I6dI1dI4dQ2dQ4Q2Q4re   r   vra   r   eis                     ru   test_issue_5849ru    s|    %V_BBB!()@!ACc 	"
"
"	b2
2"qtad"SU*R/	c		c		"qtadR
QrT	AbD3
	A RB2"	qt	#b	(RbA"QQ"qtad C 	#*A<Q<t5t<CCC1Q1t51146614AA&AqquuQ{A&'66 6 6 6$Q$t$***<Q<2
 B GGA!"Arwb!Q1a HI I I '66s   F.F)3F.2F4)F.c                  :   [        S5      u  pp#pE[        S5      u  pgppX-
  U-
  X#-
  U-
  X4-   U-
  U * U-   U-   SU -  SU-  -
  SU-  -
  SU-  -
  US-  -
  S-   U* U	-   U* U-   SU-  SU-  -   SU-  -   U
-
  USU-  -
  SU-  -   U-   4	n[        XX:XXxU	5	      / :X  d   eg)a	  Same as test_issue_5849 but solved with the matrix solver.

A solution only exists if I3 == I6 which is not generically true,
but `solve` does not return conditions under which the solution is
valid, only a solution that is canonical and consistent with the input.
rc  rd  r   rz   r|   r   Nr   rG   )rg  rh  ri  rj  rk  rl  rm  rn  ro  rp  rq  rr  re   s                ru   test_issue_5849_matrixrx    s     %V_BBB!()@!ACc 	"
"
"	b2
2"qtad"SU*R/	c		c		"qtadR
QrT	AbD3
	A 372===rw   c                  R   [        S5      =u  pp#pEpgU* U -  U-   SU-  S-  -   SU-  S-  -   SU-  S-  -   SU -  S-  -   U* U-  SU-  S-  -   US-  -   U* U-  US-  -   U-   SU-  S	-  SU-  S	-  -   SU -  S	-  -   U* U-  US-  -   S
U-  S-  -   U -   U* U-  U-   US	-  -   U S-  -   SU-  S-  US-  -   U -   SU-  S-  SU-  -   SU -  S-  -   U* /	nU SUSUSUSUSUS0U SXC* USU[        S5      S-  USUS0U SU-  USXUSU[        S5      S	-  US0/n	[        XSS9n
X:X  d   X45       eg )Nza, b, c, d, f, g, kr{   r   rz   rm  r   r|   rN  rf  r   r   r   Tr}   )r   r   rG   )ra   rb   rc   rd   r   r   rf   unknowns	equationsanswergots              ru   test_issue_21882r~    s   %,-B%CCA!a 
1q1Q3q51Q3q5 1Q3q5(1Q3q50	
1qs1uqs	
1qs
Q
1R"Q$r'BqDG#	
1qs
RT!Va	
1q1R4!A#	!A!a	!A!ac!e	

I 
Aq!Q1aAq!,	
Aq"aAqtAvq!Q2	
BqD!QaAquRxA68F 	$
/C=&3,&=rw   c            	        ^ [        [        S5      u  mp[        S5      n[        T" [        5      [        5      n[        U " U5      U5      n[        T" [        5      T" [        5      R                  [        5      -   T" [        5      5      U* /:X  d   e[        T" [        5      S-
  T" [        5      5      S/:X  d   e[        T" [        5      ST" [        5      R                  [        5      -  -
  T" [        5      5      SU-  /:X  d   e[        T" [        5      ST" [        5      R                  [        5      -  -
  /T" [        5      5      T" [        5      SU-  0:X  d   e[        T" [        5      ST" [        5      R                  [        5      -  -
  T" [        5      S-  [        -
  S-   /T" [        5      [        5      SU-  SUS-  -  S-   4/:X  d   e[        T" U5      S-  * U " U5      S-  -  T" U5      S-  U" U5      S-  -  -   U " U5      R                  U5      -   U" U5      U " U5      SS9U" U5      U " U5      /[        T" U5      S-  U " U5      S-  -  U-
  5      * T" U5      -  U " U5      4[        T" U5      S-  U " U5      S-  -  U-
  5      T" U5      -  U " U5      414:X  dc   [        T" U5      S-  * U " U5      S-  -  T" U5      S-  U" U5      S-  -  -   U " U5      R                  U5      -   U" U5      U " U5      SS95       eT" [        5      R                  [        S5      T" [        5      U " [        5      -   -  SU " [        5      S-  -
  /T" [        5      U " [        5      /n[        US	S06S
   [        S5      * [        S5      4[        S5      [        S5      * 41:X  d   eT" [        5      S-  U " [        5      -   ST" [        5      R                  [        5      -  -
  U " [        5      S-  S-
  /n[        UT" [        5      U " [        5      SS9T" [        5      U " [        5      /[        SU-  S-
  5      * [        S5      4[        SU-  S-
  5      [        S5      4[        SU-  S-   5      * [        S5      * 4[        SU-  S-   5      [        S5      * 414:X  d   e[        [        U4S j5        [        T" [        5      T" [        5      R                  [        5      -   [        /S9T" [        5      [        T" [        5      [        5      -   S
4:X  d   e[        T" [        5      [        [        [        [        45      -   [        /S9T" [        5      [        [        [        [        45      -   S
4:X  d   e[        T" [        5      [        [        [        [        45      -   [        -   [        /S9[        T" [        5      -   [        [        [        [        45      -   S
4:X  d   e[        T" [        5      [        [        [        [        45      -   [        -   [        /S9[        T" [        5      * [        [        [        [        45      -
  4:X  d   e[        [        T" [        5      U-  -
  T" [        5      S
-
  U-  -   [        /S9[        S
U-  4:X  d   e[        [        [        S[        -  [        5      -   5      [        S4:X  d   e[        [        [        [        [        5      -   [        /S9[        S4:X  d   e[        [        [        [        [        5      -   S-
  [        /S9[        S[        S
-   -  4:X  d   e[        [        [        [        [        5      S-  -   [        [        5      5      5      [        [        * 5      * [        [        * 5      1:X  d   e[        [        [        [        5      -   [        SS9[        [        5      * /:X  d   e[        [!        [        5      [#        [        5      -
  [        SS9/ :X  d   e[        [        [#        [        5      -
  [        SS9[#        [        5      /:X  d   e[        [        S-  [        -   S-
  [        SS9[        S-  * S-   /:X  d   e[        [        S-  [        -   S-
  [        S-  SS9[        * S-   /:X  d   eg )Nfghra   r|   rz   r   rm  Tr   r   r   c                     > [        T " [        5      T " [        5      R                  [        5      -   T " [        5      /S9$ )Nr  )rH   ri   r	   r  s   ru   r   !test_issue_5901.<locals>.<lambda>U  s'    L1!		!)<qtfMrw   r  r   r   r   )r   r   r   r   ri   rG   r	   rj   r.   r   r_   r   rH   r<   r   r%   r4   r6   )r   rg   ra   r
  Gr   r   r   s          @ru   test_issue_5901r  0  s   (E"GAqsA1Q4A1Q4A1!		!$ad+
  11Q4 	
  1!A$))A,&!-	
1  !A$1Q499Q<'(!A$/	
1qs  !A$1Q499Q<'1q1q91Q4C
A#qAvz	  !A$'!A$'!AaD!GAaD!GO3adiilB!ad&
A$!
qtQwqtQw"
#	#AaD	(!A$/	adAgadAgo!	"1Q4	'1.0 	11 & 381q1q8H1Q4QR7STUVSWYZSZ?8Z]^_`]a]f]fgh]i8i!ad3&	& 1 qTYYq!_adQqTk*A!aK8!A$!ED$!D!!$7(DG	tAwa123 3 3Q47QqT>AadiilN*AaD!GaK
8CadAaDd+
A$!
qsQw-1	acAg!
qsQw-!A$	acAg1	  	!! ! ! MO!qtyy|+aS9	
1
1Q4#	#Q'( ( (!xAq622QC@	
1QF#	#Q'( ( (!xAq622Q6D	
QqTHQA'	'+, , ,!xAq622Q6D	
QqTEHQA''() ) )AaDF
adQh\1A3?	
AaC  JqsA../	
B  HQN*QC8	
A  HQN*Q.<	
Aq1uI   uQQ]CF+,
r(D!H  SVQ.
a&	  Q#a&!d3r999SVQ.	Q  AAq40
Q$  AAq!td3
a  rw   c                     [        [        [        S-  [        -
  S-
  SS95      [        R                  [        S5      S-  -   [        S5      * S-  [        R                  -   1:X  d   e[        [        S-  [        -
  S-
  SS9n [        U 5      S:X  a  [        S U  5       5      (       d   e[        [        S-  [        -
  S-
  5      n [        U 5      S:X  a  [        S	 U  5       5      (       d   eg )
Nrz   皙?Tr  rl  r   Fc              3   8   #    U  H  oR                   v   M     g 7fr   	is_Numberr   ra   s     ru   r   "test_issue_5912.<locals>.<genexpr>x        :cc   c              3   8   #    U  H  oR                   v   M     g 7fr   r  r  s     ru   r   r  z  r  r  )r   rG   ri   r   r   r.   r   r   )r   s    ru   test_issue_5912r  t  s    uQTAX^d34	
$r(2+	Ry|aff456 6 6
1q3
/Cs8q=S :c :::::
1q3
Cs8q=S :c ::::::rw   c                     S n [        [        S-
  SS9S   R                  (       d   e[        [        S-
  SS9S   R                  (       d   e[        [        [        R
                  -
  SS9S   R                  (       d   e[        [        S-
  S S9S   R                  (       d   e[        [        [        R
                  -
  S S9S   R                  (       d   eU " [        SS[        -  -   5      S	S
[        -  -   5      (       d   e[        [        [        4 HS  n[        U" SS[        -  -   /5      5      n[        U5      UL a&  U " [        U5      S   S	S
[        -  -   5      (       a  MS   e   [        [        S[        -  SS[        -  -   /05      R                  5       5      S   u  p4U " US[        -  5      (       a  U " US   S	S
[        -  -   5      (       d   eU " [        [        S[        -  5      5      [        S
[        -  5      5      (       d   eU " [        S[        S-  -  5      S[        S-  -  5      (       d   eU " [        S[        S-  -  SS9S[        S
-  -  5      (       d   eU " [        [        S[        -  5      5      [        S
[        -  5      5      (       d   eU " [        [        S-  5      [        S-  5      (       d   eU " [        [        S-  S[        -  -   [        [        SS5      5      -   S-   5      [        S-  S
[        -  -   S-   5      (       d   eS[        -   [         -   ["        -   n[        S[        -   U-  S-
  S[         -   U-  S-
  ["        U-  S-
  45      / :X  d   eg )Nc                 |    [        U R                  [        5      5      [        UR                  [        5      5      :H  $ r   )r   r*  r   e1e2s     ru   test!test_float_handling.<locals>.test~  s'    288E?#s288E?';;;rw   r  Tr  r   Fr   rz         ?g       @r|   g      @r   r   g!,?r	  gffffff?g333333?g?g333333?r  )rG   ri   r  is_Floatr   r   rI   r   r   r   typeitemsr4   r%   r   rc   rk   rl   )r  containr   rf   rs  tots         ru   test_float_handlingr  }  s   <S4(+7777S5)!,5555QVVe,Q/;;;;S4(+4444QVVd+A.::::q1Q3ws1u----%%Wa!A#gY'(CyG#T#Yq\3Q;(G(GGG & !a!A#gY'(..01!4DA1Q3<<D1sSU{3333s1Q3x #c!e*----qAvAqD))))qAv-s1c6z::::s1Q3x #c!e*----qsQsU####q!taczCA$77!;<qD3q5L++- - - - 'A+/C263,#b1fc\B%6#
CDJJJrw   c                  H    [        SSS9n [        U S-  S-
  5      S/:X  d   eg )Nri   Tr  rz   r   rw  r  s    ru   test_check_assumptionsr    s*    d#AA?qc!!!rw   c            	         [        [        [        S-   5      [        [        S-
  5      -  S-
  5      / :X  d   e[        [        [        S-
  5      [        [        S-   5      -  S-   5      [        [        -  [        SS5      -  [        * [        -  S-  [        [        -  S-  [        [        -  [        SS5      -  /:X  d   e[        [        [        S-   5      [        [        S-
  5      -  S-   S-  5      [        [        -  [        SS5      -  [        * [        -  S-  [        [        -  S-  [        [        -  [        SS5      -  /:X  d   eg )Nr|   r   r   r   rz   )rG   r*   ri   r   r   r   r   rw   ru   test_issue_6056r    s   a!eT!a%[(1,-333a!eT!a%[(1,-rT(2q/!A2b57AbDFAbD!Q4GHI I I$q1u+d1q5k)A-12rT(2q/!A2b57AbDFAbD!Q4GHI I Irw   c            
          [         * [        [        [        [        [         5      5      5      [        [        [         5      5      -  5      -   n [	        U [         S5      SL d   e[	        U [         SSS9b   eg )Nrz   TFrR  )ri   r%   r$   r&   rR   rM  s    ru   test_issue_5673r    s]    
c#hs1v&'Q(889	9BB1%%%B1.666rw   c                     [        S5      u  pp#pEpg[        SSS9nX-  U-  USU-  U-  SU -  -
  -  -   USU-  SU-  -
  -  X8-  -   X-  U-  XA* U-  SU -  -
  -  -   X0-  -   U* U-   /n	[        XU-  U -  S9XX-  U-  S-   S	-  -  X-  U-  -  XVUS	U-  XaU -  U-  -  -   X1U -  U-  U-  S
U-  -   XaU -  U-  -  -   0USUSUSUS0/:X  d   e[        XXq/S9XVXCS	-  US	-  -   [        USU-  -
  X6-
  -  5      S	-  -   XS
U-  -
  [        US	-  SU-  U-  -
  SUS	-  -  -   5      -
  S	U-  U-  U-  -  XX6-
  -  U-  0XVXCS	-  US	-  -   [        USU-  -
  X6-
  -  5      S	-  -
  XS
U-  -
  [        US	-  SU-  U-  -
  SUS	-  -  -   5      -   S	U-  U-  U-  -  XX6-
  -  U-  0/XVX4S	-  XF-  -
  US	-  -
  US	U-  -
  -  XXF-
  S	-  -  XdS	U-  -
  -  -  XX-  US	U-  -
  -  -  0/4;   d   eg )Nz$R, C, Ri, Vout, V1, Vminus, Vplus, sRfTr  r   r   r   r   rz   r|   r   r{   r   r   rG   r.   )
ro   r  RiVoutV1VminusVplusr   r  r   s
             ru   test_excluder    s   67 )A"B		%B46E2a46AaC<((2b51R4< 47*719r2a4!A#:&/7U?C c!e$ACEAI>!13q5)%%1Q-'A#e)A+%'%1Q-7		9 1A!		)    am,
FU1WtTAeG^dl$CDQFF	1U7NT$'AdF5L"81UAX:"EFF1USTU
e#	3 	
FU1WtTAeG^dl$CDQFF	1U7NT$'AdF5L"81UAX:"EFF1USTU
e#	
2 	1urx%(*R!E'\:

QAeG| 45	!#rAeG|$%	
 	1   rw   c                      [         S-  S[         S-  -  -   S[         S-  -  -   [        SS5      -   n [        [        U 5      5      [        [	        U S-  SS9R                  5       5      :X  d   eg )Nr{   r   r|   rz   r   ZZ)domain)ri   r   r   rG   rB   	all_roots)r   s    ru   test_high_order_rootsr    s^    	1qAv!Q$!Q/AuQx=CQqS 6 @ @ BCCCCrw   c                    ^ SSS.n SSS.n[        [        [        -   S-
  S[        -  [        -
  S-
  /40 U D6[        S[        S0:X  d   e[        [        [        -   S-
  S[        -  [        -
  S-
  /40 UD6[        S[        S0:X  d   eS nU" [        [        [        -   [        -   [        [        -   [        -   [
        -   /40 U D65      S:X  d   eU" [        [        [        -   [        -   [        [        -   [        -   [
        -   /40 UD65      S:X  d   eU" [        [        [        -   [        -   [        [        -   [        -   /40 U D65      S:X  d   eU" [        [        [        -   [        -   [        [        -   [        -   /40 UD65      S:X  d   e[        / S	Q/ S
Q/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQ/5      n[        [        SSS95      n[        S/S/S/S/S/S/S/S/S/S/S/S//5      nX4-  U-
  n[        U5      / :X  d   e[        USS9/ :X  d   e[        S [        [        [        -   [        -   [        [        -   [        -   /5      R                  5        5       5      (       d   eS H  m[        S [        [        [        -   [        -   [        [        -   [        -   /TSS9R                  5        5       5      (       a   e[        [        U4S j5        [        [        U4S j5        M     [        [        S 5        g ) NTquick
particularFr{   rz   r   r|   c                 n    [        U R                  5        Vs/ s H  oS:X  d  M
  UPM     sn5      $ s  snf )Nr   )r   values)dicri   s     ru   count*test_minsolve_linear_system.<locals>.count  s)    szz|6|!AvA|6776s   	22)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   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   r   r   r   r   r   r   r   r   r   r   )r   r   r   r   r   r   r   r   r   r   r   r   r   r   zv:14r  r   r   r  c              3   $   #    U  H  ov   M     g 7fr   r   r   rs  s     ru   r   .test_minsolve_linear_system.<locals>.<genexpr>  s     A@Qq@   )TFc              3   $   #    U  H  ov   M     g 7fr   r   r  s     ru   r   r    s      ' #&Qq #&r  c                  (   > [        [        S-   /T S9$ )Nr   )r  r   _qs   ru   r   -test_minsolve_linear_system.<locals>.<lambda>  s    5!a%#;rw   c                  *   > [        [        S-   /T SS9$ )Nr   Fr  r   r  s   ru   r   r    s    5!a%u#Mrw   c                  $    [        [        S-   SS9$ )Nr   Tr  r   r   rw   ru   r   r     s    uQUt<rw   )rG   ri   rj   rk   ra   rl   r?   r   r   r  r_   r   )pqtpqfr  r  rs  r  r   r  s          @ru   test_minsolve_linear_systemr    s   
-C
.C!a%!)QqS1Wq[)1S1aAq\AAA!a%!)QqS1Wq[)1S1aAq\AAA8A	1q519q=19S9:a???A	1q519q=19S9:a???A	1q519-556!;;;A	1q519-556!;;;@@@@@@@@@@@@B 	CA 	wvt,-AbTA3aS1#sQC!	
aS1# 	A
#a%C:&",,,A%QAEAI 67>>@AAAAA '%UQYA	""##VX#& ' ' ' 	' ' 	z;<zMN  :<=rw   c                  d    [        SSS9n [        [        U S-  U S-  -   S-   5      5      S:X  d   eg )Nri   Tr  r{   r|   r   )r   r   rG   r  s    ru   test_real_rootsr    s6    sAuQTAqD[1_%&!+++rw   c            	          S[         S-  -  S[         -  -
  S[        S-  -  -   S-
  S[         S-  -  S[         -  [        -  -
  S[        S-  -  -   S	-
  /n [        [        U [        [         S
S95      S:X  d   eg )Nicˆrz   iQAiTkl   1'	 ia5iPQRil    d(	 Fr   r   )ri   rj   r   rG   )r   s    ru   test_issue_6528r  	  sz    !Q$!#jAo5
B!Q$1Q&1a47+EGC
 uS!Qe,-222rw   c                  B   [        SSS9n [        SU -  S-
  5      S-
  [        SSU -  -
  5      S	-
  /n[        X5      [        R                  4/:X  d   e[        XSS
9[        R                  4/:X  d   e[        XSSS9[        R                  4[        S5      4/:X  d   eg )Nri   Tr  r   r   r{   r|   r  r   r  Fre  )r   r   rG   r   r   )ri   r   s     ru   test_overdeterminedr    s    $AqsQw<!SQqS\A-
.C=affYK'''%166)444E2y1Q4'6JJJJrw   c                     [        S5      n [        SU S-  -  SU S-  -  -
  5      SS[        -  [        -  [	        S5      -  /:X  d   e[        SSS9n [        SU S-  -  SU S-  -  -
  5      S/:X  d   e[        S	5      [        [	        S5      5      -  [        [	        S5      5      -  n[        SU S-  -  SSU -  -  -
  5      U* U/:X  d   eg )
Nri   r   rz   r|   r   Tr  r{   r   )r   rG   r   r   r&   r.   )ri   rb   s     ru   test_issue_6605r    s    AQqSA!H$%!QqSVCF]);;;;$AQqSA!H$%!,,,QSVT#a&\)AQqSA!H$%1"a000rw   c                      [        [        S-  5      (       d   e[        [        5      (       a   e[        S5      (       a   eg )Nrz   T)rT   ri   r   rw   ru   test__ispowr  $  s3    !Q$<<<ayy=d|||rw   c                  (   [        [        [        -
  S-  [        * S[        -  -  [        R                  -   S-  -   5      * [        [        S-  * S-  [        S[        S-  -  S[        S-  -  -
  S[        -  -   S-   5      S-  -
  [        SS5      -
  S-  [        S-  S-  [        -
  [        S[        S-  -  S[        S-  -  -
  S[        -  -   S-   5      S-  -
  [        SS5      -
  S-  -   5      -   n [        U [        SSS9n[        U5      S:X  d   eg )Nrz   r   r  r   FrA  r{   )r.   rn   rm   r   r   r   rG   r   r   r   s     ru   test_issue_6644r  *  s$   
AzaR1X.22
3	3dQTE!GdadFQq!tVOacAG G! =!#+Aq>=245<69:Aa!dadFQq!tVOacAG G! :!#+Aq>:24596<6 77 
7B AU
3Cs8q==rw   c                     [        [        S-  [        -   [        [        -
  /[        [        /5      SS/:X  d   e[        [        S-  [        [        -  -   [        [        -
  /[        [        /5      S[        * [        * 4/:X  d   eg )Nrz   )r   r   r  )rG   ra   rb   rc   r   rw   ru   test_issue_6752r  2  sl    !Q$(AE"QF+&/AAAA!Q$1*a!e$q!f-&A2r(1CCCCrw   c                     [        [        [        S-
  S-  -  [        S-   -  [        S-  [        -
  S-   -  5      SSS[        [        S-  [        -
  S-   S5      [        [        S-  [        -
  S-   S5      [        [        S-  [        -
  S-   S5      [        [        S-  [        -
  S-   S5      [        [        S-  [        -
  S-   S5      [        [        S-  [        -
  S-   S5      /	:X  d   eg )	Nr   rz   r   r   r   r|   r   r{   )rG   ri   r[   r   rw   ru   test_issue_6792r  7  s    AEA:q1u%q!tax!|45
Aq'!Q$(Q,*GAqD1HqL!,D	AAq	!71a4!8a<#;	AAq	!71a4!8a<#;:= = = =rw   c            
      	  ^ [        SSS9u  mn [        [        TS-   5      S[        TS-
  5      -  -
  5      SS/:X  d   e[        [        T5      S-
  [        T5      [        -
  /T5      S/:X  d   e[        [        [        TS	-
  5      S
-
  5      5      [        R                  * [        S5      1:X  d   e[        [        [        TS-   5      [        TS-  S	-
  5      -   S5      T5      [        SS5      [        S5      S-  -   [        S5      * S-  [        R                  -   /:X  d   e[        S[        T5      -  [        TS-
  5      -
  5      S[        SS5      /:X  d   e[        [        TS-  T-   S-   5      TS-   -  5      / :X  d   e[        [        T5      5      S/:X  d   e[        [        [        TS-  ST-  -
  5      S5      T5      S[        S5      -
  S[        S5      -   /:X  d   e[        SSS9n[        [        [        U5      5      5      S/:X  d   e[        SSS9n[        [        [        SSSU-  -  -   5      S5      5      [        SS5      * /:X  d   e[        S5      m[        [        T5      S-
  [        T5      S-
  /T5      TSS[        -  -   [        T5      S[        T5      S0/:X  d   e[        [        T5      S-  [        T5      S-  -   5      S-
  n[        U5      [        UT5      :X  d   e[        SSS9n[        [        U5      S-
  5      S[        -  S[        -  /:X  d   e[!        ["        U4S j5        [        SSS9n[        STU-  -  SX-  -  -
  U5      [        TU -  U-  S-
  U5      :X  d   e[        SSS9u  mn [        TU [        -  -   S-   5      U STS0:X  d   e[        TS[        -   -  5      S/:X  d   e[        SSS9u  mn [        TU [        -  -   S-   S[        -  -   5      TS[        -  U S[        -  0:X  d   e[        SSS9m[        TU -   S-   S[        -  -   5      TSU S[        -  0:X  d   e[%        S5      n[        U" TS-   5      U" ST-  S-
  5      -
  5      S/:X  d   e[        ['        TS-   5      ['        ST-  S-
  5      -
  5      S/:X  d   e[        S5      m[        ST-  ST-  -   5      [        [        -  ['        S5      -  /:X  d   eg ) Nx yTr  r|   rz   r   rm  )r   r   r  r   r   rG  r`  r   r   r{   nn)nonnegativenz)nonzeror   ri   r   	imaginaryr   c                  2   > [        [        T 5      S-
  5      $ r  )rG   r  r  s   ru   r   Btest_issues_6819_6820_6821_6248_8692_25777_25779.<locals>.<lambda>b  s    c!fqj(9rw   r  r  r   r   )r   rG   r  r    r   r   r   r   r   r   r   r.   r   r#   r"   r   r_   r   r   r&   )rj   r  r  r   r   r  r   ri   s          @ru   0test_issues_6819_6820_6821_6248_8692_25777_25779r  >  s   5t$DAqQUaAE
l*+1v555#a&1*c!frk*A.5'999uSQZ!^$%155&!B%888 CAJQTAX.2A6Q$r(1*$tBxikAFF&:;< < < < 3q6CAJ&'BA+???? QTAX\"AE*+r111 Q=QCC1qs
OQ'+	DGQa[0" " " "	4	(BT"XA3&&&	t	$BCA2J'+,(1b/1A0BBBBA"Q%!)RUQY'+	
A!GRUAr!ua(0* * * * 
beQhA!	"Q	&B9b!$$$t$AQ!Aqs+++
 9:T"A1a4!AD&!$qsQhlA(>>>>5t$DAqQqS1!Q2...AEs"""5D)DAqQqS1qs"#2a4AaC'8888$AQQqS!aQ1%5555 	A1q5AacAgJ&'A3...QUc!A#'l*+s222AA1!B$s1v+...rw   c                     [        S[        S[        -  5      -
  [        [        5      -  [        S[        -  5      S-   S-  -  S:  [        5      [        * [        :  [        [	        S5      S-  :  -  :X  d   e[        S[        S[        -  5      -
  S-   [        [        S-   5      -  [        [        5      S-   S-  -  S:  [        5      [        * [        :  [        [	        S5      S-  :  -  :X  d   e[        [        [        5      S-   [        S-  -   [        S[        -  S-   5      -  [        [        5      S-   S-  -  S:  [        5      [        * [        :  [        [        :  -  :X  d   eg )Nrz   r   r   )rG   r%   ri   r   r&   r   rw   ru   test_issue_17638r  z  s&   1S1X:s1v%AaC
Q6:A>B37qSVWXSYZ[S[|B\\\\1S1X:a<QqS)CF1Hq=81<a@bS1WQRUXYZU[\]U]Q]D^^^^#a&(1a4-QqSU+SVAXM9A=qArcAgRSVXRXEYYYYrw   c                     [        S5      u  pp#pEU S-  U-  U-  X-  -   X-  -   S-   XP-  U* U-   -  -  n[        SSSS9u  pxn	USSX-  -  -   X-  -   -  n
Xj-
  R                  5       nU[        U5      R                  5       -  n[	        X5      nUR                  5       nXxU	/n[        XSS9n [        U 5      S:X  d   eXrU-   * XTU-
  -  -  XU-   XU-  X#-   -  0nU H/  nU S   U   R                  5       X   R                  5       :X  a  M/   e   g )	Nzs, tau_c, tau_1, tau_2, phi, Krz   r   zK_C, tau_I, tau_DT)r  r  r}   r   )r   togetherrE   r   rB   r  rG   r   )r   tau_ctau_1tau_2phiKtargetK_Ctau_Itau_DPIDr   rc   varsknownsolutionvars                   ru   test_issue_14607r    sJ   %,(&*"AeC d5j(172Q6sdUl9KLF 3)-t=C
q1eg;(
)C
,	 	 	"B%)


B	bB
		ADaD!Aq6Q;;EM*AU{O<EM%K79M tCy!!#}'9'B'B'DDDD rw   c                    ^^ SSK JmJm  [        [	        TST-  -   [        T5      -   T-   5      T5      T[        T5      1:X  d   e[        TT5      / :X  d   e[        TS-  ST-  -
  S-   R                  T[        T5      ST-  -   5      5      [        S[        R                  -  5      S-  /:X  d   e[        TS-  ST-  -
  S-   R                  T[        T5      ST-  -   S-  S-
  5      5      [        S[        [        S5      * 5      -  5      S-  [        S[        [        S5      5      -  5      S-  /:X  d   e[        TS-  ST-  -
  S-
  R                  T[        T5      ST-  -   5      5      [        S[        S[        S5      -
  5      -  5      S-  [        S[        S[        S5      -   5      -  5      S-  /:X  d   eT[        T5      -  S-
  R                  TT[        T5      -  5      n [        U 5      [        S[        [        S5      * 5      -  5      /:X  d   e[        [        UU4S j5        SS[        [        S5      * S-  5      -  [        S5      -  /n[        TS-  ST-  -
  T5      U:X  d   e[!        [        S[        T5      -  T[        S5      -  -
  5      5      [!        U5      :X  d   e[        [        ST-  5      T-
  T5      T[        T5      -  S-  /:X  d   eg )Nr   ri   rj   r   rz   r|   c                  R   > [        T [        T 5      [        TT -
  5      -  -
  T 5      $ r   )rG   r6   r&   r  s   ru   r   +test_lambert_multivariate.<locals>.<lambda>  s"    a#a&QU2C.CQ(Grw   r   )r  ri   rj   rM   rB   r%   rO   rG   r   r&   r$   r   r  r.   r_   r   r   )r   r   ri   rj   s     @@ru   test_lambert_multivariater    s   $q1Q3wQ/!34a8QAKGGGAq>R!Q$1*q.&&q#a&1Q3,78Xah=OPQ=Q<RRRR!Q$1*q.&&q3q6AaC<!*;a*?@AAc47(mO$Q&3tAw<(@(B
CD D D!Q$1*q.&&q#a&1Q3,78Ac!d1g+&&')8Ac!d1g+6F4F+G+I
JK K K
CF(Q,		Q#a&	)B9!C!$5"567777
 GHb3q6'!)$$SV+
,CA1a C'''uQs1vX#a&()*c#h666!A#"A&1SV8A:,666rw   c                  `   [        S[        [        5      -  [        [        S5      -  -
  [        5      S/:X  d   e[        [        [        [        -  [        [        -  -
  5      [        5      [        [        * [        [        [        5      * [        -  5      -  [        [        5      -  1:X  d   eg r  )rG   r6   ri   r   ra   r$   r&   r   rw   ru   test_other_lambertr     s    3q6Ac!fH$a(QC///uQTAqD[!1%	A2hAwqy!!#a&(** * * *rw   c                     [        [        S-  [        -   [        [        S-  [        -   5      -  S-
  5      [        SS5      [	        SS[        S5      -  -   5      S-  -   [        SS5      [	        SS[        S5      -  -   5      S-  -
  /:X  d   e[        [        S-  [        -   [        [        S-  [        -   S-  5      -  S-
  5      [        SS5      [	        SS[        S5      -  -   5      S-  -   [        SS5      [	        SS[        S5      -  -   5      S-  -
  /:X  d   e[        [        [        -  [        [        S-  5      -   [        5      S[        [        * S-  5      -  /:X  d   e[        [        [        -  [        [        S-  5      -   R                  [        5      [        5      S[        [	        S5      * [	        [        5      -  S-  5      -  S[        [	        S5      [	        [        5      -  S-  5      -  /:X  d   e[        S[        -  [        [        S-  5      -   R                  [        5      [        5      S[        [	        S5      * S-  5      -  S[        [	        S5      S-  5      -  S[        [	        S5      * S-  S5      -  /:X  d   e[        [        [        [        5      -  S[        -  -   S-   [        5      [        S[        [        S5      * 5      -   5      /:X  d   e[        [        S-  * S[        -  -   [        5      SSS[        [        S5      S-  5      -  [        S5      -  /:X  d   e[        [        S-  S[        -  -
  [        5      SSS[        [        S5      S-  5      -  [        S5      -  /:X  d   e[        S[        -  S-   SS	[        -  S-   -  -   [        5      n [        U 5      S:X  aX  U S
   R                  5       [        S	S5      [        S[        SS5      -  [        S5      -  S-  5      S[        S5      -  -  -   :X  d   e[        S[        -  S-
  S[        SS[        -  -
  5      -  -   [        5      [        SS5      [        S[        [        SS5      5      -  S-  5      S-  -   /:X  d   e[        [        [        5      [        -   R                  [        [        S-  S-   5      5      [        * [	        [        S5      * S-   5      -  [	        S[        S5      -   5      /:X  d   e[        S[        -  S-   -  n[        S[        U5      -  [        [        U5      -  -   U-   [        5      n S[        [        5      -  n[	        S5      [        -  n[        S-   nU[        SU-  5      -  [        S-  -  nU[        SS5      -  S-  nU U[        Xc* S-
  -  5      -  U[        XcS-
  -  5      -  U[        U5      -  S-  /:X  d   e[        [        SS5      5      n[        S	-  nS[        SS5      -  * nS[        SS5      -  [        -  nU[        SS5      -  U[        SS5      -  -  S-  n[        S[        U5      -  U-   [        5      n U U[        SU-  U-  5      -  S-  U[        XuU-
  -  5      -  U[        XuU-   -  5      -  /:X  d   e[        SSS9nSSSU-  S-   -  -  SU-  -
  S-
  n	[!        X[#        [%        U	5      U5      5      [        SS5      [        S[        S5      -  5      S[        S5      -  -  -
  /:X  d   e['        [        S[)        [        5      -  [)        [        5      S-  -
  5      5      [+        S5      [+        S[        [        S5      * S-  5      -  [        S5      -  5      1:X  d   e[        S[        [        5      -  S[        [,        5      -  -
  [        [,        [        [        5      -   [        [,        5      -   5      -   [        5      [        [,        * [        S[,        S-  -  [        S[,        -  5      -  5      S-  -   5      [,        -  /:X  d   e[        [        [        -  [        [        S-  5      -   R                  [        S5      [        5      n [        * [        SS5      -  n[	        S5      [        -  nUS-  nU S[        US-  5      -  S[        XC* S-
  -  5      -  S[        XCS-
  -  5      -  /:X  d   e[        S[        -  [        [        S-  5      -   R                  [        S5      [        5      S[        [        SS5      5      -  S[        [        SS5      [	        S5      [        -  S-  -
  5      -  S[        [        SS5      [	        S5      [        -  S-  -   5      -  S[        [        SS5      S5      -  /:X  d   e[        [        S-  [.        S-  [        [        5      -  -
  [        [.        SS9[        S[        [.        * S-  5      -  0[        S[        [.        S-  5      -  0/:X  d   e[        [        S-  [        S-  -  [0        S-  -   [        5      [        [        S[        S5      -  S-  S[        [0        5      -  S-  -   [        [0        -  [        SS5      -  -   5      5      /:X  d   e[        S[        [	        [        5      S-   5      S-  -  S[        -  -
  5      [        [        S5      * S5      S-   S-  /:X  d   e[        S[        S[	        [        5      -  S-   5      S-  -  [        -
  5      [        [        S5      * S5      S-   S-  /:X  d   e[        S[        [        S-  S-   5      S-  -  [        S-  -
  5      [        * [	        S[        [        S5      5      -
  5      -  [        * [	        [        [        S5      * 5      S-   5      -  [	        S[        [        S5      * 5      -
  5      [	        S[        [        S5      5      -   5      [	        S[        [        S5      * S5      -
  5      * [	        S[        [        S5      * S5      -
  5      /:X  d   eg )Nrz   r   r   r   r|   r   r   r{   r   i r   ir   rh   Tr  r  r}   )rG   ri   r%   r   r.   r$   ra   r	   r&   r   r  r-   r   r   rb   r   rN   rM   rB   r   r4   r0   rk   rj   r   )
r   axr&  r'  r  r  r  r  rh   r   s
             ru   test_lambert_bivariater    s5    !Q$(C1qM)A-.Q$q1Xa[=01!33Q$q1Xa[=01!3335 5 5 5 !Q$(CA1--12Q$q1Xa[=01!33Q$q1Xa[=01!3375 5 5 5 1s1Q3x#(A2a4.(8'9999!A#AaC.&&q)1-xaa(*++QxQQ8I/J-JKL L L!A#AaC.&&q)1-	
8T!WHQJ		(4719
	(DG8A:r
""	$$ $ $ 3q6AaC!#Q'hAw''()* * *!Q$Aq!aBxAq/A,A#a&,H%IIIIA1a Q2hs1vax.@+@Q+G$HHHH
!a!bdQh-'
+Cs8q=SV]]_Q(6$q!*#4SV#;A#=>#a&IIJ J J1q1SQqS\>)1-	!Q(3s8Aq>':#:1#<=a?	?@A A A#a&1*""1adQh/0	
4!q !!4Xa[(8#95; ; ; ; 
QqS1WB
#b'	Ac"gI%*A
.C	
3q6B	aB	
QB	HQrTN	1a4	B	Xa^	A	B
3r37|
3r6{
3r7
1    
(1a.	!B	
RB
Xa^
	B	
HQN	1	B	Xa^	BA.	.q	0B
#b'	B
"C
3qtBw<
3r7|
3r7|   
 	d#A	
1qsQw<!A#		!B"R!!<=Q(2c!f9-qQx88B: : : :uQAYQ*+,Qb3q6'!),,SV3416 6 6 6 3q6Ac!fH$s1s1v:A+>'??CQB!AqD&QqS/*1,,-a/H1 1 1 1 1s1Q3x%%a+Q
/C"x1~	B	aB	AB	(2a4.	(2sQw<
  	(2Av;
! ! ! ! !A#AaC.&&q!,a08HRO,,a!Q$q'RS)TU+9U0V.V(8Aq>DGAIaK788!HXbRS_VX<Y:Y[[ [ [ A1SV#Q5Qx1~%&AhqsmO(<=> > > !Q$!A#A%q)HRAYq[1SW9Q;.2hq!n1DDEF.H H H H !CQ!$a''!A#-/	3r7(B	!	#a'4) ) ) )!C$q'	A&))A-/	3r7(B	!	#b(4* * * *!C1qM1$$q"u,.	
4HSV$$%%	
4#b'"Q&''R(CG8$$%R(3q6""#	b8SWHb))	**R(CG8R(()3+ + + +rw   c                     [        [        [        5      [        [        5      -   5      S[        * [        S[        -  /:X  d   e[        [        [        5      [        [        5      -   5      S[        [        SS5      [        S5      [        S[        S5      [        -  -
  5      -  S-  -   [        S5      [        -  S-  -   5      -  S[        [        R                  [        S5      [        S[        S5      [        -  -   5      -  S-  -
  [        S5      [        -  S-  -   5      -  S[        [        R                  [        S5      [        S[        S5      [        -  -   5      -  S-  -   [        S5      [        -  S-  -   5      -  S[        [        R                  [        S5      [        -  S-  -
  [        S5      [        S[        S5      [        -  -
  5      -  S-  -   5      -  /:X  d   e[        [        [        5      [        [        5      -   5      S[        [        -  /:X  d   e[        S[        [        5      -  [        [        5      -
  [        5      [        [        R                  5      /:X  d   eg )Nr   rz   r   r   r   r|   )rG   r6   ri   r7   r   r5   r2   r   r.   r   r   r   r)   r*   r4   r   rw   ru   test_rewrite_trigr    s   Q#a&!a"b!B$%7777Q#a&!
4Q$q'$q4719}*="=a"??$q'!)A+MNN	$qvvQQa] 33A55Q	!C
DDaQVV
q'$q4719}%
%a
'N(*.q'!)A+N6 I7 G789$qvvQ	!@1gd1tAwqy=11!3@4 ;5 95&6 6 6 6
 a47"#1R4y000 3q6CF"A&4<.888rw   c                     SSK Jn   [        [        [        5      U " [        5      -   5      S[        [        SS5      [        S5      S-  -   [        S[        S5      -  S-   5      S-  -
  5      -  S[        [        SS5      [        S5      S-  -   [        S[        S5      -  S-   5      S-  -   5      -  S[        [        S5      * S-  [        R                  -
  [        SS[        S5      -  -   5      S-  -   5      -  S[        [        SS[        S5      -  -   5      * S-  [        S5      S-  -
  [        R                  -
  5      -  /:X  d   eg )Nr   sechrz   r   r{   r   )
%sympy.functions.elementary.hyperbolicr	  rG   r)   ri   r'   r   r.   r   r   r  s    ru   test_rewrite_trighr  "  s    ;a47"#	%Q$q'!)+d2d1g:>.B1.DD
EE	%Q$q'!)+d2d1g:>.B1.DD
EE	%a
QVV#d1qay=&9!&;;
<<	%a!DG)m$$Q&a2QVV;
<<	(> > > >rw   c            
      >   [         [        [        5      -
  [        [        [        S[        S-  [        S-  -  -   -  -  5      -   n [	        U [        SS9[        [        [        [        [         5      -
  -  5      * [        [        [        [        [         5      -
  -  5      /:X  d   e[	        [        [        S-   5      [        SS[        -  -   5      -   S-
  5      S[        S[        S5      -   5      [        [        SS5      5      -  S-  -   [        S5      S-  -   [        S[        S5      -   5      * [        [        SS5      5      -  S-  S-
  [        S5      S-  -   /S[        S	[        S5      * S
-   S-  -   5      S-  -   [        S5      S-  -   S[        S	[        S5      * S
-   S-  -   5      S-  -
  [        S5      S-  -   /4;   d   e[	        [        [        S[        -  5      S-   5      [        [        [        5      * S-   5      -   [        S5      -
  5      / :X  d   eg )Nr   rz   T)forcer|   r   r   iir   )	rk   r&   ri   rj   rG   r.   r%   r   r*   rM  s    ru   test_uselogcombiner  -  s   	
SVc!QQT!Q$Y/01	1BQd#aSVn)=(=tAq3q6zN?S'TTTTQUc!ac'l*Q./	d3Q< Xa^!44Q6	6Q	A	cCFl	CA//1A5Aq@	B	d33q6'A+))*1,	,s1vax	7
T##a&1q(()!++c!fQh6	84
 
 
 
 S1X\"S$q'A%66Q?@BFFFrw   c                  z    [        [        [        S5      [        S-  -
  [        5      S[	        S5      -  /:X  d   eg r  )rG   r3   ri   r   r.   r   rw   ru   
test_atan2r  9  s0    q!r!t#Q'Ad1gI;666rw   c                     [        [        [        5      [        -
  [        5      [	        [        5      /:X  d   e[        [	        [        5      [        -
  [        5      [        [        5      /:X  d   e[        [        [        5      [        -
  [        5      [        [        5      /:X  d   e[        [        [        5      [        -
  [        5      [        [        5      /:X  d   eg r   )rG   r8   ri   rj   r;   r9   r:   r   rw   ru   test_errorinversesr  =  s    Q!QF1I;...Q"s1vh...a1a WQZL000a#Qy000rw   c            
      &   [        S5      n [        S5      U -  [        SU S-   -  5      -  U S-   [        S5      [        SU S-   -  5      -  S-
  -  -   n[        XSS9S   nU[        SS5      [        SS5      [        S5      [        -  S-  -
  [        S	S
5      [        S5      [        -  S-  -   [        SS5      -  -  -   SS[        SS5      [        S5      [        -  S-  -
  [        S	S
5      [        S5      [        -  S-  -   [        SS5      -  -  -  -  -   4[        SS5      SS[        S	S
5      [        S5      [        -  S-  -   [        SS5      -  -  -  -   [        S	S
5      [        S5      [        -  S-  -   [        SS5      -  -   41:X  d   eg )Nro   rz   r   Tr   r{   r|   r      r   o   rm  r4  )r   r.   rG   r   r   )ro   r   r   s      ru   test_issue_2725r  D  s   sA	a41q5	?	"a!ed1gd1a!e9o.E.I%J	JB
4
 
#CHQNhr1oQ	!&ChsTVFWS	!AG AF' &' ')+Q"a4719Q;1NQYZ]_aQbS	!AR AQ' 1' .( *)) +-5a^b!XcSUEVS	!AF AE' C' ?( .(+3C+<tCy{1}+LxXY[\~*].^ -`a a a arw   c                  (   [        S5      u  pp#pEpgppppn[        XU-  -
  UU-  -   /USU-  SU-  -   SU-  -   -  XE-  -
  UU-  -
  /U* U-  USU-  SU-  -   SU-  -   -  -   Xg-  -
  /U* U-  USU-  SU
-  -   SU-  -   -  -   X-  -
  /U* U-  U	SU-  SU-  -   SU-  -   -  -   X-  -
  /U	* U-  USU-  SU-  -   -  -   //5      n[        XFXX/5      n[        [        U5      [        U5      SS9n[	        S UR                  5        5       5      S::  d   eg )Nzb:rr   Fr  c              3   @   #    U  H  oR                  5       v   M     g 7fr   )	count_ops)r   r   s     ru   r   'test_issue_5114_6611.<locals>.<genexpr>\  s     3l{{}}ls   i  )r   r?   rG   r   r   r  )rb   rc   rd   re   r   r   rg   r   r_  rf   r`  rn   rs   r  rh   rm   r   r   rs  r   s                       ru   test_issue_5114_6611r  N  so   
 9@5A!aA!aA
	
qS1Q3!QqS1Q3Y1_-3ac9:
A1Q319qs?#	#ac	)*aRTAqsQqSy1Q34G-G!#-M,N
A1Q319qs?#	#ac	)*aRTAqsQqSyM-A,BD EC 	aA!"A
S	47U
3C 3cjjl33t;;;rw   c            	         [        SS[        S5      5      n U R                  " 5       [        U 5      :X  d   eSU S'   U R                  " 5       [        U 5      :X  d   e[        SS[	        [        S5      5      5      n U R                  " 5       [        U 5      :X  d   e[        SSS5      n[        U5      [        U5      s=:X  a  UR                  5       :X  d   e   eg )Nr|   za:9r   r  rm  rz   )r   rz   r   r   )	r?   r   detrU   r   r"  rA   rV   rW   )rn   r   s     ru   test_det_quickr  _  s    q!WU^$A557il"""AdG557il"""q!T%(^$A557il"""Q<(AA;)A,1!%%'11111rw   c                     [        SSS9u  p[        [        U S-  US-  -   5      S-
  U 5      [        US-  * S-   5      * [        US-  * S-   5      /:X  d   e[        SSS9u  p[        [        U S-  US-  -   5      S-
  U 5      / :X  d   eg )Nza bTr  rz   r|   rm  r  r  r  s     ru   test_real_imag_splittingr   k  s    5t$DAadQTk"Q&*
1uqy/	4A	?+, , ,5D)DAadQTk"Q&*b000rw   c                      S[         S-  -  S[         S-  -  -   S[         -  -
  S-   n [        S [        U 5       5       5      (       d   eg )Nr   r|   r   rz   r{   c              3   `   #    U  H$  n[        [        R                  " U5      5      v   M&     g 7fr   )r   r   r  r   s     ru   r   "test_issue_7110.<locals>.<genexpr>u  s     0x!s166!9~~xs   ,.)ri   rI  rG   r   s    ru   test_issue_7110r$  s  sE    
1a4!AqD&1Q3"A0uQx00000rw   c                  ^    [        S[        -  SS[        -  -  -
  5      S[        -  /:X  d   eg r  )rG   ri   rZ   r   rw   ru   
test_unitsr&  x  s+    1q!B$x QrTF***rw   c            	      F   [        S5      u  pn[        SUS-
  -  U-  US-   -  U -
  U-   S5      n[        USUS-
  -  5      n[        U SU-  US-   -  5      n[        [        [	        X4U5      XU/S5      5      n[        U5      [        [        S	/S
/S//5      5      :X  d   eg )NzA,B,VgGz@g     C@r1  r   g    d6Ag    0!A)r   r   r   z4442890172.68209z4289299466.1432z70.5389666628177)r   r   r?   rF   r   r  )r  r  r  eq1eq2eq3r   s          ru   test_issue_7547r+  |  s    gGA!
VQXq !b&)A-11
5C
Q
AF#
$C
Q
1a$h'
(C
c,qQiC
DCs8s6
	
	
		  ! ! ! !rw   c                  T    [        SSS9n [        [        U 5      S-
  5      S/:X  d   eg )Nr   Tr  rz   r   r  )r   s    ru   test_issue_7895r-    s+    $Aa1!$$$rw   c                  v   [        SSS9u  p[        U S-  US-  -   5      S-
  [        US-  U * S-   S-  -   5      S-
  p2[        SS5      S[        S	5      -  S-  pTXE* 4XE4/n[        X#4X45      U:X  d   e[        X#X-
  -  4X45      / :X  d   eUS
-  n[        X#4X45      / :X  d   e[        X#4X4SS9U:X  d   eg )Nr  Tr  rz   r   r|      r   i  r   Fr   )r   r.   r   rG   )ri   rj   r  r  ra   rb   r   s          ru   test_issue_2777r0    s    5t$DA!Q$A+#T!Q$1"r'A*=%>%BCaS	k"nqr7QF
C"A6"c)))"!%j!A6*b000!GB"A6"b((("A6/3666rw   c                  H    Sn [        [        U -
  [        5      S   U :X  d   eg )Ng{[Rs8r   r   )numbers    ru   test_issue_7322r3    s%    FVQ"f,,,rw   c                      [        [        S 5        [        [        S 5        [        [        S 5        [        [        S 5        g )Nc                       [        [        SSS9$ )N)r   r   bisect)methodrF   ri   r   rw   ru   r   test_nsolve.<locals>.<lambda>  s    vaBrw   c                      [        [        [        -
  S-   [        [        -   [        [        -
  4[        [        [        4S5      $ )Nr|   )ir2  )rF   ri   rj   rk   r   rw   ru   r   r9    s*    fa!eaiAa!e%<a!WXNrw   c                  J    [        [        [        -   [        [        -
  4S5      $ )Nr  )rF   ri   rj   r   rw   ru   r   r9    s    fa!eQU^V<rw   c                  2    [        [        S:  [        S5      $ )Nr  r   r8  r   rw   ru   r   r9    s    fQWa3rw   )r_   r   r   r   rw   ru   test_nsolver=    s.    
:BC
9NO
9<=
934rw   c                  t   [        [        [        [        S-  -  [        -
  S-   [        5      5      S:X  d   e[        [        [        [        S-  -  [        -
  S-   [        5      5      S:X  d   e[        [        [        S-  -  [        -
  S-   [        5      / :X  d   e[	        [
        S 5        [        S-  [        -
  S-   n [        U SSU -  -   -  5      [        S5       Vs/ s H  n[        U S-   U5      PM     sn:X  d   e[        S-
  n [        U SSU -  -   -  5      [        R                  /:X  d   eg s  snf )Nr|   r   r   r{   c                  P    [        [        [        S-  -  [        -
  S-   [        SS9$ )Nr{   r   F)
incomplete)rG   ra   ri   r   rw   ru   r   .test_high_order_multivariate.<locals>.<lambda>  s    a1fqj1naE2rw   rz   )
r   rG   ra   ri   r_   r   r"  r[   r   r   )rd   r   s     ru   test_high_order_multivariaterB    s   uQq!tVaZ!^Q'(A---uQq!tVaZ!^Q'(A---1a4!a#r)))
 !3 4
 	
1q1AA!GU1X!FX'!a%"3X!FFFF	AAA!G!&&))) "Gs   !D5c                      [        S[        -  S-
  5      S/:X  d   e[        S[        S-
  -  S-
  5      S/:X  d   e[        [        SSS95      SS/:X  d   eg )Nr   r   rz   zx*(1/x**0 - x)Fevaluate)rG   ri   r   r   rw   ru   test_base_0_exp_0rF    se    A?qc!!!QUa QC'''#e45	
A  rw   c                     [        S[        S-  -  [        /5      [        5       :X  d   e[        S[        [        -  -  [        /5      [        [        -  1:X  d   e[        S[	        [        S5      -  [        /5      [        1:X  d   eg )Nr   r   r|   )rX   ri   r   rj   r-   r   rw   ru   test__simple_densrH    sk    !Q$$---!Q$$A...$q!*qc*qc111rw   c                  x   [        [        [        [        5      [        -  [        S-  -   S-
  [        5      5      S:X  d   e[        [        S[        S-  -  S[        S-   [        SS5      -  -  [        S-  -  -   S[        S-   [        SS5      -  -  [        -  -
  S[        -  -
  S-   [        S	S
95      S:X  d   eg )Nr|   r   r:  r;  rz   r<  r.  r=  Fr>  )r   rG   r.   rj   ri   r   r   rw   ru   test_issue_8755rJ    s     uT!WQYA%)1-.!333uT!Q$Yq1ux1~&=!=ad!BBa!ehq!n$$Q&'),Q/14567G HKLM M Mrw   c                     Sn SnSnSnSnSnSnSn[         [        [        4n[         U -
  S	-  [        U-
  S	-  -   U[        -
  S	-  -
  n	[         U-
  S	-  [        U-
  S	-  -   [        S	-  -
  n
[         U-
  S	-  [        U-
  S	-  -   U[        -
  S	-  -
  nXU4n[        [         U -
  S	-  [        U-
  S	-  -   5      [        -   U-
  nU
n[        [         U-
  S	-  [        U-
  S	-  -   5      [        -   U-
  nXU4n[	        X5      n[	        UU5      n[	        UUS
S9nUUU4 VVs/ s H&  nU Vs1 s H  n[        S U 5       5      iM     snPM(     snnu  nnnUUs=:X  a  U:X  d   e   eg s  snf s  snnf )Nr   ii  ~   r8  rt     h   rz   Tr  c              3   B   #    U  H  oR                  S 5      v   M     g7f)rz   N)rr   r   s     ru   r   "test_issue_8828.<locals>.<genexpr>  s     ,!Qggajj!r   )ri   rj   rk   r.   rG   r   )r'  y1r1r  y2r  y3r3rs  f1f2f3r  g1g2g3r  r  r  r  ro   r_  rh   rm   r   s                            ru   test_issue_8828r\    s   	
B	B	B	B	B	B	B	B	1aA
b&1B{	"b1fq[	0B
b&1B{	"QT	)B
b&1B{	"b1fq[	0B
bA	q2vkQVaK'	(1	,r	1B	B	q2vkQVaK'	(1	,r	1B
bAaAaAa4 ACDa)L)Qa8a,!,,a8)LGAq!;Q;;; 9Ls   
E*'E%E*%E*c                     [        [        S[        -  5      [        S[        -  5      -   5      SS[        -  S-  S[        -  S-  /:X  d   e[        [        S[        -  5      [        S[        -  5      -   5      S[        * S	-  [        S	-  /:X  d   e[        S[        [        5      -  S[        S[        -  5      -  -
  5      S[        * S-  [        S-  /:X  d   eg )
Nr|   r   r   r   rm  rz   i,  r  i  )rG   r6   ri   r   r   rw   ru   test_issue_2840_8155r^    s     QqSC!H$%!RU1Wad1f)====SUc#a%j()a"S"S&-AAAA3q6Ac!A#hJ&'As1ubd+;;;;rw   c                  B    [        SS[        S-
  -  -   5      S/:X  d   eg r$  r   r   rw   ru   test_issue_9567r`    s#    QAYA3&&&rw   c                  D   [        [        [        -   5      [        * /:X  d   e[        [        S-  [        -   5      [        * [	        [        5      -  [        [	        [        5      -  /:X  d   e[        [        S-  S[        -  -   5      [        S[        -  5      * [        S5      [        [        5      -  S-  [        S5      [	        S5      -  [        -  [        [        5      -  S-  -
  [        S5      [        [        5      -  S-  [        S5      [	        S5      -  [        -  [        [        5      -  S-  -   /:X  d   e[        [        S-   [        [        -   /[        [        5      [        S[        [        * 0:X  d   e[        [        S-  S-   [        [        -   /[        [        5      S[        -  [        * 4S[        -  [        * 4/:X  d   e[        [        S-  -
  S-   n [        [        -   S-   S[        -  -   n[        [        X/[        [        5      5      S:X  d   eg )Nrz   r|   r   r  r   )rG   ri   r   r   r.   r,   rj   r   r  s     ru   test_issue_11538rb    s   Q<QB4A?r$q'z1T!W95555A!	a!eQQDGDGOA-d1g5a77QQDGDGOA-d1g5a77!9 9 9 9 !a%QA&1b!aR.888!Q$(AE"Aq)	Ar
QqS1"I.    
QTAB	
QQU	BubXq!$%***rw   c                  &   [        S5      u  pp#pEnSX-  -   X4-  -   SX-  -   X5-  -   SX-  -   XE-  -   X`S-  -
  US-  -
  XaS-  -
  US-  -
  XbS-  -
  US-  -
  /n[        XpXX4XV/SS9n[        US-  * S-
  5      n	[        SUS-  -
  5      n
[        SSUS-  -  -
  5      n[        S5      U-  n[        S5      U
-  nUX	* X* X)* X5XEUS0X	XX)X5XEUS0X* S-  U
S-  -
  XS-  U
S-  -
  X*X5* S-  US-  -   XE* S-  US-  -
  US0X* S-  U
S-  -   XS-  U
S-  -   X** X5* S-  US-  -
  XE* S-  US-  -   US0XS-  U
S-  -
  X* S-  U
S-  -
  X*X5* S-  US-  -
  XE* S-  US-  -   US0XS-  U
S-  -   X* S-  U
S-  -   X** X5* S-  US-  -   XE* S-  US-  -
  US0/:X  d   eg )	Nza,b,c,d,e,f,gr   rz   Tr}   r   r|   r   r  )ra   rb   rc   rd   re   r   r   termsr   r   s2s3s4s5s                 ru   test_issue_12114ri  	  sS   !/2A!aWqs]AGacM1qs7QS=AX1_aQ$hAoqa4x!Q$@E
1q,4
8CadUQYA	a!Q$hB	a!AqD&j	B	aB	aB	
B2q"aA!R0	
qQ1q"-	
CEBqDL!TBqD[!r!tbd{Ar!tbd{Aq	2	
CEBqDL!TBqD[!Sr!tbd{Ar!tbd{Aq	2	
qD2a4KCEBqDL!r!tbd{Ar!tbd{Aq	2	
qD2a4KCEBqDL!Sr!tbd{Ar!tbd{Aq	2
3 
3 
3 
3rw   c                      [        S[        [        -  -
  5      / :X  d   e[        [        [        -  [        5      / :X  d   e[        [        [        -  [        -
  [        5      / :X  d   eg r  )rG   r   ri   r   rw   ru   test_infrk  	  sQ    RT?b   Aq>RAA"$$$rw   c            	         [        S5      n [        S5       Vs/ s H
  o" U5      PM     nn[        S5      n[        [	        X#5      5      nUS S USS  su  pVpx[        [        S5       Vs/ s H8  nUSU-     U-  USU-  S-      U-  -   USU-  S-      U-  -   USU-  S-      -   PM:     snXVU45      n	US S USS  su  pVpx[        [        S5       Vs/ s H8  nUSU-     U-  USU-  S-      U-  -   USU-  S-      U-  -   USU-  S-      -   PM:     snXVU45      n
XS      R                  U5      R                  5       XS      R                  5       :X  d   eg s  snf s  snf s  snf )	Nr   r   zx:15r|   r   r   rz   r   )r   r"  r   r~   r+  rG   xreplacer  )r   r   funr  r,  ri   rj   rk   rc   ssymsfuns              ru   test_issue_12448rq  %	  s   Ar
#A1Q4C
#
&/CCDr7CGLIQ1qA AaC&(QqsQwZ\)AacAgJqL81QqS1W:E1I'D r7CGLIQ1qA AaC&(QqsQwZ\)AacAgJqL81QqS1W:E1I'D A<  &002V ! ! ! $
s   E*?E?E#c                     [        [        S-  S[        -  -   5      S[        1:X  d   e[        [        S-  S[        -  -   [        5      [        1:X  d   e[        [        S-  S[        -  -   [        /5      [        1:X  d   e[        S[        -  S[        -  -   S[        -  -   [        [        /5      [        [        1:X  d   e[        S[        -  S[        -  -   S[        -  -   [        [        5      [        [        1:X  d   e[        S[        -  S[        -  -   S[        -  -   [        [        15      [        [        1:X  d   eg Nrz   r   )rY   ri   rj   rk   r   rw   ru   test_denomsrt  7	  s    !A#!)A&&&!A#!)QA3&&&!A#!)aS!aS(((!A#!)ac/Aq6*q!f444!A#!)ac/1a(QF222!A#!)ac/Aq6*q!f444rw   c                     [        S5      u  pp#pE/ U S-  U -
  PX-  U-
  PX-  U-
  PX-  U-
  PX-  U-
  PX-  U-
  PX-  U-
  PU * S-  US-  -   SU-  S-  -
  PX-  US-  -
  US-  -
  US-  -
  PX-  US-  -
  US-  -
  US-  -
  PX-  SU-  S-  -
  US-  -
  PX-  U-
  PX-  U-
  PX-  US-  -
  US-  -
  US-  -
  PU * S-  US-  -
  US-  -   US-  -
  US-  -
  US-  -
  PU* S-  X#-  -   US-  -
  US-  -
  US-  -
  US-  -
  PX$-  US-  -
  US-  -
  US-  -
  PX%-  U-
  PX-  U-
  PX-  US-  -
  US-  -
  US-  -
  PU* S-  X#-  -   US-  -
  US-  -
  US-  -
  US-  -
  PU * S-  US-  -
  US-  -
  US-  -   US-  -
  US-  -
  PU* S-  US-  -
  X4-  -   US-  -
  PU* X5-  -   PX-  U-
  PX-  SU-  S-  -
  US-  -
  PX$-  US-  -
  US-  -
  US-  -
  PU* S-  US-  -
  X4-  -   US-  -
  PU * S-  SU-  S-  -
  US-  -   PU* XE-  -   PX-  U-
  PX-  U-
  PX%-  U-
  PU* X5-  -   PU* XE-  -   PU * US-  -   PU S-
  PnU SU[        SS5      U[        SS5      U[        SS5      U[        SS5      US0U SU[        R                  U[        SS5      USUSUS0U SU[        SS5      U[        SS5      U[        SS5      U[        SS5      US0U SUSUSUSUSUS0U SU[        SS5      U[        SS5      U[	        S	5      S-  U[	        S	5      * S-  US0U SU[        SS5      U[        SS5      U[	        S	5      * S-  U[	        S	5      S-  US0/n[        U5      U:X  d   eg )
Nzx0 x1 x2 x3 x4 x5rz   r|   r   r   r   r   r   r{   )r   r   r   r   r.   rG   )r&  r'  r  r  r  r  r  solss           ru   test_issue_12476rw  @	  s   $%89BBB
SBEBJ 
S
 
SBEBJ 
S
 
SBEBJ 
SPR
 
SEBJ
SAA"Q.
S021r!t0Cbd0J
SEBqDL2a4"Q$&
S(*"QA(=
S?Aurz
SKM5SU:
S EBqDL2a4"Q$&
S *,A1r1u(<r!t(Cbd(JRPQT(Q
S CEBEMBqD 2a4'"Q$.A5	
S 8:ur!t|bd7JRPQT7Q	
S
 EBJ
S
 

S
 %'EBqDL2a4$7"Q$$>
S CEBEMBqD 2a4'"Q$.A5
S CEBqDL2a4"a%'"Q$.A5
S 9;s1ur!t|be7KbQRd7R
S C"%K
S 
S &(UQrT!V^bd%:
S =?EBqDL2a4<ORTUVRV<V
S CEBqDL25 2a4'
S +-Q2a"a%)?
S CEru
S OQeVXj
S EBJ
S 

S &(C"%K
S 35ru
S @BcBEk
S LNPQ6
SD BAHQNBQQSU]^`bcUdfhjklBHRORB2rJBQXb!_b(1a.RTV^_`bcVdfhjklB2q"aQA6BQXa^RaBQUVWQXPXYZPZ\^`bcBQXa^R$q'!RQUVWQXYZQZ\^`bceD ;$rw   c                      [        S5      n [        U [        S5      [        S5      -   -  [        S5      -
  U 4U 5      / :X  d   eg )Nrl   r{   rz   r  )rl   s    ru   test_issue_13849ry  W	  s@    A!T!WtAw&'$q'115q9R???rw   c                  ~    SSK Jn Jn  [        SU-  U -  [        -   [
        -   [        5      SU -  [
        -
  /:X  d   eg )Nr   newtonkilor  i)sympy.physics.unitsr|  r}  rG   ri   rj   r{  s     ru   test_issue_14860r  \	  s8    04"Q&*uV|a/?.@@@@rw   c            
      ,   [        S5      u  pp#[        SU * S-   S-  US-  -  -   U* S-
  S-  US-  -  -   SU * S-   S-  US-  -  -   U* S-   S-  US-  -  -   XS-   /XX#5      SSU* [        SUS-  S-
  -  5      -  U4SSU[        SUS-  S-
  -  5      -  U4/:X  d   e[        XU-  SUS-  -  -   S-
  U* S-  SUS-  -  -   S-
  /X!U5      US[        S5      * S-  4US[        S5      S-  4/:X  d   e[        X#S-  -   S-
  X#S-  -   S-
  45      / :X  d   eg )Nz:4r   r   rz   r   r   rm  r  )rf   rg   ra   rb   s       ru   test_issue_14721r  a	  s   JA!
qb1fq[A!a!AqD 00
qb1fq[A!a!AqD 00	q5  
B41a4!8%%q)	
B$q!Q$(|$$a(#** * * 	Q31a4<!aRTAadF]Q.012q:	
AQxzQ4719->// / / !d(Q,qD1-."444rw   c            	          [        SSS9n [        [        U S-  SU S-  -  -
  S-   5      [        U S-  SU S-  -  -
  S-   5      -   S	[        U 5      -  U -  -
  U 5      [        S5      /:X  d   eg )
Nri   Tr  r      rz   iA  i  r6  )r   rG   r.   r   r  s    ru   test_issue_14779r  o	  s    $AadSAXo,-QTC1H_6 1 c!f9Q;''(*.23i[9 9 9rw   c            	      X   [        [        S-
  [        [        S-   [        S-
  SS945      [        S[        S0[        S[        S0/:X  d   e[        [        S-
  [        S[        S-
  SS945      [        S[        S0:X  d   e[        [        S-
  [	        [        S-   [        S-
  SS945      [        S[        S0:X  d   e[        S[        -  S[        -  -   S	-
  S
[        -  [        -
  5      n [        S[        -  S-   S[        -  S-
  5      n[        X/5      [        S[        S0:X  d   eg )Nrz   r|   FrD  r   r   r   i0  iW ir   r  r4  r   rq  )rG   rj   r   ri   r   r   )r(  r)  s     ru   test_issue_15307r  u	  s   !a%QU1q559:;
RAAq!%& & &!a%QA678	
Aq!  !a%QUAEE:;<	
B1  
U1Wqs]V#U1Wq[
1C
RTAXqsRx
 C#2q,,,rw   c                  6   [        [        S-
  [        5      S/:X  d   e[        [        S-
  /[        5      [        S0:X  d   e[        [        [        S[        S-  -  S-  -   [        S[        -  -   5      [        5      / :X  d   e[        [        [        S[        S-  -  S-  -   [        S[        -  -   5      /[        5      / :X  d   e[        [        [        S[        S-  -  S-  -   [        S[        -  -   5      [        [        S5      /[        5      / :X  d   eg )Nr|   rz   r   )rG   ri   r   rj   r   rw   ru   test_issue_15415r  	  s    Q?qc!!!!a%!1%%%A!Q$qL!ac'*A."444"Q1a4\1qs7+,a0B666"Q1a4\1qs7+R1X6:b@@@rw   c            
      	   [        [        [        S-  S[        -  -
  S-   [        S-  S[        -  -
  S-   -  S5      5      / SQ:X  d   e[        [        [        S-   -  S-
  5      S	/:X  d   e[        [        * [        * S-   -  S-
  5      S/:X  d   e[        [        S-  S
-
  [        S-  S-
  -  S-
  5      S	S/:X  d   e[        [        S-  S[        -  -
  S-
  [        S-  S-
  -  SSS[        S5      -  -
  -  -
  5      [        S5      /:X  d   e[        [        [        [        R
                  -   -  S[        S5      -  -
  5      [	        S5      /:X  d   e[        [        S-  S-   [        -  S-
  5      S/:X  d   e[        [        S[        -  -  S-
  5      SS/:X  d   e[        [        S-  S[        -  -  [        S5      -
  5      SS/:X  d   e[        [        [        [        R
                  -   -  [        SS5      -
  5      [        SS5      /:X  d   e[        [        [        S5      5      * [        -  S-
  5      S[        S5      [        S[        SS5      -  5      [        [        -  -   -  /:X  d   e[        [        S5      [        -  [        [        S5      5      -
  5      [        R
                  /:X  d   e[        [        S5      * [        -  S[        S5      -  -   5      SS[        S5      S-  -  S[        S-  -  -   S[        -  [        -  [        S5      -  -
  [        S5      S-  S[        S-  -  -   -  /:X  d   e[        [        S5      [        -  S[        S5      -  -
  5      S/:X  d   e[        [        [        -  S-   5      S/:X  d   e[        S[        -   [        -  S[        -  -
  5      S/:X  d   e[        [        S5      [        S5      -   [        -  S[        S
5      -  S-   [        SS5      -  -
  5      [        SS5      /:X  d   e[        S5      n [        U [        -  U S-  -
  [        5      S/:X  d   e[        U [        -  SU -  -
  [        5      S/:X  d   e[        U [        -  U -
  [        5      S/:X  d   e[        SSS9n [        U [        -  U S-  -
  [        5      S/:X  d   e[        U [        -  SU -  -
  [        5      S/:X  d   eg )Nrz   r   r9  rN  r   r   )rz   r|   r   r{   r   r   r   r   r   r|   r\  r  rm  r{   rb   r   Tr  )rG   r   ri   r.   r   r   r   r&   r   r   r   )rb   s    ru   test_issue_15731r  	  s_    QTAaCZ"_1r!tb(891=>BTTTT!q1u!"rd***1"Q!#$+++!Q$(adQh'!+,Q777!Q$1*q.AqD1H-1qay=0AABtAwiOOOQZ1T!W9,-!A$777!Q$(Q#$+++QqSA1a&(((!A#1Q'(QF222QZ8Aq>12x1~6FFFF4Q=.1$q()aQQA=N9ORSTVRV9V1W-XXXX$q'AT!W-.166(:::47(QDG,-!s1vqy[1RU7"QqSVCF]2SVQY2q55HI2K K K K$q'A47+,333A?qc!!!!a%!ac!"qc)))$q'DG#a'1T!W9q=8Aq>*IIJxXY[\~N^^^^sAA1a QC'''A!QB4'''A1!$$$sT"AA1a QC'''A!QB4'''rw   c                      [        [        S-  [        [        S-   -  -   [        5      (       d   e[        [        [        S-  -  [        S-  -   [        S-  -   S-   5      (       d   eg )Nr   r  r|   rz   r  )rG   ri   rj   r   r   rw   ru   test_issue_10933r  	  sU    A1s7#Q''''1a4!Q$A%*++++rw   c                  ^    [        SSS9n [        [        U [        -  5      U 5      S/:X  d   eg )Nri   Tr  r   )r   rG   r  rj   r  s    ru   test_Abs_handlingr  	  s-    $AQqS1!$$$rw   c                     [        S5      n [        SU S-  -  SU -  -   S-   S:*  U S:  /U 5      [        R                  L d   e[        U S-  SU S-  -  -
  S	U -  S-  -
  S
-
  S:  U S-
  S:*  /U /5      [        R                  L d   eg )Nri   rz   r{   r   r   g      ?r|   g)\( @g=
ףp=L@j   r   )r   rG   r   falser  s    ru   test_issue_7982r  	  s    sA!AqD&1Q3,#q(!s(3Q7177BBB!Q$ad"U1WQY.491q5A:FLPQPWPWWWWrw   c                  x    [        S5      u  p[        X-  U -
  U-
  X-  U -
  U-
  /X/5      XS-
  -  U4/:X  d   eg )Nr  r   rw  r  s     ru   test_issue_14645r  	  sJ    5>DA!#'A+qsQw{+aV4!U)Q8HHHHrw   c                      [        S5      u  p[        [        SU S:  4X S:  45      U-
  5      U[        SU S:  4U S45      0/:X  d   eg )Nr  r   r  T)r   rG   r/   r  s     ru   test_issue_12024r  	  s\    5>DACS>ACx=9A=>
YQW~4y1	234 4 4rw   c            
      &   [        S[        -  [        -  [        -   [        5      [        [	        [        5      [
        [        -  -   5      * [        [	        S5      5      -  [        [	        [        5      [
        [        -  -   5      [        [	        S5      5      -  /:X  d   e[        [        [        S-  -  [        S-  -   [        5      [        [        S[	        S5      -  S[	        [        5      -  -   S[
        -  [        -  -   5      5      /:X  d   eg )Nr   r9  i)rG   ri   r   r.   r&   r   r%   r$   r   rw   ru   test_issue_17452r  	  s    !Q$R#c"g"n)=(=d3q6l(J(,SWqt^(<T#a&\(I(K K K KQrTRU"A&3xCGbRj8PSUVWSWXZSZ8Z/[+\*]]]]rw   c                      [        [        [        [        S5      S-  -  5      [        -  * [
        -   [        5      / :X  d   eg r  )rG   r8   ri   r   r   r   r   rw   ru   test_issue_17799r  	  s5    #a!A$q&k"B&&*A."444rw   c                      [        SSS9n [        [        [        U S-  S-
  5      U -
  5      U -
  5      SS[        S5      -   S[        S5      -   /:X  d   eg )Nri   Tr  rz   r   r   )r   rG   r  r.   r  s    ru   test_issue_17650r  	  sS    sASA]Q&'!+,BaL!d1g+0NNNNrw   c                      S[         S-  -  S[         S-  S-
  [        S5      S-  -  -  -  SS[         S-  S-
  [        S5      S-  -  -  -  -   n [        U 5      b   eg )Nrz   rm  r   r   r|   )ri   r   rQ   rM  s    ru   test_issue_17882r  	  sb    	AqD!QTAX1a((	)Aq!Q$(ad1f1E/E,F	FB9rw   c                  t   [        [        [        7[        S-  -   5      [        5      / :X  d   e[        [        [        * [        S-  -   5      [        5      / :X  d   e[        [        [        7[        S-  -
  5      [        5      / :X  d   e[        [        [        * [        S-  -
  5      [        5      / :X  d   eg r  )rG   r%   ri   r   rw   ru   test_issue_17949r  	  s    aR1Wq!R'''aR1Wq!R'''aR1Wq!R'''aR1Wq!R'''rw   c            	         [        [        [        [        S5      S5      5      SS/:X  d   e[        [        [	        [        S5      [        [        S5      -   [        5      5      / SQ:X  d   e[        [        [        [        S5      S5      5      SS/:X  d   e[        [
        [        [        S5      -   [
        5      [        [        S5      * /:X  d   e[        [        [        [
        S5      -
  [        [        S5      -   [        [
        5      -   [        5      [        [
        5      * [        [
        S5      -   [        [        S5      -
  /:X  d   e[        [        S-   [        [        S-   S5      -
  [        5      / SQ:X  d   eg )Nrz   r|   r   )r  r   r   r   r   )r   r   r|   )rG   r   r   ri   powra   rj   r6   r   rw   ru   test_issue_10993r  	  s"   HQNA&'B7222C1IA.23zAAAHQNA&'Aq61118Aq>!1%8Aq>/)::::8Aq>!HQN2SV;Q?SVGhWXZ[nD\_ghikl_mDmCnnnn!A#x!Q''+{:::rw   c                  2   [         [        -   S-   n [         [        -   n[        X/[         [        5      [         [        * [        S[        -   0:X  d   e[         S-   [        -   n[        X/[         [        5      [         S[        -
  [        S[        -   0:X  d   eg )Nr   r   rz   r   )ri   rj   r   rG   r   )r(  r)  r*  s      ru   test_issue_11553r  	  s~    
a%!)C
k/C#Q"q;,2;K&LLLL
a%$
$C#Q"q"/A*A1aJ\F\&]]]]rw   c                     [        S5      S-  n [        [        [        5      S-  [	        [        5      S-  -
  5        [        S[        [        5      S-  -  S[	        [        5      S-  -  -
  5      [        SU -  5      [        SU -  S[        S5      [        -  -
  -  S-  5      * [        SU -  S[        S5      [        -  -   -  S-  5      * /:X  d   e[         R                  n[        [        [        5      S-  [	        [        5      -   5      S[        U* [        S5      S-  -   [        S5      [        S[        S5      -
  5      -  S-  -   5      -  S[        U[        S5      S-  -   [        S5      [        S[        S5      -   5      -  S-  -   5      -  S[        [        S5      * S-  U-   [        S5      [        S[        S5      -
  5      -  S-  -   5      -  S[        [        S5      * [        S[        S5      -   5      -  S-  U-   [        S5      S-  -   5      -  /:X  d   e[        S[        [        5      -  [	        [        5      -
  5      [        S5      /:X  d   eg )Nr   r|   r{   r   rz   r   )	r   rG   r4   ri   r6   r2   r.   r   r   )rl   rg   s     ru   test_issue_19113_19102r  	  s   	!QA	#a&!)CFAI
3q619qQ{*+QVtAFAQ	M21455	a!fa$q'!)m$Q&	''0) ) ) ) 	
AQSV#$	$rDGAI~QQa[(9 9! ;;
<<
4DGAIQQa[(9 9! ;;<<
4a
Qaa$q'k):!:1!<<==
4aa$q'k**1,q04719<==	)? ? ? ?
 3q6CF"#Qy000rw   c            
      X   [        S5      S-  n [        S5      S-  n[        S5      S-  n[        S5      S-  n[        S[        S-
  S-  -  S-
  5      SU* U -   [        U* U-   5      -
  U* U -   [        U* U-   5      -   X0-   [        U* U-
  5      -
  X0-   [        U* U-
  5      -   /:X  d   eg )Nr|   r   r{   r  r   rz   )r   r.   rG   ri   ra   rb   rc   rd   s       ru   test_issue_19509r  
  s    	!QA	!QAQ	AQ	AAqD19q!a	
Qqb1f	
Qqb1f	aR!V	aR!V	&   rw   c            	      z   [        S5      u	  pp#pEpgnX'-  X-  -   U-   n	SUS-
  U S-
  -  U-  S[        XI-  5      -
  -  -
  n
X2XI[        U
5      -  -
  -  -
  nS[        X$-  U-
  X"U-  X-  -   U-   -  -  5      -
  S[        XBU-  X-  -   U-   -  5      -
  -  nXSU-  -  -  USU-  -  -
  S-   /n[        X5      U:X  d   eg )NzTHT HT DBH dib c0 c1 c2 c3 c4r   )r   r%   r&   rG   )THTHTDBHdibc0c1c2c3c4r   rhsr   termr   s                 ru   test_issue_20747r  
  s    -45T-U)CSrrr"A
Qq!B&CI6
6C	B3s8O$	$BcfslSb&36/B*>%?@AA3rr6CF?R/0113Dad|dQrTl*Q.
/C=Crw   c            	         [        [        [        S-  4[        [        [        4SS9[        S0/:X  d   e[	        S5      =n u  pp4nSUS-  -  U-  SUS-  -  US-  -  -   SUS-  -  U-  U-  -
  US	-  S-  -   SUS-  -  U-  -
  SU-  US-  -  -   SU-  US-  -  -   SU-  U-  -   S
US-  -  SUS-  -  US-  -  -   SUS-  -  U-  -
  SUS-  -  S-  -   SUS-  -  U-  -
  SUS-  -  -   US-  -   SU-  -   SUS-  -  SU-  US-  -  -   SU-  U-  -
  SUS-  -  U-  SUS-  -  -
  SU-  U-  -   /nUSUS-  -  US-  S-  -   XSS-  * 0USUSXSS-  * US-  S-  -
  0/n[        X`SS9U:X  d   e[        [        X`5      SS9=o:X  d   U5       eg )Nrz   Tr}   r   za1:6r  r   r|   r{   r   r   r   r  )rG   ri   rj   rk   r   rC   )	r   a1a2a3a4a5r   r   r   s	            ru   test_issue_27001r  
  s=   !QTQ1ID1q!fX===$V_,ARU72:"a%A%"a%
25Aa?!BE'"*L	"RU
rT"a%Z "#B$r'*+-b!e8aAgb!em+C	"a%
,r1uWQY,!"2q5,,./Ag,68:A,>@A",EFHQh
B$r1u*GtBwG "2q5aAg 5"R ?AC "a%"a%'!2Av.QArE6BPQERSGCS0T
UCd#s***Xc%D11A9<1<9rw   c                     [         S[         -   S-  -  n [        U R                  [         S[        -  S-   05      R	                  [        5      S:  [        5      [        S5      [        :  [        [        S5      S-  :  -  :X  d   e[        U R                  [         S[        -  S-   05      R	                  [        5      S:  [        5      [        S5      S-  [        :  [        [        S5      S-  :  -  :X  d   e[        U R                  [         S[        -  S-   05      R	                  [        5      S:  [        5      [        S	5      S-  [        :  [        [        S5      :  -  :X  d   e[        U R                  [         S[        -  S-   05      R	                  [        5      S:  [        5      [        S5      [        :  [        [        S5      S-  :  -  :X  d   eg )
Nr   rz   r|   r   r   r  r   r   r  )rl   rG   r   ri   r	   r   r  s    ru   test_issue_20902r  #
  sp   	
q1ul	AAEAI',,Q/!3Q7AbEAI!aPReTUg+;VVVVAEAI',,Q/!3Q7AbE!GaKAPQRTPUVWPWK;XXXXAEAI',,Q/!3Q7AbE!GaKAPQRTPUI;VVVVAEAI',,Q/!3Q7AbEAI!aPReTUg+;VVVVrw   c            
      d   [        SSS9n [        [        [        S5      5      -
  [        [        [        U 5      5      -
  [        [        [        5      -
  /n[        U[        [        [        5      [        [        S5      5      [        [        U 5      5      [        [        [        S5      5      5      4/:X  d   e[        [        5      [        [        * 5      -
  [        [        5      [        [        5      [        [        * 5      -   -  -
  [        -   S-
  /n[        U[        5      [        S0:X  d   eg )Nra   Tr  r   r{   )
r   ri   r(   r4   rj   r)   rk   r*   rG   r%   )ra   r  	newsystems      ru   test_issue_21034r  +
  s    $A$s1v,DQL 0!d1g+>FAq!tCF|T#a&\4SQRVCU&V%WWWW a&3r7"d1gs1vQB/?&@@1DqHIIA1a&(((rw   c                     [         [        [        S-  [         S-  -  [        S-  [        S-  -  -   [        S-  -
  5      -  [         S-  [        S-  -   -  n [        [        -  [         S-  [        S-  -   -  n[        X-
  -  [        -
  [         * -  X-
  4[        X-   -  [        -
  [         * -  X-   4/n[        [        S-  [        S-  -   [        S-  -
  [         [        -  [        [        -  -   [        -
  /[        [        5      U:X  d   eg r  )ra   r.   ro   rb   rc   rG   ri   rj   )rk   rl   r   s      ru   test_issue_4886r  6
  s    	$q!tAqDy1a419$q!t+
,,adQTk:A	!QTAqD[AY]aR !%(AquIMQB+?*G
HC!Q$A+1$acAaCi!m4a;sBBBrw   c                      [        SSS9u  pp#[        X[        -  -  X#[        -  -  -
  [        5      [        X -  5      [        X-  5      -  /:X  d   eg )Nr  Tr  )r   rG   ri   r&   r  s       ru   test_issue_6819r  =
  sK    T2JA!a4!qD&!$QS#ac():(;;;;rw   c                  h    [        S5      n [        SU -
  [        -
  S-  U 5      S[        -
  /:X  d   eg )Nri   r   r   )r   rG   r   r  s    ru   test_issue_17454r  B
  s2    sA!a%!)a#Aw...rw   c                      SS[        S5      -  S-  -
  /n [        S[        -  [        S[        S-  -  5      -   S-
  5      U :X  d   eg )Nra  rz   )r.   rG   ri   )r   s    ru   test_issue_21852r  G
  sH    RQZ\!"H1tAadF|#b()X555rw   c                  Z   [         * [        [        S[        -
  -  -  [        S[        -
  -  S[        -
  -  -   SS[        -
  -  -  -   n [        U [        SSS9nU[        [        S[        -
  -  -  [        S[        -
  -  -
  [         S[        -
  -  -   [        -  SS[        -
  -  -  /:X  d   eg )Nr   FrA  )rd   ra   rc   re   rb   rG   r  s     ru   test_issue_21942r  L
  s    
qQU|a!a%j!a%00Aq1uI>	>B
AU
3CQq1q5z\AAJ.	AE
AE$ % % % %rw   c                      [        [        S-  [        S-  -   [        -
  S-
  SS9n [        [        S-  [        S-  -   [        -
  S-
  SS9nX:w  d   eg )Nr{   rz   r   F)cubicsTr   )r-   rads     ru   test_solver_flagsr  S
  sN    A1q1$U3D
1q!ta!#D
1C;;rw   c                  b   S[         S-  -  S[        S-
  S-  -  [        S-  -  -
  n [        U R	                  5       [         SS9S[        -  [        S-
  S-  -  [        S[        S5      [        -  -   -  [        S-
  S-  -  [        * S[        S5      [        -  -   -  [        S-
  S-  -  /:X  d   eg )	Nrz   r|   r   r   r   Fr  r   )ri   rj   rk   rG   r  r.   r   rM  s    ru   test_issue_22768r  Y
  s    	
1a4"a!eaZ-1$	$Ba% 
c1q51*nad1gai0!a%!;	
AQ	MAEA:%'' ' 'rw   c                      [        [        S-  * [        [        S-  [        -  5      -   S-   S[        -  [        -  S[        -  [        -  -   45      [        S[        [        0[        S[        [        0/:X  d   eg )Nrz   r   r   r   )rG   rj   r&   ri   r   r   rw   ru   test_issue_22717r  `
  si    1a4%#ad1f+%)2a46AaCE>:;	
B11a|@% % % %rw   c                  r   ^ [         S-
  S-  S-
  m[        T5      n [        U4S jU  5       5      (       a   eg )Nr{   r  r|   c              3   P   >#    U  H  nTR                  [        U5      v   M     g 7fr   )r   ri   )r   r   r   s     ru   r   #test_issue_25176.<locals>.<genexpr>h
  s     .#Q2771a==#s   #&)ri   rG   rI  )r   r   s    @ru   test_issue_25176r  e
  s7    
a%"qB
)C.#......rw   c                     [        S[        -  [        S-  [        [        -   [        -   [
        -   -  -
  [        S-  S[        -  S[        SS5      -  [        -  -
  S[        -  -   [        -   S[        SS5      -  [
        -  -   S[
        -  -   [        -   -  -
  [        S-  SS[        SS5      -  -  [        -  [        S5      [        -  -   S[        SS5      -  [        -  -
  S[        -  -   [        S5      [
        -  -   SS[        SS5      -  -  [
        -  -   S[        SS5      -  [        -  -   S[        -  -   -  -
  [        S-  S[        S5      -  [        -  SS[        SS5      -  -  [        -  -
  [        S5      [        -  -   S[        S5      -  [
        -  -   [        S5      [        -  -   SS[        SS5      -  -  [        -  -   -  -
  [        S[        -  S[        -  -   S[        S5      -  [        -  -   S[        S5      -  [        -  -   -  -
  S-   5      n [        U [        [        [        [        [
        [        /[        5      [        [        SS5      [        [        SS	5      [        [        S
S5      SS[        SS5      -  -  S-  -
  SS[        SS5      -  -  S	-  -   [        SS[        SS5      -  -  S-  S[        S5      -  S-  -
  SS[        SS5      -  -  S-  -
  [
        [        S
S5      SS[        SS5      -  -  S	-  -
  SS[        SS5      -  -  S-  -   [        S[        S5      -  S-  SS[        SS5      -  -  S-  -   SS[        SS5      -  -  S-  -   0:X  d   eg )Nr  r{   r   rz   r|   r  r  r  i  i   r   ir   i  ir   )r   ra   ri   rb   rc   re   r   rd   rf   r.   rL   rM  s    ru   test_issue_10169r  k
  sl   	
2a4!Q$A	A&&AqsQ15Ea5G/G!A#/M	0
x!}Q0!"10%'(0) ** *,-qD"Q15E2Ea2G$q'RS)2S	8Aa=3qS3!#'7193-/0HQqM1A/A!/C3DFGRSTUFVWXFX3Y[\]^[^3_ -`` 	
1aQikAa!A..q004719<qay{JQ	a!A&&q() 	** -.qsQqSy1T!W9Q;/F	$q'	!0 -	
  
B %R!Q1a);Q?	8Aa=	8Bt	8CqHQqM!11#55!Xa]:J8J48OO	3q(1Q-#bajn4qHQqM9I7I#7MM	8CqHQqM!11$661hqm;K9KC9OO	3tAw;s?Qq(1Q-//33bHQqM9I6I#6MMD   rw   c                     [        S5      u  pp#[        U [        [        5      -  U[	        [        5      -  -   U[        [        U-
  5      -  5      nUR
                  UR                  -
  R                  SS9n[        XRU4[        5      nUUS[        U [        U S-  US-  -   5      -
  U-  5      -  X S-  * U [        U S-  US-  -   5      -  -   US-  -
  U [        U S-  US-  -   5      -
  -  0US[        U [        U S-  US-  -   5      -   U-  5      -  X S-  U [        U S-  US-  -   5      -  -   US-  -   U [        U S-  US-  -   5      -   -  S-  0/:X  d   eg )NzA, B, r, phiT)trigrz   r   )r   r   r6   rl   r4   lhsr  r  rL   r2   r.   )r  r  r   r  re   r   r  s          ru   *test_solve_undetermined_coeffs_issue_23927r  |
  sv   >*LA!
1SV8aAh#a#g,/A
%%!%%-		T		*B$RS15DQtQadQTk**A-..	TEAd1a4!Q$;'''!Q$.T!Q$A+5F1FG
 	QtQadQTk**A-..	qD1T!Q$A+&&&A-DA14E0EFrI
   rw   c                     ^ ^ [        [        S 5        [        SSSS9m[        TS-  [	        S5      S-  -
  5      m [        [        U U4S j5        g )Nc                  D    [        [        [        S-  S5      [        5      $ )Nrz   rw  )rG   r
   ri   r   rw   ru   r   "test_issue_24368.<locals>.<lambda>
  s    c!Q$mQ(?rw   re  Tr  rz   r   c            	         > [        [        T S-  T S-   -  ST -  T S-   -  -   ST S-   -  -   S5      T -  [        T S-  T S-   -  ST -  T S-   -  -   ST S-   -  -   S5      -   T5      $ rs  )rG   r
   r   re  s   ru   r   r  
  s    s1a4Q<!A#q1u+3MPQSTWXSXPY3Y[\/]_`.`cfghjkgkmnqrmrgsvwxyvy{|  @A  |A  wB  hB  EF  HI  LM  HM  EN  hN  PQ  dR  /R  TV  )Wrw   )r_   r   r   r+   r   r  s   @@ru   test_issue_24368r  
  sK      ?@	dT	2BbdQqT!VmA
  !W  Xrw   c                     [        S5      S-  /[        S[        [         R                  [        S:*  4S[        -  S[        S-
  S-  -  S-  -
  S-
  [        S:  [        S:  -  [        S:  -  [        S:  -  [        S:  -  4S	S
[        -  -
  [        S:  [        S:  -  [        S:  -  [        S:  -  4S[        -  S[        S-
  S-  -  S-  -
  S-
  [        S:  [        S:  -  [        S:  -  [        S:  -  4S	S[        -  -
  [        S:  [        S:  -  [        S:  -  4S[        -  S[        S-
  S-  -  S-  -
  S-
  [        S:  [        S:  -  [        S:  -  [        S:  -  4SS[        -  -
  [        S:  [        S:  -  [        S:  -  4S
[        -  S[        S-
  S-  -  S-  -
  S-
  [        S:  [        S:  -  [        S:  -  4SS[        -  -
  [        S:  [        S:  -  4S[        -  S[        S-
  S-  -  S-  -
  S-
  [        S:  [        S:  -  [        S:  -  [        S:  -  4SS[        -  -
  [        S:  [        S:  -  [        S:  -  4S[        -  S[        S-
  S-  -  S-  -
  S-
  [        S:  [        S:  -  [        S:  -  4SS[        -  -
  [        S:  [        S:  -  4S[        -  S[        S-
  S-  -  S-  -
  S-
  [        S:  [        S:  -  [        S:  -  4S[        -  [        S:  [        S:  -  4S[        -  S[        S-
  S-  -  S-  -
  S-
  [        S:  [        S:  -  4S[        S:  4[         R                  S45      -  5      :X  d   eg )Nr   r|   r   r   r   rz      r   r	  rv  r   rd     rx  r4     rU  r2  r8  r]  T)r   rG   r/   NaNri   r   rw   ru   test_solve_Piecewiser  
  sS   bE!G9a		
Q	A1q51*Q		$qAv!q&&9QU&CqAv&NRSVXRX&YZ	r!ta1fa(AF3q2v>?	A1q51*Q		$qAv!q&&9Q!V&DB&OP	r!ta1fa(AF34	A1q51*Q		$q1ua&8AF&Cq2v&NO	bdQ!VQ'1r623	A1q51*Q		$qAv!q&&9QV&DE	bdQ!VB'(	A1q51*Q		$qAv!q&&9Q!V&DB&OP	acAFqAv&!b&12	A1q51*Q		$qAv!q&&9QV&DE	bdQ!VB'(	A1q51*Q		$qAv!q&&9QV&DE	
1qAv!b&!"	A1q51*Q		$qAv!b&&9:	
AF	
t%!     rw   N)r   ()  sympy.assumptions.askr   r   sympy.core.addr   sympy.core.containersr   sympy.core.functionr   r   r	   sympy.core.modr
   sympy.core.mulr   
sympy.corer   r   sympy.core.numbersr   r   r   r   r   r   sympy.core.relationalr   r   r   r   sympy.core.singletonr   sympy.core.symbolr   r   r   r   sympy.core.sympifyr   (sympy.functions.combinatorial.factorialsr   $sympy.functions.elementary.complexesr   r    r!   r"   r#   &sympy.functions.elementary.exponentialr$   r%   r&   r
  r'   r(   r)   r*   #sympy.functions.elementary.integersr+   (sympy.functions.elementary.miscellaneousr,   r-   r.   $sympy.functions.elementary.piecewiser/   (sympy.functions.elementary.trigonometricr0   r1   r2   r3   r4   r5   r6   r7   'sympy.functions.special.error_functionsr8   r9   r:   r;   sympy.integrals.integralsr<   sympy.logic.boolalgr=   r>   sympy.matrices.denser?   sympy.matricesr@   rA   sympy.polys.polytoolsrB   rC   sympy.printing.strrD   sympy.simplify.radsimprE   sympy.solvers.solversrF   rG   rH   rI   sympy.solversrJ   rK   rL   sympy.solvers.bivariaterM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   r~  rZ   sympy.polys.rootoftoolsr[   sympy.testing.pytestr\   r]   r^   r_   sympy.core.randomr`   r   r  ra   rb   rc   rd   re   rf   rg   rh   ri   rj   rk   rl   rm   rn   ro   rv   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  rK  rN  rP  rY  r[  r]  ra  ru  rx  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-  r0  r3  r=  rB  rF  rH  rJ  r\  r^  r`  rb  ri  rk  rq  rt  rw  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   rw   ru   <module>r     s   *  ' < <   8 > > 2 2 " < < & = N N G G K K 5 G G : b b b P P . ) ' 5 0 # ( ? ? &  L L9 9 9 # + : : 6 A A A A A@E- 2V	/eBP!4H	L@
8*.4&'
FG
1
O,J7"H( I IV:4#nH 3 3D0>fI1<::%LP$>NB0*+ZX$$*:)'X
% g	5 	5,

1 + +(, r rj	 ! ! J J3:#> P P(IV>6'4AH;K4"
I7%PD
)>X,3K1D
=:/xZE:7& * * X+ X+v
9 > >	G71a<"	211
+	!%
7-
5 * *2M  :<'+  3 3.%!$5.@
A
59	-A ( (>,
%
XI
4^5O

(;^1	 	=W)C<
/
6
%'%
/"Xrw   