§
    ]²ÅjÚr ã                   ó 	  — d dl Z d dlZd dlmZ d dlmZ d dlmZm	Z	m
Z
 d dlmZmZmZmZmZmZmZmZ d dlmZ d dlmZ d dlmZmZ d d	lmZ d d
lmZ d dlm Z m!Z! d dl"m#Z#m$Z$m%Z% d dl&m'Z'm(Z(m)Z) d dl*m+Z+ d dl,m-Z-m.Z. d dl/m0Z0 d dl1m2Z2 d dl3m4Z4 d dl5m6Z6m7Z7 d dl8m9Z9 d dl:m;Z;m<Z<m=Z= d dl>m?Z? d dl@mAZA d dlBmCZC d dlDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQmRZRmSZSmTZTmUZUmVZVmWZWmXZXmYZYmZZZm[Z[m\Z\ d dlBm]Z] d dl^m_Z_m`Z` d dlambZb d dlcmdZdmeZemfZf d dlgmhZh d dlimjZjmkZkmlZlmmZmmnZnmoZo d d lpmqZq d d!lrmsZs d d"ltmuZu d d#lvmwZw d d$lxmyZy d d%lzm{Z{m|Z|m}Z}m~Z~mZm€Z€m�Z�m‚Z‚ eHeIeFeGfZƒd d&l„m…Z…m†Z† d d'l‡mˆZˆm‰Z‰  eo¦   «         5   G d(„ d)e…e†eˆ¦  «        ZŠddd¦  «         n# 1 swxY w Y    eo¦   «         5   G d*„ d+e…e†e‰¦  «        Z‹ddd¦  «         n# 1 swxY w Y   d,„ ZŒd-„ Z�d.„ ZŽd/„ Z�d0„ Z�d1„ Z‘d2„ Z’d3„ Z“d4„ Z”d5„ Z•d6„ Z–d7„ Z—d8„ Z˜d9„ Z™d:„ Zšd;„ Z›d<„ Zœd=„ Z�d>„ Zžd?„ ZŸd@„ Z dA„ Z¡dB„ Z¢dC„ Z£dD„ Z¤dE„ Z¥dF„ Z¦dG„ Z§dH„ Z¨dI„ Z©dJ„ ZªdK„ Z«dL„ Z¬dM„ Z­dN„ Z®dO„ Z¯dP„ Z°dQ„ Z±dR„ Z²dS„ Z³dT„ Z´dU„ ZµdV„ Z¶dW„ Z·dX„ Z¸dY„ Z¹dZ„ Zºd[„ Z»d\„ Z¼d]„ Z½d^„ Z¾d_„ Z¿d`„ ZÀda„ ZÁdb„ ZÂdc„ ZÃdd„ ZÄde„ ZÅdf„ ZÆdg„ ZÇdh„ ZÈdi„ ZÉdj„ ZÊdk„ ZËdl„ ZÌdm„ ZÍdn„ ZÎdo„ ZÏdp„ ZÐdq„ ZÑdr„ ZÒds„ ZÓdt„ ZÔdu„ ZÕdv„ ZÖdw„ Z×dx„ ZØdy„ ZÙdz„ ZÚd{„ ZÛd|„ ZÜd}„ ZÝd~„ ZÞd„ Zßd€„ Zàd�„ Zád‚„ Zâdƒ„ Zãd„„ Zäd…„ Zåd†„ Zæd‡„ Zçdˆ„ Zèd‰„ ZédŠ„ Zêd‹„ ZëdŒ„ Zìd�„ ZídŽ„ Zîd�„ Zïd�„ Zðd‘„ Zñd’„ Zòd“„ Zód”„ Zôd•„ Zõd–„ Zöd—„ Z÷d˜„ Zød™„ Zùdš„ Zúd›„ Zûdœ„ Züd�„ Zýdž„ ZþdŸ„ Zÿd „ �Z d¡„ �Zd¢„ �Zd£„ �Zd¤„ �Zd¥„ �Zd¦„ �Zd§„ �Zd¨„ �Zd©„ �Z	dª„ �Z
d«„ �Zd¬„ �Zd­„ �Zd®„ �Zd¯„ �Zd°„ �Zd±„ �Zd²„ �Zd³„ �Zd´„ �Zdµ„ �Zd¶„ �Zd·„ �Zd¸„ �Zd¹„ �Zdº„ �Zd»„ �Zd¼„ �Zd½„ �Zd¾„ �Zd¿„ �ZdÀ„ �Z ekdÁ„ ¦   «         �Z!dÂ„ �Z"dÃ„ �Z#dÄ„ �Z$dÅ„ �Z%dÆ„ �Z&eldÇ„ ¦   «         �Z'dÈ„ �Z(dÉ„ �Z)dÊ„ �Z*dË„ �Z+dÌ„ �Z,dÍ„ �Z-dÎ„ �Z.dÏ„ �Z/dÐ„ �Z0dÑ„ �Z1dÒ„ �Z2dÓ„ �Z3dÔ„ �Z4dÕ„ �Z5dÖ„ �Z6d×„ �Z7dØ„ �Z8dÙ„ �Z9dÚ„ �Z:dÛ„ �Z;dÜ„ �Z<dÝ„ �Z=dÞ„ �Z>dß„ �Z?dà„ �Z@ endá¦  «        dâ„ ¦   «         �ZAdã„ �ZBdä„ �ZCdå„ �ZDdæ„ �ZEdç„ �ZFdè„ �ZGdé„ �ZHdê„ �ZIdë„ �ZJdì„ �ZKdí„ �ZLdî„ �ZMdï„ �ZNdð„ �ZOdñ„ �ZPdS )òé    N)ÚHashable)ÚAdd)ÚFunctionÚdiffÚexpand)ÚEÚFloatÚIÚIntegerÚRationalÚnanÚooÚpi)ÚPow)ÚS)ÚSymbolÚsymbols)Úsympify)ÚAbs)ÚexpÚlog)ÚMaxÚMinÚsqrt)ÚcosÚsinÚtan)Ú	integrate)ÚPolyÚPurePoly)ÚRootOf)Ússtr)Ú	FiniteSet)ÚsignsimpÚsimplify)Útrigsimp)Ú
ShapeErrorÚMatrixErrorÚNonSquareMatrixError©ÚDeferredVector)Ú_find_reasonable_pivot_naive)Ú	_simplify)ÚGramSchmidtÚImmutableMatrixÚImmutableSparseMatrixÚMatrixÚSparseMatrixÚ
casoratianÚdiagÚeyeÚhessianÚmatrix_multiply_elementwiseÚonesÚ
randMatrixÚ	rot_axis1Ú	rot_axis2Ú	rot_axis3Ú	wronskianÚzerosÚMutableDenseMatrixÚImmutableDenseMatrixÚMatrixSymbolÚdotprodsimpÚrot_ccw_axis1Úrot_ccw_axis2Úrot_ccw_axis3)Ú_dotprodsimp_state)ÚTupleÚWild)ÚKroneckerDelta)ÚflattenÚcaptureÚiterable)Úignore_warnings)ÚraisesÚXFAILÚslowÚskipÚskip_under_pyodideÚwarns_deprecated_sympy©ÚQ)ÚArray)ÚArrayDerivative)ÚMatPow)Ú
Quaternion)ÚaÚbÚcÚdÚxÚyÚzÚt)Ú_MinimalMatrixÚ_CastableMatrix)ÚMatrixSubspacesÚMatrixReductionsc                   ó   — e Zd ZdS )ÚSubspaceOnlyMatrixN©Ú__name__Ú
__module__Ú__qualname__© ó    úSC:\Projects\Historical\venv\Lib\site-packages\sympy/matrices/tests/test_matrices.pyrg   rg   C   ó   € € € € € Øˆrm   rg   c                   ó   — e Zd ZdS )ÚReductionsOnlyMatrixNrh   rl   rm   rn   rq   rq   H   ro   rm   rq   c                 ó&   — t          | | d„ ¦  «        S )Nc                 ó(   — t          | |k    ¦  «        S ©N)Úint©ÚiÚjs     rn   ú<lambda>z eye_Reductions.<locals>.<lambda>M   s   € µ3°q¸A²v±;´;€ rm   ©rq   ©Úns    rn   Úeye_Reductionsr}   L   s   € Ý  1Ð&>Ð&>Ñ?Ô?Ð?rm   c                 ó&   — t          | | d„ ¦  «        S )Nc                 ó   — dS ©Nr   rl   rv   s     rn   ry   z"zeros_Reductions.<locals>.<lambda>Q   s   € °1€ rm   rz   r{   s    rn   Úzeros_Reductionsr�   P   s   € Ý  1 n nÑ5Ô5Ð5rm   c                  ó*  — t          t          ¦  «        D ]ý\  } }|                     dd¦  «        }|j        dk    rt	          d„ |j        D ¦   «         ¦  «        sJ ‚|j        dk    rt          |j        ¦  «        t          u sJ ‚|j        dk    rt          |j        ¦  «        t          u sJ ‚| dz  s8t          | 	                    ¦   «         ¦  «        t          t          t          fv sJ ‚ŒÓt          |                     ¦   «         ¦  «        t          u sJ ‚Œþd S )Né   é   )rƒ   r„   c              3   óB   K  — | ]}t          |¦  «        t          u V — Œd S rt   )Útyperu   ©Ú.0rw   s     rn   ú	<genexpr>ztest_args.<locals>.<genexpr>X   s,   è è € Ð(IÐ(I¸A­¨a©¬µC¨Ð(IÐ(IÐ(IÐ(IÐ(IÐ(Irm   )Ú	enumerateÚclassesr>   ÚshapeÚallÚrowsr†   ru   ÚcolsÚflatÚlistÚtuplerG   ÚtodokÚdict)r|   ÚclsÚms      rn   Ú	test_argsr—   T   s  € Ý�GÑ$Ô$ð 	+ð 	+‰ˆˆ3Ø�IŠI�a˜‰OŒOˆàŒw˜&Ò Ð ¥SÐ(IÐ(IÀÄÐ(IÑ(IÔ(IÑ%IÔ%IÐ Ð ÐIØŒv˜Š{ˆ{�t A¤F™|œ|­sÐ2Ð2Ð2Ð2ØŒv˜Š{ˆ{�t A¤F™|œ|­sÐ2Ð2Ð2Ð2Ø�1‰uð 	+Ý˜Ÿš™œ‘>”>¥d­Eµ5Ð%9Ð9Ð9Ð9Ð9Ð9å˜Ÿš™	œ	‘?”?¥dÐ*Ð*Ð*Ð*Ð*ð	+ð 	+rm   c                  ó¾  — t           t          fD ]_} |                      dd¦  «        }t          ¦   «         5  |j        }d d d ¦  «         n# 1 swxY w Y   ||                     ¦   «         k    sJ ‚Œ`t          t          fD ]_} |                      dd¦  «        }t          ¦   «         5  |j        }d d d ¦  «         n# 1 swxY w Y   || 	                    ¦   «         k    sJ ‚Œ`d S ©Nrƒ   r„   )
r1   r/   r>   rS   Ú_matr�   r2   r0   Ú_smatr“   )r•   r–   ÚmatÚsmats       rn   Útest_deprecated_mat_smatrž   a   sZ  € Ý•Ð&ð ð ˆØ�IŠI�a˜‰OŒOˆÝ#Ñ%Ô%ð 	ð 	Ø”&ˆCð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à�a—f’f‘h”hŠˆˆˆˆÝÕ2Ð2ð !ð !ˆØ�IŠI�a˜‰OŒOˆÝ#Ñ%Ô%ð 	ð 	Ø”7ˆDð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	à�q—w’w‘y”yÒ Ð Ð Ð Ð ð	!ð !s#   µA	Á	A	ÁA	Â#B7Â7B;	Â>B;	c                  ó¶   — t          ddt          t          g¦  «        } | t          z  t          ddt          t          z  t          t          z  g¦  «        k    sJ ‚d S ©Né   r„   )r1   r^   r_   r`   )Úvs    rn   Útest_divisionr£   n   sJ   € Ýˆq�!•a��VÑÔ€AØ�Q‰3•&˜˜A¥¥!¡¥Q¥q¡S˜zÑ*Ô*Ò*Ð*Ð*Ð*Ð*Ð*rm   c            	      ó„  ‡ ‡— t          g d¢t          t          t          gdt          z  dt          t          z  gg¦  «        Š ‰ ‰ z   t          g d¢dt          z  dt          z  dt          z  gdt          z  ddt          z  t          z  gg¦  «        k    sJ ‚t          ddddg¦  «        Št	          t
          ˆ ˆfd„¦  «         d S )	N©r¡   r„   rƒ   r„   iÎÿÿÿ)r„   é   é   r¦   iœÿÿÿr¡   c                  ó   •— ‰ ‰z   S rt   rl   ©r–   r|   s   €€rn   ry   ztest_sum.<locals>.<lambda>w   s   ø€ ˜q 1™u€ rm   )r1   r^   r_   r`   rN   r'   r©   s   @@rn   Útest_sumrª   s   s°   øø€ Ý�	�	�	�A�q¥!˜9 q­¡s¨Cµµ1± oÐ6Ñ7Ô7€AØˆq‰5•F˜I˜I˜I¨­!©¨Q­q©S°!µA±# ¸½1¹¸dÀAÅaÁCÍÁEÐ8JÐKÑLÔLÒLÐLÐLÐLÝˆq�!�a˜�VÑÔ€AÝ
�:�}�}�}�}�}Ñ%Ô%Ð%Ð%Ð%rm   c                  óª   — t          dddt          g¦  «        } t          dddt          t          ¦  «        g¦  «        }t          | ¦  «        |k    sJ ‚d S )Nr¡   r„   éýÿÿÿrƒ   )r1   r^   r   Úabsr©   s     rn   Útest_absr®   y   sI   € Ýˆq�!�b�!�WÑÔ€AÝˆq�!�a��Q™œ�[Ñ!Ô!€AÝˆq‰6Œ6�QŠ;ˆ;ˆ;ˆ;ˆ;ˆ;rm   c                  ó¬   — t          d¦  «        } t          d¦  «        }| |z    | j        |¦  «        cxk    rt          ddgddgg¦  «        k    sn J ‚d S )N)©r¡   r„   ©rƒ   r¡   ©r°   )rƒ   r   r„   r¦   r§   r¡   )r1   Úadd©rZ   r[   s     rn   Útest_additionrµ   ~   s|   € Ýð ñ 	ô 	€Aõ
 	ð ñ 	ô 	€Að
 ˆq‰5�E�A”E˜!‘H”HÐ8Ð8Ò8Ð8¥¨¨A¨°°A°Ð'7Ñ 8Ô 8Ò8Ð8Ð8Ð8Ð8Ð8Ð8Ð8rm   c            
      ó   — t           t          fD �]}  | ddt          d¦  «        ¦  «        }||d d …d d …f         k    sJ ‚|dd d …f         t          ddg d¢¦  «        k    sJ ‚|d d …df         t          g d¢¦  «        k    sJ ‚|ddgd d …f         t          g d¢g d¢g¦  «        k    sJ ‚|ddgdf         |ddgdgf         k    sJ ‚|dddgf         |dgddgf         k    sJ ‚|d d …ddgf         t          ddgdd	gd
dgg¦  «        k    sJ ‚|d         dk    sJ ‚|dd…d d …f         t          g d¢g d¢g¦  «        k    sJ ‚|d d …dd…f         t          ddgdd	gd
dgg¦  «        k    sJ ‚|d d d…df         |ddgdf         k    sJ ‚|dd d d…f         |dddgf         k    sJ ‚ | ddt          d¦  «        ¦  «        }|g d¢d d …f         t          g d¢g d¢g d¢g d¢g d¢g¦  «        k    sJ ‚|d d …g d¢f         t          g d¢g d¢g d¢g¦  «        k    sJ ‚�Œt          j        d¦  «        }d|d<   d|d<   d	|d<    |j        ddgdg¦  «        t          dgdgg¦  «        k    sJ ‚ |j        ddgg d¢¦  «        t          g d¢g d¢g¦  «        k    sJ ‚ |j        g d¢g d¢¦  «        t          g d¢g d¢g d¢g d¢g¦  «        k    sJ ‚d S )Nrƒ   é	   r¡   ©rƒ   r¦   é   )r¡   r¦   é   r   ©r   r¡   r„   r„   r¦   r§   rº   ©r   r   )r   r„   r¡   r„   r¡   )r§   rº   é   )rƒ   r¹   r¦   r¹   r¦   )r§   r½   rº   r½   rº   r°   ©r   r¡   ©r„   r   )r„   r„   r„   ©r   r   r   )r¡   r   r¡   r„   )r„   r   r¡   r   ©r„   r   r   r   )r   r   rƒ   r   )r   r¦   r   r¦   )r1   r2   Úranger>   Úextract)ÚMrZ   s     rn   Útest_fancy_index_matrixrÅ   Œ   s5  € Ý•lÐ#ð ñ ˆØˆAˆa�•E˜!‘H”HÑÔˆØ�A�a�a�a˜˜˜�d”GŠ|ˆ|ˆ|ˆ|Ø��A�A�A�Œw�&  A y y yÑ1Ô1Ò1Ð1Ð1Ð1Ø����A�Œw�&   Ñ+Ô+Ò+Ð+Ð+Ð+Ø�!�Q�˜˜˜�Œ|�v y y y°)°)°)Ð&<Ñ=Ô=Ò=Ð=Ð=Ð=Ø�!�Q�˜�Œ|˜q ! Q ¨!¨ œ~Ò-Ð-Ð-Ð-Ø��Q˜�F�Œ|˜q !  q¨! f œ~Ò-Ð-Ð-Ð-Ø����Q˜�F�Œ|�v¨¨1 v°°1¨v¸¸1°vÐ&>Ñ?Ô?Ò?Ð?Ð?Ð?Ø�Œw˜!Š|ˆ|ˆ|ˆ|Ø��1��a�a�a�Œy�F I I I¨y¨y¨yÐ#9Ñ:Ô:Ò:Ð:Ð:Ð:Ø����A�a�C�Œy�F Q¨ F¨Q°¨F°Q¸°FÐ#;Ñ<Ô<Ò<Ð<Ð<Ð<Ø���1��a�Œy˜A˜q !˜f a˜iœLÒ(Ð(Ð(Ð(Ø��C�C�a�C�Œy˜A˜a ! Q ˜iœLÒ(Ð(Ð(Ð(ØˆAˆa�•E˜!‘H”HÑÔˆØ��� ! ! !Ð#Ô$­ØˆIˆIØˆIˆIØˆIˆIØˆIˆIØˆIˆIð0ñ )ô )ò ð ð ð ð ����K�K�K�Ô ¥FØˆOˆOØˆOˆOØˆOˆOð,ñ %ô %ò ð ð ð ñ õ
 	Ô˜1ÑÔ€AØ€A€d�GØ€A€d�GØ€A€d�GØˆ1Œ9�a˜�V˜a˜SÑ!Ô!¥VØ€CØ€Cð-	ñ &
ô &
ò 
ð 
ð 
ð 
ð ˆ1Œ9�a˜�V˜Y˜Y˜YÑ'Ô'­6Ø€I€IØ€I€Ið3ñ ,ô ,ò ð ð ð ð ˆ1Œ9�\�\�\ < < <Ñ0Ô0µFØˆˆØˆˆØˆˆØˆˆð	<ñ 5ô 5ò ð ð ð ð ð rm   c                  ó–  ‡‡— t          d¦  «        Št          d¦  «        Š‰‰z  } | d         dk    sJ ‚| d         dk    sJ ‚| d         dk    sJ ‚| d	         dk    sJ ‚| d
         dk    sJ ‚| d         dk    sJ ‚	 t          d¦  «         | d         dk    sJ ‚| d         dk    sJ ‚| d         dk    sJ ‚| d	         dk    sJ ‚| d
         dk    sJ ‚| d         dk    sJ ‚n# t          $ r Y nw xY wt          ‰| ¦  «        }| ‰j        | ¦  «        k    sJ ‚|d         dk    sJ ‚|d         dk    sJ ‚|d         dk    sJ ‚|d	         dk    sJ ‚|d
         dk    sJ ‚|d         dk    sJ ‚t          t          ˆˆfd„¦  «         ‰t          d¦  «        z  } t          | t           ¦  «        sJ ‚| d         t          k    sJ ‚| d         dt          z  k    sJ ‚| d         dt          z  k    sJ ‚| d	         dk    sJ ‚t          ‰z  }| |k    sJ ‚d‰z  } t          | t           ¦  «        sJ ‚| d         dk    sJ ‚| d         dk    sJ ‚| d         dk    sJ ‚| d	         dk    sJ ‚	 t          d¦  «         t          | t           ¦  «        sJ ‚| d         dk    sJ ‚| d         dk    sJ ‚| d         dk    sJ ‚| d	         dk    sJ ‚n# t          $ r Y nw xY wt          t          dgdt          gg¦  «        }|dz  |k    sJ ‚t          t          t          gddgg¦  «        }|dz  t          t          t          gt          t          gg¦  «        k    sJ ‚d S )N)r°   r±   ©r   r§   r²   r¼   rº   r¾   r„   ©r¡   r   r§   ©r¡   r¡   r¿   é   ©r„   r¡   r   z	c = a @ br¦   c                  ó$   •— t          ‰ ‰¦  «        S rt   )r7   r´   s   €€rn   ry   z%test_multiplication.<locals>.<lambda>à   s   ø€ Õ:¸1¸aÑ@Ô@€ rm   r^   rƒ   r¹   é
   é   z	c = 5 @ b)r1   ÚevalÚSyntaxErrorr7   Úmultiply_elementwiserN   r'   r   Ú
isinstancer^   r   r   )r\   ÚhÚc2rÄ   rZ   r[   s       @@rn   Útest_multiplicationrÕ   ¸   så  øø€ Ýð ñ 	ô 	€Aõ 	ð ñ 	ô 	€Að
 	
ˆ!‰€AØˆTŒ7�aŠ<ˆ<ˆ<ˆ<ØˆTŒ7�aŠ<ˆ<ˆ<ˆ<ØˆTŒ7�aŠ<ˆ<ˆ<ˆ<ØˆTŒ7�aŠ<ˆ<ˆ<ˆ<ØˆTŒ7�bŠ=ˆ=ˆ=ˆ=ØˆTŒ7�aŠ<ˆ<ˆ<ˆ<ð
Ýˆ[ÑÔÐð �Œw˜!Š|ˆ|ˆ|ˆ|Ø�Œw˜!Š|ˆ|ˆ|ˆ|Ø�Œw˜!Š|ˆ|ˆ|ˆ|Ø�Œw˜!Š|ˆ|ˆ|ˆ|Ø�Œw˜"Š}ˆ}ˆ}ˆ}Ø�Œw˜!Š|ˆ|ˆ|ˆ|ˆ|øõ ð ð ð Øˆðøøøõ 	$ A qÑ)Ô)€AØÐ&�Ô& qÑ)Ô)Ò)Ð)Ð)Ð)ØˆTŒ7�aŠ<ˆ<ˆ<ˆ<ØˆTŒ7�aŠ<ˆ<ˆ<ˆ<ØˆTŒ7�bŠ=ˆ=ˆ=ˆ=ØˆTŒ7�aŠ<ˆ<ˆ<ˆ<ØˆTŒ7�aŠ<ˆ<ˆ<ˆ<ØˆTŒ7�aŠ<ˆ<ˆ<ˆ<Ý
�:Ð@Ð@Ð@Ð@Ð@ÑAÔAÐAà	�F�3‰KŒK‰€AÝ�a�Ñ Ô Ð Ð Ð ØˆTŒ7•aŠ<ˆ<ˆ<ˆ<ØˆTŒ7�a�‘cŠ>ˆ>ˆ>ˆ>ØˆTŒ7�a�‘cŠ>ˆ>ˆ>ˆ>ØˆTŒ7�aŠ<ˆ<ˆ<ˆ<å	
ˆQ‰€BØ�Š7ˆ7ˆ7ˆ7à	ˆA‰€AÝ�a�Ñ Ô Ð Ð Ð ØˆTŒ7�aŠ<ˆ<ˆ<ˆ<ØˆTŒ7�cŠ>ˆ>ˆ>ˆ>ØˆTŒ7�cŠ>ˆ>ˆ>ˆ>ØˆTŒ7�aŠ<ˆ<ˆ<ˆ<ð	Ýˆ[ÑÔÐõ ˜!�VÑ$Ô$Ð$Ð$Ð$Ø�Œw˜!Š|ˆ|ˆ|ˆ|Ø�Œw˜#Š~ˆ~ˆ~ˆ~Ø�Œw˜#Š~ˆ~ˆ~ˆ~Ø�Œw˜!Š|ˆ|ˆ|ˆ|ˆ|øõ ð ð ð Øˆðøøøõ 	•�Q�˜!�R˜Ð!Ñ"Ô"€AØ�‰6�QŠ;ˆ;ˆ;ˆ;å••R�˜1˜a˜&Ð!Ñ"Ô"€AØ�‰6•V�c¥3˜Z­#­s¨Ð4Ñ5Ô5Ò5Ð5Ð5Ð5Ð5Ð5s$   Á;C Ã
C,Ã+C,ÉJ> Ê>
KË
Kc                  ó(  ‡‡‡‡— t          t          d„ ¦  «         t          } t          ddgddgg¦  «        Š‰dz  d d …          | d¦  «        dz   | d	¦  «        dz   | d
¦  «        dz   | d¦  «        dz  gk    sJ ‚‰dz  d d …         g d¢k    sJ ‚t          g d¢g d¢g d¢g¦  «        Š‰dz  d d …         g d¢k    sJ ‚‰dz  t	          d¦  «        k    sJ ‚‰dz  ‰k    sJ ‚t          dgg¦  «        dz  d         ddz  k    sJ ‚t	          d¦  «        dz  t	          d¦  «        k    sJ ‚t          ddgddgg¦  «        t          d¦  «        z  t          ddgddgg¦  «        k    sJ ‚t          ddgddgg¦  «        Š‰t          j        z  d d …         g d¢k    sJ ‚t          ddgddgg¦  «        Š‰t          j        z  dz  ‰k    sJ ‚t          ddgddgg¦  «        t          j        z  t          ddgt          j        dgg¦  «        k    sJ ‚t          ddgddgg¦  «        d z  t          ddgd dgg¦  «        k    sJ ‚dd!lm	Š t          dt          gddgg¦  «        ‰z  t          dt          ‰z  gddgg¦  «        k    sJ ‚t          t          t          gdt          gg¦  «        ‰z  t          t          ‰z  t          t          ‰dz
  z  z  ‰z  gdt          ‰z  gg¦  «        k    sJ ‚t          t          ‰z  t          ‰dz
  z  ‰z  t          ‰z  ‰dz  z  t          ‰z  ‰z  z
  dt          dz  z  z  gdt          ‰z  t          ‰dz
  z  ‰z  gddt          ‰z  gg¦  «        sJ ‚t          t          ddgdt          dgddt          gg¦  «        ‰z  t          t          ‰z  t          ‰dz
  z  ‰z  dgdt          ‰z  dgddt          ‰z  gg¦  «        k    sJ ‚t          ddgddgg¦  «        Š‰                     t          d¦  «        ¦  «        ‰                     d¦  «        k    sJ ‚t          dgg¦  «        Š‰dz  t          d"gg¦  «        cxk    r@‰                     t          d¦  «        ¦  «        cxk    r‰                     d¦  «        k    sn J ‚t          g d#¢g d$¢g d%¢g d&¢g d'¢g¦  «        Št          t          ˆfd(„¦  «         t          t          d)„ ¦  «         t          g d*¢g d+¢g d,¢g¦  «        Š‰d-z  t          g d,¢g d,¢g d,¢g¦  «        k    sJ ‚t          t          ˆfd.„¦  «         t          t          ˆfd/„¦  «         t          ddgddgg¦  «        Š‰d-z  t          d0d1gd2d3gg¦  «        k    sJ ‚t          g d+¢g d+¢g d+¢g¦  «        Š‰d-z  t          g d+¢g d+¢g d+¢g¦  «        k    sJ ‚t          g d*¢g d+¢g d+¢g¦  «        Š‰d-z  t          g d+¢g d+¢g d+¢g¦  «        k    sJ ‚t!          d4d5¬6¦  «        Št#          ‰‰z  t$          ¦  «        sJ ‚t!          d4d5d5¬7¦  «        Št          t          ˆˆfd8„¦  «         t!          d4d5d5¬9¦  «        Š‰‰z  t          t'          d‰¦  «        t'          d‰¦  «        t'          d‰¦  «         t'          d‰¦  «        z
  dz   gdt'          d‰¦  «        dt'          d‰¦  «        z
  gg d+¢g¦  «        k    sJ ‚‰‰dz   z  t          g d+¢g d+¢g d+¢g¦  «        k    sJ ‚t          t          ˆfd:„¦  «         t          g d+¢g d;¢g d<¢g¦  «        Š‰d=z  t          g d>¢g d?¢g d@¢g¦  «        k    sJ ‚‰d=z  ‰dz  k    sJ ‚t          g d*¢g dA¢g d,¢g¦  «        Št!          d4¦  «        Š‰‰z  Š‰                     ‰d¦  «                             ¦   «         ‰dz  k    sJ ‚t          t          ˆˆfdB„¦  «         ‰‰z  ‰d‰z  z  k    sJ ‚t          g d,¢g d,¢g d,¢g¦  «        Št!          d4d5d5¬C¦  «        Š‰‰z  ‰k    sJ ‚t!          d4d5d5¬9¦  «        Š‰‰z  t-          d‰z  d‰z  d‰z  ¦  «        k    sJ ‚‰‰z                       ‰d¦  «        t	          d¦  «        k    sJ ‚‰‰z                       ‰d¦  «        t/          d¦  «        k    sJ ‚t          g dD¢g dE¢g dF¢g¦  «        Š‰dGz  t-          dHdHdH¦  «        k    sJ ‚‰t0          z  t-          dt0          z  dt0          z  dt0          z  ¦  «        k    sJ ‚t          g d*¢g d+¢g d+¢g¦  «        Št          t          ˆfdI„¦  «         t          t          ˆfdJ„¦  «         t          t          j        t          j        gt          j        t          j        gg¦  «        Š‰t          j        z  ‰k    sJ ‚t          ddgddgg¦  «        Š‰t          j        z  t          t          j        t          j        gdt          j        z  dt          j        z  gg¦  «        k    sJ ‚d S )KNc                  ó&   — t          d¦  «        dz  S ©Nr°   r„   ©r1   rl   rm   rn   ry   ztest_power.<locals>.<lambda>  s   € ­°©¬¸Ñ):€ rm   r„   rƒ   r¦   r¹   r¬   ióþÿÿr½   é™   é3   iãÿÿÿ)iü  i¡  i,*  i�7  )r„   r¡   rƒ   )r¦   r„   r¦   )r§   é   r¡   )	i"  i  éû   iÀ  i¸  ip  i¾  iº  i±  r   r¡   éd   r¼   i€–˜ rº   rÍ   rÎ   é   é!   é   é0   é9   )r¹   r„   r¦   rº   éÿÿÿÿg      à?r{   i   )rƒ   r   r   r   r¬   )r   r¬   r¬   r   rƒ   )r   rƒ   r   rƒ   r   )r   r   rƒ   r   rƒ   )rƒ   r   r   rƒ   r   c                  óH   •— ‰                       t          d¦  «        ¦  «        S ©NrÍ   )Ú_matrix_pow_by_jordan_blocksr   ©r–   s   €rn   ry   ztest_power.<locals>.<lambda>/  s   ø€  × >Ò >½qÀ¹u¼uÑ EÔ E€ rm   c                  ól   — t          ddgddgg¦  «                             t          d¦  «        ¦  «        S )Nr¡   rƒ   éöÿÿÿ)r1   rç   r   rl   rm   rn   ry   ztest_power.<locals>.<lambda>2  s3   € ¥¨¨A¨°°A°Ð'7Ñ 8Ô 8× UÒ UÕVWÐX[ÑV\ÔV\Ñ ]Ô ]€ rm   ©r   r¡   r   ©r   r   r¡   rÀ   ç      $@c                  ó   •— ‰ dz  S ©NçÍÌÌÌÌÌ @rl   ©ÚAs   €rn   ry   ztest_power.<locals>.<lambda>5  ó   ø€ ˜q #™v€ rm   c                  ó*   •— ‰ t          dd¦  «        z  S r™   ©r   rñ   s   €rn   ry   ztest_power.<locals>.<lambda>6  ó   ø€ ˜q¥(¨1¨a¡.¤.Ñ0€ rm   i«ÒòhiÒO<ivï´0i¿óˆr|   T)Úinteger)r÷   Únegativec                  ó   •— ‰ ‰z  S rt   rl   )rò   r|   s   €€rn   ry   ztest_power.<locals>.<lambda>@  s   ø€ ˜q !™t€ rm   )r÷   Únonnegativec                  ó*   •— ‰ t          dd¦  «        z  S r™   rõ   rñ   s   €rn   ry   ztest_power.<locals>.<lambda>G  rö   rm   )rƒ   r   r¡   )r¦   rƒ   r¡   g      @)é¨   éH   éY   )i#  é�   é¡   )i<  i  iI  ©rä   r   r   c                  óT   •— ‰                       ‰d¦  «                             ¦   «         S )Néþÿÿÿ)ÚsubsÚdoit)ÚAnr|   s   €€rn   ry   ztest_power.<locals>.<lambda>O  s   ø€ ˜rŸwšw q¨"™~œ~×2Ò2Ñ4Ô4€ rm   )r÷   Úpositive©r„   r   r   )r   r„   r   ©r   r   r„   rð   gd%îû%@c                  ó   •— ‰ dz  S rï   rl   rñ   s   €rn   ry   ztest_power.<locals>.<lambda>^  ró   rm   c                  ó   •— ‰ t           z  S rt   ©r
   rñ   s   €rn   ry   ztest_power.<locals>.<lambda>_  s   ø€ ˜q¥!™t€ rm   )rN   r)   r   r1   r5   r   r   ÚHalfÚ	sympy.abcr|   rZ   r[   rç   Ú_eval_pow_by_recursionr(   Ú
ValueErrorr   rÒ   rX   rI   r  r  r4   r>   r
   )ÚRrò   r  r–   r|   s    @@@@rn   Ú
test_powerr    s™  øøøø€ Ý
ÕÐ!:Ð!:Ñ;Ô;Ð;å€AÝ��A�˜˜A˜ÐÑ Ô €AØˆr‰E�1�1�1Œ:˜!˜!˜D™'œ' !™) Q Q s¡V¤V¨A¡X¨q¨q°©u¬u°Q©w¸¸¸#¹¼¸q¹ÐAÒAÐAÐAÐAØˆq‰D�!�!�!Œ9Ð2Ð2Ð2Ò2Ð2Ð2Ð2Ý�	�	�	˜9˜9˜9 j j jÐ1Ñ2Ô2€AØˆq‰D�!�!�!Œ9ÐEÐEÐEÒEÐEÐEÐEØˆa‰4•3�q‘6”6Š>ˆ>ˆ>ˆ>Øˆa‰4�1Š9ˆ9ˆ9ˆ9Ý�Q�C�5‰MŒM˜SÑ  $Ô'¨1¨c©6Ò1Ð1Ð1Ð1Ýˆq‰6Œ6�8Ñ�s 1™vœvÒ%Ð%Ð%Ð%Ý�A�q�6˜A˜q˜6Ð"Ñ#Ô#¥W¨Q¡Z¤ZÑ/µ6¸A¸r¸7ÀRÈÀHÐ:MÑ3NÔ3NÒNÐNÐNÐNå��R�˜2˜r˜(Ð#Ñ$Ô$€AØ�qŒv‰I�q�q�qŒ>˜\˜\˜\Ò)Ð)Ð)Ð)Ý��A�˜˜Q˜Ð Ñ!Ô!€AØ�qŒv‰I˜‰>˜QÒÐÐÐå�A�q�6˜A˜q˜6Ð"Ñ#Ô#¥Q¤VÑ+­v¸¸1°vÅÄÈ¸{Ð6KÑ/LÔ/LÒLÐLÐLÐLÝ�A�q�6˜A˜q˜6Ð"Ñ#Ô# SÑ(­F°Q¸°F¸SÀ!¸HÐ3EÑ,FÔ,FÒFÐFÐFÐFØÐÐÐÐÐÝ�A•q�6˜A˜q˜6Ð"Ñ#Ô# QÑ&­&°1µa¸±c°(¸QÀ¸FÐ1CÑ*DÔ*DÒDÐDÐDÐDÝ•A•q�6˜A�q˜6Ð"Ñ#Ô# QÑ&­&µ1°a±4½½1¸qÀ¹s¹8¹ÀA¹Ð2FÈÍAÈqÉDÈ	Ð1RÑ*SÔ*SÒSÐSÐSÐSÝÝ	
ˆA‰�q�1�q‘5‰z˜!‰|�a ™d 1 a¡4™i­!¨Q©$¨q©&Ñ0°1µQ¸±T±6Ñ:Ð;Ø•q˜!‘t­a°!°a±%©j¸©lÐ;Ø˜!µa¸±dÐ;ð=ñ >ô >ð >ð >ð >õ •A�q˜!�9˜q¥! Q˜i¨!¨Qµ¨Ð3Ñ4Ô4°aÑ7½6Ý	
ˆA‰�q�1�Q‘3‰x˜‰z˜1ÐØ	
�Aˆq‰D�!ˆØ	
ˆA�q�!‰tˆðCñ <ô <ò ð ð ð õ
 	��A�˜˜A˜ÐÑ Ô €AØ×)Ò)­!¨A©$¬$Ñ/Ô/°1×3KÒ3KÈAÑ3NÔ3NÒNÐNÐNÐNÝ��ˆu‰Œ€AØˆb‰5•F˜U˜G˜9Ñ%Ô%ð %ð %ò %ð %¨×)GÒ)GÍÈ"ÉÌÑ)NÔ)Nð %ð %ò %ð %Ø	× Ò  Ñ$Ô$ò%ð %ð %ð %ð %ð %õ 	Ð Ð Ð Ð"3Ð"3Ð"3°_°_°_ÀoÀoÀoÐWfÐWfÐWfÐgÑhÔh€AÝ
�;ÐEÐEÐEÐEÑFÔFÐFõ �;Ð]Ð]Ñ^Ô^Ð^Ý�	�	�	˜9˜9˜9 i i iÐ0Ñ1Ô1€AØˆd‰7•f˜i˜i˜i¨¨¨°I°I°IÐ>Ñ?Ô?Ò?Ð?Ð?Ð?Ý
�:�~�~�~�~Ñ&Ô&Ð&Ý
�:Ð0Ð0Ð0Ð0Ñ1Ô1Ð1Ý��A�˜˜A˜ÐÑ Ô €AØˆd‰7•f˜z¨9Ð5¸	À9Ð7MÐNÑOÔOÒOÐOÐOÐOÝ�	�	�	˜9˜9˜9 i i iÐ0Ñ1Ô1€AØˆd‰7•f˜i˜i˜i¨¨¨°I°I°IÐ>Ñ?Ô?Ò?Ð?Ð?Ð?Ý�	�	�	˜9˜9˜9 i i iÐ0Ñ1Ô1€AØˆd‰7•f˜i˜i˜i¨¨¨°I°I°IÐ>Ñ?Ô?Ò?Ð?Ð?Ð?Ýˆs˜DÐ!Ñ!Ô!€AÝ�a˜‘d�FÑ#Ô#Ð#Ð#Ð#Ýˆs˜D¨4Ð0Ñ0Ô0€AÝ
�:�|�|�|�|�|Ñ$Ô$Ð$Ýˆs˜D¨dÐ3Ñ3Ô3€AØˆa‰4•6Ý	˜˜1Ñ	Ô	�~¨a°Ñ3Ô3µnÀQÈÑ6JÔ6JÐ5JÍ^Ð\]Ð_`ÑMaÔMaÑ5aÐdeÑ5eÐfØ�~¨a°Ñ3Ô3ÈQÕQ_Ð`aÐcdÑQeÔQeÑMeÐfØfÐfÐfðhñ iô iò ið ið ið ið ˆq�1‰u‰:�   ¨I¨I¨I°y°y°yÐ AÑBÔBÒBÐBÐBÐBÝ
�:Ð0Ð0Ð0Ð0Ñ1Ô1Ð1Ý�	�	�	˜9˜9˜9 i i iÐ0Ñ1Ô1€AØˆc‰6•V˜_˜_˜_¨o¨o¨o¸¸¸ÐOÑPÔPÒPÐPÐPÐPØˆc‰6�Q˜‘TŠ>ˆ>ˆ>ˆ>Ý�	�	�	˜*˜*˜* Y Y YÐ/Ñ0Ô0€AÝˆs‰Œ€AØ	
ˆA‰€BØ�7Š7�1�a‰=Œ=×ÒÑÔ 1 a¡4Ò'Ð'Ð'Ð'Ý
�:Ð4Ð4Ð4Ð4Ð4Ñ5Ô5Ð5Ø�‰7�a˜!˜A™#‘hÒÐÐÐõ 	���˜˜˜   Ð(Ñ)Ô)€AÝˆs˜D¨4Ð0Ñ0Ô0€AØˆa‰4�1Š9ˆ9ˆ9ˆ9Ýˆs˜D¨dÐ3Ñ3Ô3€AØˆa‰4•4˜˜1™˜a ™d A q¡DÑ)Ô)Ò)Ð)Ð)Ð)Øˆq‰D�;Š;�q˜!ÑÔ¥ A¡¤Ò&Ð&Ð&Ð&Øˆq‰D�;Š;�q˜!ÑÔ¥ a¡¤Ò(Ð(Ð(Ð(Ý���˜˜˜   Ð)Ñ*Ô*€AØˆc‰6•T˜6 6¨6Ñ2Ô2Ò2Ð2Ð2Ð2Ø�a‰4•4˜�A™˜q¥!™t Q­¡TÑ*Ô*Ò*Ð*Ð*Ð*Ý�	�	�	˜9˜9˜9 i i iÐ0Ñ1Ô1€AÝ
�:�~�~�~�~Ñ&Ô&Ð&Ý
�:�|�|�|�|Ñ$Ô$Ð$Ý•”�œÐ ¥1¤6­1¬6Ð"2Ð3Ñ4Ô4€AØ�aŒf‰9˜Š>ˆ>ˆ>ˆ>Ý��A�˜˜1�vˆÑÔ€AØ�aŒf‰9�¥!¤&­!¬&Ð!1°Aµa´f±H¸aÅÄ¹hÐ3GÐ HÑIÔIÒIÐIÐIÐIÐIÐIrm   c            
      ó„  — t          dt          z   dt          z
  gdt          z
  dt          z   gg¦  «        } t          d¦  «        5  |                      ¦   «                              ¦   «         t          t          dt          z  ¦  «        t          d¦  «        z   dz  t          dt          z  ¦  «         t          d¦  «        z   dz  gt          dt          z  ¦  «         t          d¦  «        z   dz  t          dt          z  ¦  «        t          d¦  «        z   dz  gg¦  «        k    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr¡   Tr„   )r1   r^   rB   r   r   ©rÄ   s    rn   Ú$test_issue_17247_expression_blowup_1r  f  sY  € Ý�•1‘�a�‘c�
˜Q�q™S !¥A¡#˜JÐ'Ñ(Ô(€AÝ	�TÑ	Ô	ð ?ð ?Ø�uŠu‰wŒw�~Š~ÑÔ¥6Ý�1•Q‘3‰xŒx�#˜a™&œ&Ñ  !Ñ#¥s¨1­Q©3¡x¤x iµ#°a±&´&Ñ&8¸!Ñ%;Ð<Ý�1•Q‘3‰xŒxˆi�#˜a™&œ&Ñ  !Ñ#¥s¨1­Q©3¡x¤xµ#°a±&´&Ñ'8¸!Ñ&;Ð<ð+>ñ $?ô $?ò ?ð ?ð ?ð ?ð ?ð?ð ?ð ?ñ ?ô ?ð ?ð ?ð ?ð ?ð ?ð ?ð ?øøøð ?ð ?ð ?ð ?ð ?ð ?s   ÁC"D5Ä5D9Ä<D9c                  ó(  — t          dt          z   dt          z
  gdt          z
  dt          z   gg¦  «        } t          d¦  «        5  |                      ¦   «         \  }}||z  |                     ¦   «         z  sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S ©Nr¡   T)r1   r^   rB   Újordan_formÚinv©rÄ   ÚPÚJs      rn   Ú$test_issue_17247_expression_blowup_2r  m  sÏ   € Ý�•1‘�a�‘c�
˜Q�q™S !¥A¡#˜JÐ'Ñ(Ô(€AÝ	�TÑ	Ô	ð ð Ø�}Š}ÑÔ‰ˆˆ1Ø�‰s�1—5’5‘7”7‰{ÐÐˆ{Ððð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   Á4BÂBÂBc            	      ón  — t          dt          z   dt          z
  gdt          z
  dt          z   gg¦  «        } t          d¦  «        5  | dz  t          dt          dz  z  dz   ddt          dz  z  z
  gddt          dz  z  z
  dt          dz  z  dz   gg¦  «        k    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr¡   TrÞ   l                )r1   r^   rB   r  s    rn   Ú$test_issue_17247_expression_blowup_3r  s  sf  € Ý�•1‘�a�‘c�
˜Q�q™S !¥A¡#˜JÐ'Ñ(Ô(€AÝ	�TÑ	Ô	ð _ð _Ø�#‰v�Ø+­A¨s©FÑ2Ð5SÑSÐUsð  wUõ  VWð  Y\ñ  V\ñ  w\ñ  V\ð  ]Ø+Ð.LÍQÐPSÉVÑ.SÑSÐUsÕtuÐwzÑtzÑUzð  ~\ñ  V\ð  ]ð!^ñ _ô _ò _ð _ð _ð _ð _ð_ð _ð _ñ _ô _ð _ð _ð _ð _ð _ð _ð _øøøð _ð _ð _ð _ð _ð _s   ÁAB*Â*B.Â1B.c                  óÚ   — t          t          d¦  «        ¦  «        } t          d¦  «        5  | dz  t          t          d¦  «        ¦  «        k    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Na1  [
        [             -3/4,       45/32 - 37*I/16,         1/4 + I/2,      -129/64 - 9*I/64,      1/4 - 5*I/16,      65/128 + 87*I/64],
        [-149/64 + 49*I/32, -177/128 - 1369*I/128,  125/64 + 87*I/64, -2063/256 + 541*I/128,  85/256 - 33*I/16,  805/128 + 2415*I/512],
        [          1/2 - I,         9/4 + 55*I/16,              -3/4,       45/32 - 37*I/16,         1/4 + I/2,      -129/64 - 9*I/64],
        [   -5/8 - 39*I/16,   2473/256 + 137*I/64, -149/64 + 49*I/32, -177/128 - 1369*I/128,  125/64 + 87*I/64, -2063/256 + 541*I/128],
        [            1 + I,         -19/4 + 5*I/4,           1/2 - I,         9/4 + 55*I/16,              -3/4,       45/32 - 37*I/16],
        [         21/8 + I,    -537/64 + 143*I/16,    -5/8 - 39*I/16,   2473/256 + 137*I/64, -149/64 + 49*I/32, -177/128 - 1369*I/128]]TrÍ   aŸ  [
            [     7369525394972778926719607798014571861/604462909807314587353088 - 229284202061790301477392339912557559*I/151115727451828646838272,   -19704281515163975949388435612632058035/1208925819614629174706176 + 14319858347987648723768698170712102887*I/302231454903657293676544,      -3623281909451783042932142262164941211/604462909807314587353088 - 6039240602494288615094338643452320495*I/604462909807314587353088,    109260497799140408739847239685705357695/2417851639229258349412352 - 7427566006564572463236368211555511431*I/2417851639229258349412352, -16095803767674394244695716092817006641/2417851639229258349412352 + 10336681897356760057393429626719177583*I/1208925819614629174706176,    -42207883340488041844332828574359769743/2417851639229258349412352 - 182332262671671273188016400290188468499*I/4835703278458516698824704],
            [50566491050825573392726324995779608259/1208925819614629174706176 - 90047007594468146222002432884052362145*I/2417851639229258349412352,  74273703462900000967697427843983822011/1208925819614629174706176 + 265947522682943571171988741842776095421*I/1208925819614629174706176, -116900341394390200556829767923360888429/2417851639229258349412352 - 53153263356679268823910621474478756845*I/2417851639229258349412352, 195407378023867871243426523048612490249/1208925819614629174706176 - 1242417915995360200584837585002906728929*I/9671406556917033397649408,   -863597594389821970177319682495878193/302231454903657293676544 + 476936100741548328800725360758734300481*I/9671406556917033397649408, -3154451590535653853562472176601754835575/19342813113834066795298816 - 232909875490506237386836489998407329215*I/2417851639229258349412352],
            [   -1715444997702484578716037230949868543/302231454903657293676544 + 5009695651321306866158517287924120777*I/302231454903657293676544,     -30551582497996879620371947949342101301/604462909807314587353088 - 7632518367986526187139161303331519629*I/151115727451828646838272,           312680739924495153190604170938220575/18889465931478580854784 - 108664334509328818765959789219208459*I/75557863725914323419136,    -14693696966703036206178521686918865509/604462909807314587353088 + 72345386220900843930147151999899692401*I/1208925819614629174706176,  -8218872496728882299722894680635296519/1208925819614629174706176 - 16776782833358893712645864791807664983*I/1208925819614629174706176,      143237839169380078671242929143670635137/2417851639229258349412352 + 2883817094806115974748882735218469447*I/2417851639229258349412352],
            [   3087979417831061365023111800749855987/151115727451828646838272 + 34441942370802869368851419102423997089*I/604462909807314587353088, -148309181940158040917731426845476175667/604462909807314587353088 - 263987151804109387844966835369350904919*I/9671406556917033397649408,   50259518594816377378747711930008883165/1208925819614629174706176 - 95713974916869240305450001443767979653*I/2417851639229258349412352,  153466447023875527996457943521467271119/2417851639229258349412352 + 517285524891117105834922278517084871349*I/2417851639229258349412352,  -29184653615412989036678939366291205575/604462909807314587353088 - 27551322282526322041080173287022121083*I/1208925819614629174706176,   196404220110085511863671393922447671649/1208925819614629174706176 - 1204712019400186021982272049902206202145*I/9671406556917033397649408],
            [     -2632581805949645784625606590600098779/151115727451828646838272 - 589957435912868015140272627522612771*I/37778931862957161709568,     26727850893953715274702844733506310247/302231454903657293676544 - 10825791956782128799168209600694020481*I/302231454903657293676544,      -1036348763702366164044671908440791295/151115727451828646838272 + 3188624571414467767868303105288107375*I/151115727451828646838272,     -36814959939970644875593411585393242449/604462909807314587353088 - 18457555789119782404850043842902832647*I/302231454903657293676544,      12454491297984637815063964572803058647/604462909807314587353088 - 340489532842249733975074349495329171*I/302231454903657293676544,      -19547211751145597258386735573258916681/604462909807314587353088 + 87299583775782199663414539883938008933*I/1208925819614629174706176],
            [  -40281994229560039213253423262678393183/604462909807314587353088 - 2939986850065527327299273003299736641*I/604462909807314587353088, 331940684638052085845743020267462794181/2417851639229258349412352 - 284574901963624403933361315517248458969*I/1208925819614629174706176,      6453843623051745485064693628073010961/302231454903657293676544 + 36062454107479732681350914931391590957*I/604462909807314587353088,  -147665869053634695632880753646441962067/604462909807314587353088 - 305987938660447291246597544085345123927*I/9671406556917033397649408,  107821369195275772166593879711259469423/2417851639229258349412352 - 11645185518211204108659001435013326687*I/302231454903657293676544,     64121228424717666402009446088588091619/1208925819614629174706176 + 265557133337095047883844369272389762133*I/1208925819614629174706176]])r1   r   rB   r  s    rn   Ú$test_issue_17247_expression_blowup_4r!  z  sø   € õ8 	�qð Kñ Lô Lñ 	Mô 	M€Aõ 
�TÑ	Ô	ð Jð JØ�"‰u��qð "Hñ  Iô  Iñ Jô Jò Jð Jð Jð Jð JðJð Jð Jñ Jô Jð Jð Jð Jð Jð Jð Jð Jøøøð Jð Jð Jð Jð Jð Js   ¬&A Á A$Á'A$c                  óJ  — t          ddd„ ¦  «        } t          d¦  «        5  |                      d¦  «        t          t          dz  ddt
          z  z
  t          dz  z  z   dt
          z  t          dz  z  z   t          d	¬
¦  «        k    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr§   c                 ó(   — dd| |z   z  t           z  z   S ©Nr¡   rä   r  rv   s     rn   ry   z6test_issue_17247_expression_blowup_5.<locals>.<lambda>§  ó   €  ! r¨Q¨q©S¡kµ!¡mÑ"3€ rm   Tr^   éúÿÿÿr¹   é$   r¦   ÚEX©Údomain)r1   rB   Úcharpolyr    r^   r
   r  s    rn   Ú$test_issue_17247_expression_blowup_5r,  ¦  sõ   € Ýˆq�!Ð3Ð3Ñ4Ô4€AÝ	�TÑ	Ô	ð _ð _Ø�zŠz˜#‰Œ¥(­1¨a©4°2¸½!¹±8½QÀ¹T±/Ñ+AÀBÅqÁDÍÈAÉÁIÑ+MÍqÐY]Ð"^Ñ"^Ô"^Ò^Ð^Ð^Ð^Ð^ð_ð _ð _ñ _ô _ð _ð _ð _ð _ð _ð _ð _øøøð _ð _ð _ð _ð _ð _s   ¢A(BÂBÂBc                  óÞ   — t          ddd„ t          d¦  «        D ¦   «         ¦  «        } t          d¦  «        5  |                      d¦  «        dk    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr½   c                 ó"   — g | ]}t           |z   ‘ŒS rl   ©r^   r‡   s     rn   ú
<listcomp>z8test_issue_17247_expression_blowup_6.<locals>.<listcomp>¬  ó   € Ð.Ð.Ð.˜a•a˜‘cÐ.Ð.Ð.rm   é@   TÚbareissr   ©r1   rÂ   rB   Údetr  s    rn   Ú$test_issue_17247_expression_blowup_6r6  «  sº   € Ýˆq�!Ð.Ð.¥5¨"¡:¤:Ð.Ñ.Ô.Ñ/Ô/€AÝ	�TÑ	Ô	ð %ð %Ø�uŠu�YÑÔ 1Ò$Ð$Ð$Ð$Ð$ð%ð %ð %ñ %ô %ð %ð %ð %ð %ð %ð %ð %øøøð %ð %ð %ð %ð %ð %ó   ¸A"Á"A&Á)A&c                  ó²   — t          ddd„ ¦  «        } t          d¦  «        5  |                      d¦  «        dk    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr§   c                 ó(   — dd| |z   z  t           z  z   S r$  r  rv   s     rn   ry   z6test_issue_17247_expression_blowup_7.<locals>.<lambda>±  r%  rm   TÚ	berkowitzr   )r1   rB   r5  r  s    rn   Ú$test_issue_17247_expression_blowup_7r;  °  s©   € Ýˆq�!Ð3Ð3Ñ4Ô4€AÝ	�TÑ	Ô	ð 'ð 'Ø�uŠu�[Ñ!Ô! QÒ&Ð&Ð&Ð&Ð&ð'ð 'ð 'ñ 'ô 'ð 'ð 'ð 'ð 'ð 'ð 'ð 'øøøð 'ð 'ð 'ð 'ð 'ð 's   ¢AÁAÁAc                  óÞ   — t          ddd„ t          d¦  «        D ¦   «         ¦  «        } t          d¦  «        5  |                      d¦  «        dk    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr½   c                 ó"   — g | ]}t           |z   ‘ŒS rl   r/  r‡   s     rn   r0  z8test_issue_17247_expression_blowup_8.<locals>.<listcomp>¶  r1  rm   r2  TÚlur   r4  r  s    rn   Ú$test_issue_17247_expression_blowup_8r?  µ  s¸   € Ýˆq�!Ð.Ð.¥5¨"¡:¤:Ð.Ñ.Ô.Ñ/Ô/€AÝ	�TÑ	Ô	ð  ð  Ø�uŠu�T‰{Œ{˜aÒÐÐÐÐð ð  ð  ñ  ô  ð  ð  ð  ð  ð  ð  ð  øøøð  ð  ð  ð  ð  ð  r7  c                  ó*  — t          ddd„ t          d¦  «        D ¦   «         ¦  «        } t          d¦  «        5  |                      ¦   «         t          g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g¦  «        dfk    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )	Nr½   c                 ó"   — g | ]}t           |z   ‘ŒS rl   r/  r‡   s     rn   r0  z8test_issue_17247_expression_blowup_9.<locals>.<listcomp>»  r1  rm   r2  T)r¡   r   rä   r  r¬   éüÿÿÿéûÿÿÿr&  ©r   r¡   r„   rƒ   r¦   r¹   r§   rº   ©r   r   r   r   r   r   r   r   r¾   )r1   rÂ   rB   Úrrefr  s    rn   Ú$test_issue_17247_expression_blowup_9rG  º  s!  € Ýˆq�!Ð.Ð.¥5¨"¡:¤:Ð.Ñ.Ô.Ñ/Ô/€AÝ	�TÑ	Ô	ð 	6ð 	6Ø�vŠv‰xŒx�FØ*Ð*Ð*Ø*Ð*Ð*Ø*Ð*Ð*Ø*Ð*Ð*Ø*Ð*Ð*Ø*Ð*Ð*Ø*Ð*Ð*Ø*Ð*Ð*ð$,ñ -ô -ð /5ð6ò 6ð 6ð 6ð 6ð 6ð	6ð 	6ð 	6ñ 	6ô 	6ð 	6ð 	6ð 	6ð 	6ð 	6ð 	6ð 	6øøøð 	6ð 	6ð 	6ð 	6ð 	6ð 	6s   ¸ABÂBÂBc                  ó´   — t          ddd„ ¦  «        } t          d¦  «        5  |                      dd¦  «        dk    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr§   c                 ó(   — dd| |z   z  t           z  z   S r$  r  rv   s     rn   ry   z7test_issue_17247_expression_blowup_10.<locals>.<lambda>È  r%  rm   Tr   )r1   rB   Úcofactorr  s    rn   Ú%test_issue_17247_expression_blowup_10rK  Ç  s«   € Ýˆq�!Ð3Ð3Ñ4Ô4€AÝ	�TÑ	Ô	ð %ð %Ø�zŠz˜!˜QÑÔ 1Ò$Ð$Ð$Ð$Ð$ð%ð %ð %ñ %ô %ð %ð %ð %ð %ð %ð %ð %øøøð %ð %ð %ð %ð %ð %s   ¢AÁAÁAc                  óÖ   — t          ddd„ ¦  «        } t          d¦  «        5  |                      ¦   «         t          dddgdz  ¦  «        k    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr§   c                 ó(   — dd| |z   z  t           z  z   S r$  r  rv   s     rn   ry   z7test_issue_17247_expression_blowup_11.<locals>.<lambda>Í  r%  rm   Tr   r'  )r1   rB   Úcofactor_matrixr  s    rn   Ú%test_issue_17247_expression_blowup_11rO  Ì  s»   € Ýˆq�!Ð3Ð3Ñ4Ô4€AÝ	�TÑ	Ô	ð ;ð ;Ø× Ò Ñ"Ô"¥f¨Q°°A°3°r±6Ñ&:Ô&:Ò:Ð:Ð:Ð:Ð:ð;ð ;ð ;ñ ;ô ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;øøøð ;ð ;ð ;ð ;ð ;ð ;s   ¢.AÁA"Á%A"c                  óÌ   — t          ddd„ ¦  «        } t          d¦  «        5  |                      ¦   «         dddt          z  dddik    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr§   c                 ó(   — dd| |z   z  t           z  z   S r$  r  rv   s     rn   ry   z7test_issue_17247_expression_blowup_12.<locals>.<lambda>Ò  r%  rm   Tr¡   r   r¦   )r1   rB   Ú	eigenvalsr
   r  s    rn   Ú%test_issue_17247_expression_blowup_12rS  Ñ  s¶   € Ýˆq�!Ð3Ð3Ñ4Ô4€AÝ	�TÑ	Ô	ð 5ð 5Ø�{Š{‰}Œ}  A q­¡s¨A¨q°!Ð 4Ò4Ð4Ð4Ð4Ð4ð5ð 5ð 5ñ 5ô 5ð 5ð 5ð 5ð 5ð 5ð 5ð 5øøøð 5ð 5ð 5ð 5ð 5ð 5s   ¢)AÁAÁ Ac            
      ó¶  — t          ddt          z
  t          dz   dt          z
  gdt          z
  t          dz   dt          dz   gddt          z
  t          dz   dt          z
  gdddt          z
  dgg¦  «        } |                      ¦   «         }|d         ddt          g d¢¦  «        gfk    sJ ‚|d         d         t          t          d¦  «        t          dz
  z  z
  dz   k    sJ ‚|d         d         dk    sJ ‚|d         d         d                              dd¬¦  «        t          t           t          d¦  «        t          dz
  z  z   dz
  t          dz
  z  gdt          z  t          dz  dt          z  z
  dz   z  t          dz   t          t          d¦  «        t          dz
  z  z
  dz   z  t          dz  dt          z  z
  dz   z  z   gt           t          d¦  «        t          dz
  z  z   dz
  t          dz
  z  gdgg¦  «        k    sJ ‚|d         d         t          t          d¦  «        t          dz
  z  z   dz   k    sJ ‚|d         d         dk    sJ ‚|d         d         d                              dd¬¦  «        t          t           t          d¦  «        t          dz
  z  z
  dz
  t          dz
  z  gdt          z  t          dz  dt          z  z
  dz   z  t          dz   t          t          d¦  «        t          dz
  z  z   dz   z  t          dz  dt          z  z
  dz   z  z   gt           t          d¦  «        t          dz
  z  z
  dz
  t          dz
  z  gdgg¦  «        k    sJ ‚d S )	Nr   r¡   r„   )r   rä   r   r¡   FT)ÚdeepÚnumerrB  )r1   r^   Ú
eigenvectsr   r   )rÄ   Úevs     rn   Ú%test_issue_17247_expression_blowup_13rY  Ö  s4  € ÝØ�•A‘•q˜1‘u˜a¥!™eÐ$Ø	
�Q‰•�A‘˜1�a !™eÐ$Ø�•A‘•q˜1‘u˜a¥!™eÐ$Ø�A˜1�q™5 !Ð$ð	&ñ 	'ô 	'€Að 
�Š‰Œ€BØˆaŒ5�Q˜�F = = =Ñ1Ô1Ð2Ð3Ò3Ð3Ð3Ð3ØˆaŒ5�Œ8•q�4 ™7œ7¥A¨¡E™?Ñ*¨QÑ.Ò.Ð.Ð.Ð.ØˆaŒ5�Œ8�qŠ=ˆ=ˆ=ˆ=ØˆaŒ5�Œ8�AŒ;×Ò 5°ÐÑ5Ô5½Ýˆ"�t�A‰wŒw�˜A™‰Ñ
 Ñ
"¥Q¨¡UÑ	+Ð,Ø	�A‰�q�!‰t�a�‘c‰z˜A‰~Ñ	¥! a¡%­!­d°1©g¬gµq¸1±u©oÑ*=ÀÑ*AÑ!BÅAÀqÁDÈ1ÍQÉ3ÁJÐQRÁNÑ!SÑ	SÐTÝˆ"�t�A‰wŒw�˜A™‰Ñ
 Ñ
"¥Q¨¡UÑ	+Ð,Ø	
ˆð	Añ :ô :ò ð ð ð ð ˆaŒ5�Œ8•q�4 ™7œ7¥A¨¡E™?Ñ*¨QÑ.Ò.Ð.Ð.Ð.ØˆaŒ5�Œ8�qŠ=ˆ=ˆ=ˆ=ØˆaŒ5�Œ8�AŒ;×Ò 5°ÐÑ5Ô5½Ýˆ"�t�A‰wŒw�˜A™‰Ñ
 Ñ
"¥Q¨¡UÑ	+Ð,Ø	�A‰�q�!‰t�a�‘c‰z˜A‰~Ñ	¥! a¡%­!­d°1©g¬gµq¸1±u©oÑ*=ÀÑ*AÑ!BÅAÀqÁDÈ1ÍQÉ3ÁJÐQRÁNÑ!SÑ	SÐTÝˆ"�t�A‰wŒw�˜A™‰Ñ
 Ñ
"¥Q¨¡UÑ	+Ð,Ø	
ˆð	Añ :ô :ò ð ð ð ð ð rm   c                  ó0  — t          dddt          z   dt          z
  gdz  dt          z
  dt          z   gdz  z   dz  ¦  «        } t          d¦  «        5  |                      ¦   «         t          t          dz   dt          z
  t          dz   dt          z
  t          dz   dt          z
  t          dz   dt          z
  gddt          z  ddt          z  ddt          z  ddt          z  gg d¢g d¢g d¢g d¢g d¢g d¢g¦  «        k    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr½   r¡   r¦   Tr   rE  )r1   r^   rB   Úechelon_formr  s    rn   Ú%test_issue_17247_expression_blowup_14r\  ò  s�  € Ýˆq�!�q�‘s˜A�a™C�j ‘l a­¡c¨1­Q©3 Z°¡\Ñ1°1Ñ4Ñ5Ô5€AÝ	�TÑ	Ô	ð 	Gð 	GØ�~Š~ÑÔ¥6Ý�‰U�A�‘E�1˜q™5 !¥a¡%­¨Q©°µA±µq¸1±u¸aÅ!¹eÐDØ�a�‘c˜q A¥a¡C¨Q°!µA±#¸1ÀÅ!ÁÐDØDÐDÐDØDÐDÐDØDÐDÐDØDÐDÐDØDÐDÐDØDÐDÐDð+Fñ $Gô $Gò Gð Gð Gð Gð Gð	Gð 	Gð 	Gñ 	Gô 	Gð 	Gð 	Gð 	Gð 	Gð 	Gð 	Gð 	Gøøøð 	Gð 	Gð 	Gð 	Gð 	Gð 	Gs   ÁB,DÄDÄDc                  ó*  — t          dddt          z   dt          z
  gdz  dt          z
  dt          z   gdz  z   dz  ¦  «        } t          d¦  «        5  |                      ¦   «         t          t          dz   dt          z
  t          dz   dt          z
  t          dz   dt          z
  t          dz   dt          z
  gg¦  «        t          ddt          z  ddt          z  ddt          z  ddt          z  gg¦  «        gk    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr½   r¡   r¦   Tr   )r1   r^   rB   Úrowspacer  s    rn   Ú%test_issue_17247_expression_blowup_15r_  ÿ  s¢  € Ýˆq�!�q�‘s˜A�a™C�j ‘l a­¡c¨1­Q©3 Z°¡\Ñ1°1Ñ4Ñ5Ô5€AÝ	�TÑ	Ô	ð Pð PØ�zŠz‰|Œ|¥­¨Q©°µA±µq¸1±u¸aÅ!¹eÅQÈÁUÈAÕPQÉEÕSTÐWXÑSXÐZ[Õ^_ÑZ_Ð(`Ð'aÑ bÔ bÕdjÐmnÐpqÕrsÑpsÐuvÐxyÕz{Ñx{Ð}~ð  ABõ  CDñ  ADð  FGð  IJõ  KLñ  ILð  mMð  lNñ  eOô  eOð   Pò  Pð  Pð  Pð  Pð  PðPð Pð Pñ Pô Pð Pð Pð Pð Pð Pð Pð Pøøøð Pð Pð Pð Pð Pð Ps   ÁB)DÄDÄDc                  ó†  — t          dddt          z   dt          z
  gdz  dt          z
  dt          z   gdz  z   dz  ¦  «        } t          d¦  «        5  |                      ¦   «         t          t          dz   gdt          z
  gt          dz   gdt          z
  gt          dz   gdt          z
  gt          dz   gdt          z
  gg¦  «        t          dt          z
  gt          dz   gdt          z
  gt          dz   gdt          z
  gt          dz   gdt          z
  gt          dz   gg¦  «        gk    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr½   r¡   r¦   T)r1   r^   rB   Úcolumnspacer  s    rn   Ú%test_issue_17247_expression_blowup_16rb    s2  € Ýˆq�!�q�‘s˜A�a™C�j ‘l a­¡c¨1­Q©3 Z°¡\Ñ1°1Ñ4Ñ5Ô5€AÝ	�TÑ	Ô	ð yð yØ�}Š}‰Œ¥6­A°©E¨7°A½±E°7½AÀ¹E¸7ÀAÍÁEÀ7ÍAÐPQÉEÈ7ÐTUÕXYÑTYÐSZÕ\]Ð`aÑ\aÐ[bÐdeÕhiÑdiÐcjÐ*kÑ#lÔ#lÕntÐwxÕ{|Ñw|Ðv}õ  @Að  DEñ  @Eð  Fð  HIõ  LMñ  HMð  GNõ  PQð  TUñ  PUð  OVð  XYõ  \]ñ  X]ð  W^õ  `að  deñ  `eð  _fð  hiõ  lmñ  hmð  gnõ  pqð  tuñ  puð  ovð  vwñ  oxô  oxð  #yò  yð  yð  yð  yð  yðyð yð yñ yô yð yð yð yð yð yð yð yøøøð yð yð yð yð yð ys   ÁCD6Ä6D:Ä=D:c                  óD  — t          ddd„ t          d¦  «        D ¦   «         ¦  «        } t          d¦  «        5  |                      ¦   «         t          dgdgdgdgdgdgdgdgg¦  «        t          dgd	gdgdgdgdgdgdgg¦  «        t          d
gdgdgdgdgdgdgdgg¦  «        t          dgdgdgdgdgdgdgdgg¦  «        t          dgdgdgdgdgdgdgdgg¦  «        t          dgdgdgdgdgdgdgdgg¦  «        gk    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr½   c                 ó"   — g | ]}t           |z   ‘ŒS rl   r/  r‡   s     rn   r0  z9test_issue_17247_expression_blowup_17.<locals>.<listcomp>
  r1  rm   r2  Tr¡   r  r   r„   r¬   rƒ   rB  r¦   rC  r¹   r&  r§   éùÿÿÿ)r1   rÂ   rB   Ú	nullspacer  s    rn   Ú%test_issue_17247_expression_blowup_17rg  	  sË  € Ýˆq�!Ð.Ð.¥5¨"¡:¤:Ð.Ñ.Ô.Ñ/Ô/€AÝ	�TÑ	Ô	ð 8ð 8Ø�{Š{‰}Œ}Ý�Q�C˜˜˜a˜S !  a S¨!¨¨a¨S°!°Ð5Ñ6Ô6Ý�Q�C˜˜˜a˜S !  a S¨!¨¨a¨S°!°Ð5Ñ6Ô6Ý�Q�C˜˜˜a˜S !  a S¨!¨¨a¨S°!°Ð5Ñ6Ô6Ý�Q�C˜˜˜a˜S !  a S¨!¨¨a¨S°!°Ð5Ñ6Ô6Ý�Q�C˜˜˜a˜S !  a S¨!¨¨a¨S°!°Ð5Ñ6Ô6Ý�Q�C˜˜˜a˜S !  a S¨!¨¨a¨S°!°Ð5Ñ6Ô6ð!8ò 8ð 8ð 8ð 8ð 8ð8ð 8ð 8ñ 8ô 8ð 8ð 8ð 8ð 8ð 8ð 8ð 8øøøð 8ð 8ð 8ð 8ð 8ð 8s   ¸CDÄDÄDc                  ó  — t          dddt          z   dt          z
  gdz  dt          z
  dt          z   gdz  z   dz  ¦  «        } t          d¦  «        5  |                      ¦   «         rJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr§   r¡   rƒ   T)r1   r^   rB   Úis_nilpotentr  s    rn   Ú%test_issue_17247_expression_blowup_18rj    sÈ   € Ýˆq�!�q�‘s˜A�a™C�j ‘l a­¡c¨1­Q©3 Z°¡\Ñ1°1Ñ4Ñ5Ô5€AÝ	�TÑ	Ô	ð $ð $Ø—>’>Ñ#Ô#Ð#Ð#Ð#Ð#ð$ð $ð $ñ $ô $ð $ð $ð $ð $ð $ð $ð $øøøð $ð $ð $ð $ð $ð $s   ÁA6Á6A:Á=A:c                  ó¼   — t          t          d¦  «        ¦  «        } t          d¦  «        5  |                      ¦   «         rJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nay  [
        [             -3/4,                     0,         1/4 + I/2,                     0],
        [                0, -177/128 - 1369*I/128,                 0, -2063/256 + 541*I/128],
        [          1/2 - I,                     0,                 0,                     0],
        [                0,                     0,                 0, -177/128 - 1369*I/128]]T)r1   r   rB   Úis_diagonalizabler  s    rn   Ú%test_issue_17247_expression_blowup_19rm    s¶   € Ý�qð añ bô bñ 	cô 	c€Aõ
 
�TÑ	Ô	ð )ð )Ø×&Ò&Ñ(Ô(Ð(Ð(Ð(Ð(ð)ð )ð )ñ )ô )ð )ð )ð )ð )ð )ð )ð )øøøð )ð )ð )ð )ð )ð )s   ¬AÁAÁAc                  ó   — t          t          dz   dt          z
  ddgdt          z
  t          dz   dt          dz   gddt          z
  t          dz   dgdddt          dz   gg¦  «        } t          d¦  «        5  |                      ¦   «         t          dddt          dz   t          dz
  z  gg d¢g d¢g d¢g¦  «        t          g d¢ddt          z  ddgddt          dz   dgdddt          dz   gg¦  «        fk    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )	Nr¡   r   T)r¡   rä   r   r   ©r¡   r¡   r¡   r   ©r   r   r   r¡   rÁ   r„   )r1   r^   rB   Údiagonalizer  s    rn   Ú%test_issue_17247_expression_blowup_20rr  "  s”  € ÝÝˆ�UˆQ•‰U˜ Ð#Ø��U�Q�‰U˜�Q ™UÐ#Ø	
ˆQ•‰U•Q˜‘U Ð#Ø	
�˜�Q ™UÐ#ð	%ñ 	&ô 	&€Aõ
 
�TÑ	Ô	ð 
&ð 
&Ø�}Š}‰Œ¥6Ø��A�˜A™¥ A¡‘Ð'Ø'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'ð	+)ñ $*ô $*õ
 Ø"Ð"Ð"Ø�•!‘˜ Ð"Ø�!•Q˜‘U Ð"Ø�!˜�A ™EÐ"ð	$ñ %ô %ð	#&ò 	&ð 	&ð 	&ð 	&ð 	&ð
&ð 
&ð 
&ñ 
&ô 
&ð 
&ð 
&ð 
&ð 
&ð 
&ð 
&ð 
&øøøð 
&ð 
&ð 
&ð 
&ð 
&ð 
&s   Á3BDÄDÄ
Dc                  óü   — t          t          d¦  «        ¦  «        } t          d¦  «        5  |                      d¬¦  «        t          t          d¦  «        ¦  «        k    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Ná�  [
        [             -3/4,       45/32 - 37*I/16,                   0,                     0],
        [-149/64 + 49*I/32, -177/128 - 1369*I/128,                   0, -2063/256 + 541*I/128],
        [                0,         9/4 + 55*I/16, 2473/256 + 137*I/64,                     0],
        [                0,                     0,                   0, -177/128 - 1369*I/128]]TÚGE©Úmethodáv  [
            [-26194832/3470993 - 31733264*I/3470993, 156352/3470993 + 10325632*I/3470993, 0, -7741283181072/3306971225785 + 2999007604624*I/3306971225785],
            [4408224/3470993 - 9675328*I/3470993, -2422272/3470993 + 1523712*I/3470993, 0, -1824666489984/3306971225785 - 1401091949952*I/3306971225785],
            [-26406945676288/22270005630769 + 10245925485056*I/22270005630769, 7453523312640/22270005630769 + 1601616519168*I/22270005630769, 633088/6416033 - 140288*I/6416033, 872209227109521408/21217636514687010905 + 6066405081802389504*I/21217636514687010905],
            [0, 0, 0, -11328/952745 + 87616*I/952745]]©r1   r   rB   r  r  s    rn   Ú%test_issue_17247_expression_blowup_21rz  4  óâ   € Ý�qð cñ dô dñ 	eô 	e€Aõ
 
�TÑ	Ô	ð <ð <Ø�uŠu˜DˆuÑ!Ô!¥V­Að /:ñ -;ô -;ñ &<ô &<ò <ð <ð <ð <ð <ð<ð <ð <ñ <ô <ð <ð <ð <ð <ð <ð <ð <øøøð <ð <ð <ð <ð <ð <ó   ¬7A1Á1A5Á8A5c                  óü   — t          t          d¦  «        ¦  «        } t          d¦  «        5  |                      d¬¦  «        t          t          d¦  «        ¦  «        k    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nrt  TÚLUrv  rx  ry  r  s    rn   Ú%test_issue_17247_expression_blowup_22r  A  r{  r|  c                  ó   — t          t          d¦  «        ¦  «        } t          d¦  «        5  |                      d¬¦  «                             ¦   «         t          t          d¦  «        ¦  «        k    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nrt  TÚADJrv  rx  )r1   r   rB   r  r   r  s    rn   Ú%test_issue_17247_expression_blowup_23r‚  N  sî   € Ý�qð cñ dô dñ 	eô 	e€Aõ
 
�TÑ	Ô	ð <ð <Ø�uŠu˜EˆuÑ"Ô"×)Ò)Ñ+Ô+­vµað 9:ñ 7;ô 7;ñ 0<ô 0<ò <ð <ð <ð <ð <ð<ð <ð <ñ <ô <ð <ð <ð <ð <ð <ð <ð <øøøð <ð <ð <ð <ð <ð <s   ¬A	BÂBÂ
Bc                  óü   — t          t          d¦  «        ¦  «        } t          d¦  «        5  |                      d¬¦  «        t	          t          d¦  «        ¦  «        k    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nrt  TÚCHrv  rx  ©r2   r   rB   r  r1   r  s    rn   Ú%test_issue_17247_expression_blowup_24r†  [  sâ   € Ý•Qð cñ dô dñ 	eô 	e€Aõ
 
�TÑ	Ô	ð <ð <Ø�uŠu˜DˆuÑ!Ô!¥V­Að /:ñ -;ô -;ñ &<ô &<ò <ð <ð <ð <ð <ð<ð <ð <ñ <ô <ð <ð <ð <ð <ð <ð <ð <øøøð <ð <ð <ð <ð <ð <r|  c                  óü   — t          t          d¦  «        ¦  «        } t          d¦  «        5  |                      d¬¦  «        t	          t          d¦  «        ¦  «        k    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nrt  TÚLDLrv  rx  r…  r  s    rn   Ú%test_issue_17247_expression_blowup_25r‰  h  sâ   € Ý•Qð cñ dô dñ 	eô 	e€Aõ
 
�TÑ	Ô	ð <ð <Ø�uŠu˜EˆuÑ"Ô"¥f­Qð 0:ñ .;ô .;ñ '<ô '<ò <ð <ð <ð <ð <ð<ð <ð <ñ <ô <ð <ð <ð <ð <ð <ð <ð <øøøð <ð <ð <ð <ð <ð <r|  c                  óÄ   — t          t          d¦  «        ¦  «        } t          d¦  «        5  |                      ¦   «         dk    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Na¹  [
        [             -3/4,       45/32 - 37*I/16,         1/4 + I/2,      -129/64 - 9*I/64,      1/4 - 5*I/16,      65/128 + 87*I/64,         -9/32 - I/16,      183/256 - 97*I/128],
        [-149/64 + 49*I/32, -177/128 - 1369*I/128,  125/64 + 87*I/64, -2063/256 + 541*I/128,  85/256 - 33*I/16,  805/128 + 2415*I/512, -219/128 + 115*I/256, 6301/4096 - 6609*I/1024],
        [          1/2 - I,         9/4 + 55*I/16,              -3/4,       45/32 - 37*I/16,         1/4 + I/2,      -129/64 - 9*I/64,         1/4 - 5*I/16,        65/128 + 87*I/64],
        [   -5/8 - 39*I/16,   2473/256 + 137*I/64, -149/64 + 49*I/32, -177/128 - 1369*I/128,  125/64 + 87*I/64, -2063/256 + 541*I/128,     85/256 - 33*I/16,    805/128 + 2415*I/512],
        [            1 + I,         -19/4 + 5*I/4,           1/2 - I,         9/4 + 55*I/16,              -3/4,       45/32 - 37*I/16,            1/4 + I/2,        -129/64 - 9*I/64],
        [         21/8 + I,    -537/64 + 143*I/16,    -5/8 - 39*I/16,   2473/256 + 137*I/64, -149/64 + 49*I/32, -177/128 - 1369*I/128,     125/64 + 87*I/64,   -2063/256 + 541*I/128],
        [               -2,         17/4 - 13*I/2,             1 + I,         -19/4 + 5*I/4,           1/2 - I,         9/4 + 55*I/16,                 -3/4,         45/32 - 37*I/16],
        [     1/4 + 13*I/4,    -825/64 - 147*I/32,          21/8 + I,    -537/64 + 143*I/16,    -5/8 - 39*I/16,   2473/256 + 137*I/64,    -149/64 + 49*I/32,   -177/128 - 1369*I/128]]Tr¦   ©r1   r   rB   Úrankr  s    rn   Ú%test_issue_17247_expression_blowup_26r�  u  s²   € Ý�qð zñ {ô {ñ 	|ô 	|€Aõ 
�TÑ	Ô	ð ð Ø�vŠv‰xŒx˜1Š}ˆ}ˆ}ˆ}ˆ}ðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð ó   ¬AÁAÁAc            	      ó<  — t          ddt          z
  t          dz   dt          z
  gdt          z
  t          dz   dt          dz   gddt          z
  t          dz   dt          z
  gdddt          z
  dgg¦  «        } t          d¦  «        5  |                      ¦   «         \  }}|                     ¦   «         t          t          d¦  «        ¦  «                             ¦   «         k    sJ ‚|t          t          d¦  «        ¦  «        k    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nr   r¡   Ta±  [
            [    0,  4*x/(x**2 - 2*x + 1), -(-17*x**4 + 12*sqrt(2)*x**4 - 4*sqrt(2)*x**3 + 6*x**3 - 6*x - 4*sqrt(2)*x + 12*sqrt(2) + 17)/(-7*x**4 + 5*sqrt(2)*x**4 - 6*sqrt(2)*x**3 + 8*x**3 - 2*x**2 + 8*x + 6*sqrt(2)*x - 5*sqrt(2) - 7), -(12*sqrt(2)*x**4 + 17*x**4 - 6*x**3 - 4*sqrt(2)*x**3 - 4*sqrt(2)*x + 6*x - 17 + 12*sqrt(2))/(7*x**4 + 5*sqrt(2)*x**4 - 6*sqrt(2)*x**3 - 8*x**3 + 2*x**2 - 8*x + 6*sqrt(2)*x - 5*sqrt(2) + 7)],
            [x - 1, x/(x - 1) + 1/(x - 1),                       (-7*x**3 + 5*sqrt(2)*x**3 - x**2 + sqrt(2)*x**2 - sqrt(2)*x - x - 5*sqrt(2) - 7)/(-3*x**3 + 2*sqrt(2)*x**3 - 2*sqrt(2)*x**2 + 3*x**2 + 2*sqrt(2)*x + 3*x - 3 - 2*sqrt(2)),                       (7*x**3 + 5*sqrt(2)*x**3 + x**2 + sqrt(2)*x**2 - sqrt(2)*x + x - 5*sqrt(2) + 7)/(2*sqrt(2)*x**3 + 3*x**3 - 3*x**2 - 2*sqrt(2)*x**2 - 3*x + 2*sqrt(2)*x - 2*sqrt(2) + 3)],
            [    0,                     1,                                                                                            -(-3*x**2 + 2*sqrt(2)*x**2 + 2*x - 3 - 2*sqrt(2))/(-x**2 + sqrt(2)*x**2 - 2*sqrt(2)*x + 1 + sqrt(2)),                                                                                            -(2*sqrt(2)*x**2 + 3*x**2 - 2*x - 2*sqrt(2) + 3)/(x**2 + sqrt(2)*x**2 - 2*sqrt(2)*x - 1 + sqrt(2))],
            [1 - x,                     0,                                                                                                                                                                                               1,                                                                                                                                                                                             1]]a  [
            [0, 1,                       0,                       0],
            [0, 0,                       0,                       0],
            [0, 0, x - sqrt(2)*(x - 1) + 1,                       0],
            [0, 0,                       0, x + sqrt(2)*(x - 1) + 1]])r1   r^   rB   r  r   r   r  s      rn   Ú%test_issue_17247_expression_blowup_27r�  ‚  s­  € ÝØ�•A‘•q˜1‘u˜a¥!™eÐ$Ø	
�Q‰•�A‘˜1�a !™eÐ$Ø�•A‘•q˜1‘u˜a¥!™eÐ$Ø�A˜1�q™5 !Ð$ð	&ñ 	'ô 	'€Aõ
 
�TÑ	Ô	ð Kð KØ�}Š}‰Œ‰ˆˆ1Ø�xŠx‰zŒz�V¥Að 'oñ %pô %pñ qô q÷ rxò  rxñ  rzô  rzò	zð zð zð zð
 •F�1ð Iñ Jô Jñ Kô Kò Kð Kð Kð Kð KðKð Kð Kñ Kô Kð Kð Kð Kð Kð Kð Kð Køøøð Kð Kð Kð Kð Kð Ks   ÂB DÄDÄDc                  óÞ   — t          t          d¦  «        ¦  «        } t          d¦  «        5  |                      ¦   «         t          d¦  «        k    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Nrt  Ta�  [
            sqrt(14609315/131072 + sqrt(64789115132571/2147483648 - 2*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3) + 76627253330829751075/(35184372088832*sqrt(64789115132571/4294967296 + 3546944054712886603889144627/(110680464442257309696*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3)) + 2*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3))) - 3546944054712886603889144627/(110680464442257309696*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3)))/2 + sqrt(64789115132571/4294967296 + 3546944054712886603889144627/(110680464442257309696*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3)) + 2*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3))/2),
            sqrt(14609315/131072 - sqrt(64789115132571/2147483648 - 2*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3) + 76627253330829751075/(35184372088832*sqrt(64789115132571/4294967296 + 3546944054712886603889144627/(110680464442257309696*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3)) + 2*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3))) - 3546944054712886603889144627/(110680464442257309696*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3)))/2 + sqrt(64789115132571/4294967296 + 3546944054712886603889144627/(110680464442257309696*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3)) + 2*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3))/2),
            sqrt(14609315/131072 - sqrt(64789115132571/4294967296 + 3546944054712886603889144627/(110680464442257309696*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3)) + 2*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3))/2 + sqrt(64789115132571/2147483648 - 2*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3) - 76627253330829751075/(35184372088832*sqrt(64789115132571/4294967296 + 3546944054712886603889144627/(110680464442257309696*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3)) + 2*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3))) - 3546944054712886603889144627/(110680464442257309696*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3)))/2),
            sqrt(14609315/131072 - sqrt(64789115132571/4294967296 + 3546944054712886603889144627/(110680464442257309696*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3)) + 2*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3))/2 - sqrt(64789115132571/2147483648 - 2*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3) - 76627253330829751075/(35184372088832*sqrt(64789115132571/4294967296 + 3546944054712886603889144627/(110680464442257309696*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3)) + 2*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3))) - 3546944054712886603889144627/(110680464442257309696*(25895222463957462655758224991455280215303/633825300114114700748351602688 + sqrt(1213909058710955930446995195883114969038524625997915131236390724543989220134670)*I/22282920707136844948184236032)**(1/3)))/2)])r1   r   rB   Úsingular_valuesr  s    rn   Ú%test_issue_17247_expression_blowup_28r“  •  sð   € Ý�qð cñ dô dñ 	eô 	e€Aõ
 
�TÑ	Ô	ð dð dØ× Ò Ñ"Ô"¥að )cñ 'dô 'dò dð dð dð dð dðdð dð dñ dô dð dð dð dð dð dð dð døøøð dð dð dð dð dð ds   ¬(A"Á"A&Á)A&c                  óÄ   — t          t          d¦  «        ¦  «        } t          d¦  «        5  |                      ¦   «         dk    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Na¢	  [
        [1+I,-19/4+5/4*I,1/2-I,9/4+55/16*I,-3/4,45/32-37/16*I,1/4+1/2*I,-129/64-9/64*I,1/4-5/16*I,65/128+87/64*I,-9/32-1/16*I,183/256-97/128*I,3/64+13/64*I,-23/32-59/256*I,15/128-3/32*I,19/256+551/1024*I],
        [21/8+I,-537/64+143/16*I,-5/8-39/16*I,2473/256+137/64*I,-149/64+49/32*I,-177/128-1369/128*I,125/64+87/64*I,-2063/256+541/128*I,85/256-33/16*I,805/128+2415/512*I,-219/128+115/256*I,6301/4096-6609/1024*I,119/128+143/128*I,-10879/2048+4343/4096*I,129/256-549/512*I,42533/16384+29103/8192*I],
        [-2,17/4-13/2*I,1+I,-19/4+5/4*I,1/2-I,9/4+55/16*I,-3/4,45/32-37/16*I,1/4+1/2*I,-129/64-9/64*I,1/4-5/16*I,65/128+87/64*I,-9/32-1/16*I,183/256-97/128*I,3/64+13/64*I,-23/32-59/256*I],
        [1/4+13/4*I,-825/64-147/32*I,21/8+I,-537/64+143/16*I,-5/8-39/16*I,2473/256+137/64*I,-149/64+49/32*I,-177/128-1369/128*I,125/64+87/64*I,-2063/256+541/128*I,85/256-33/16*I,805/128+2415/512*I,-219/128+115/256*I,6301/4096-6609/1024*I,119/128+143/128*I,-10879/2048+4343/4096*I],
        [-4*I,27/2+6*I,-2,17/4-13/2*I,1+I,-19/4+5/4*I,1/2-I,9/4+55/16*I,-3/4,45/32-37/16*I,1/4+1/2*I,-129/64-9/64*I,1/4-5/16*I,65/128+87/64*I,-9/32-1/16*I,183/256-97/128*I],
        [1/4+5/2*I,-23/8-57/16*I,1/4+13/4*I,-825/64-147/32*I,21/8+I,-537/64+143/16*I,-5/8-39/16*I,2473/256+137/64*I,-149/64+49/32*I,-177/128-1369/128*I,125/64+87/64*I,-2063/256+541/128*I,85/256-33/16*I,805/128+2415/512*I,-219/128+115/256*I,6301/4096-6609/1024*I],
        [-4,9-5*I,-4*I,27/2+6*I,-2,17/4-13/2*I,1+I,-19/4+5/4*I,1/2-I,9/4+55/16*I,-3/4,45/32-37/16*I,1/4+1/2*I,-129/64-9/64*I,1/4-5/16*I,65/128+87/64*I],
        [-2*I,119/8+29/4*I,1/4+5/2*I,-23/8-57/16*I,1/4+13/4*I,-825/64-147/32*I,21/8+I,-537/64+143/16*I,-5/8-39/16*I,2473/256+137/64*I,-149/64+49/32*I,-177/128-1369/128*I,125/64+87/64*I,-2063/256+541/128*I,85/256-33/16*I,805/128+2415/512*I],
        [0,-6,-4,9-5*I,-4*I,27/2+6*I,-2,17/4-13/2*I,1+I,-19/4+5/4*I,1/2-I,9/4+55/16*I,-3/4,45/32-37/16*I,1/4+1/2*I,-129/64-9/64*I],
        [1,-9/4+3*I,-2*I,119/8+29/4*I,1/4+5/2*I,-23/8-57/16*I,1/4+13/4*I,-825/64-147/32*I,21/8+I,-537/64+143/16*I,-5/8-39/16*I,2473/256+137/64*I,-149/64+49/32*I,-177/128-1369/128*I,125/64+87/64*I,-2063/256+541/128*I],
        [0,-4*I,0,-6,-4,9-5*I,-4*I,27/2+6*I,-2,17/4-13/2*I,1+I,-19/4+5/4*I,1/2-I,9/4+55/16*I,-3/4,45/32-37/16*I],
        [0,1/4+1/2*I,1,-9/4+3*I,-2*I,119/8+29/4*I,1/4+5/2*I,-23/8-57/16*I,1/4+13/4*I,-825/64-147/32*I,21/8+I,-537/64+143/16*I,-5/8-39/16*I,2473/256+137/64*I,-149/64+49/32*I,-177/128-1369/128*I]]Tr½   r‹  r  s    rn   Útest_issue_16823r•  £  s²   € å�qð Fñ Gô Gñ 	Hô 	H€Aõ 
�TÑ	Ô	ð ð Ø�vŠv‰xŒx˜1Š}ˆ}ˆ}ˆ}ˆ}ðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð rŽ  c                  ó¢  — t          g d¢dt          d¦  «        z   dt          d¦  «        z   dt          d¦  «        z
  t          d¦  «         dz
  dddddg	ddt          d¦  «        z  z   ddt          d¦  «        z  z
  ddt          d¦  «        z  z
  ddt          d¦  «        z  z   dddddg	d	t          d¦  «        z  dz
  dd
t          d¦  «        z  z
  dd
t          d¦  «        z  z   dd
t          d¦  «        z  z   ddddd
g	ddt          d¦  «        z  z
  dt          d¦  «        z  dz   dt          d¦  «        z  dz   ddt          d¦  «        z  z
  dddddg	dd
t          d¦  «        z  z   dd
t          d¦  «        z  z   d	t          d¦  «        z  dz
  dd
t          d¦  «        z  z
  ddddd
g	d	dt          d¦  «        z  z   d	dt          d¦  «        z  z
  d	dt          d¦  «        z  z
  d	dt          d¦  «        z  z   dddddg	dt          d¦  «        z
  t          d¦  «         dz
  dt          d¦  «        z   dt          d¦  «        z   dddddg	g¦  «        } t          d¦  «        5  |                      ¦   «         t          ddddddddt	          d¦  «        dz  g	ddddddddt	          d¦  «         dz  g	ddddddddt	          d¦  «        dz  g	ddddddddt	          d¦  «         dz  g	g d¢ddddddddt	          d¦  «         dz  g	g d¢ddddddddt	          d¦  «         dz  g	g¦  «        dfk    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )N)	r¡   r¡   r¡   r¡   r¡   r   r¡   r   r   r¡   r„   rä   rC  re  r  r   r¬   rƒ   rº   r¦   éôÿÿÿrÜ   T)	r   r   r   r   r¡   r   r   r   r   )	r   r   r   r   r   r   r¡   r   r   rD  )r1   r   rB   rF  r   r  s    rn   Útest_issue_18531r˜  ¶  sÙ  € åØ#Ð#Ð#Ø	
�T�!‰WŒW‰�b�4 ™7œ7‘l A­¨Q©¬¡Kµ$°q±'´'°¸A±¸qÀ!ÀRÈÈAÐNØ	ˆa•�Q‘”‰i‰˜˜a¥ Q¡¤™i™¨¨aµ°Q±´©i©¸¸aÅÀQÁÄ¹i¹ÈÈQÐPRÐTVÐXYÐZØ	�D�‰GŒG‰�a‰˜˜Q�t A™wœw™Y™¨¨Q­t°A©w¬w©Y©¸¸A½dÀ1¹g¼g¹I¹ÀrÈ2ÈqÐRTÐVWÐXØ	
ˆQ�t�A‰wŒw‰Y‰˜�$˜q™'œ'™	 A™ q­¨a©¬¡y°1¡}°a¸!½DÀ¹G¼G¹)±mÀQÈÈQÐPRÐTUÐVØ	ˆa•�Q‘”‰i‰˜˜Q�t A™wœw™Y™¨­4°©7¬7©
°Q©¸¸A½dÀ1¹g¼g¹I¹ÀqÈ"ÈbÐRTÐVWÐXØ	ˆa•�Q‘”‰i‰˜˜a¥ Q¡¤™i™¨¨aµ°Q±´©i©¸¸aÅÀQÁÄ¹i¹ÈÈQÐPRÐTVÐXYÐZØ	
�T�!‰WŒW‰•t˜A‘w”w�h ‘l A­¨Q©¬¡K°µd¸1±g´g±¸rÀ1ÀaÈÈAÐNð	
ñ 		ô 		€Aõ 
�TÑ	Ô	ð 	Kð 	KØ�vŠv‰xŒx�FØ��1�a˜˜A˜q !¥a¨¡d¤d¨1¡fÐ-Ø��1�a˜˜A˜q !¥a¨¡d¤d U¨1¡WÐ-Ø��1�a˜˜A˜q !¥a¨¡d¤d¨1¡fÐ-Ø��1�a˜˜A˜q !¥a¨¡d¤d U¨1¡WÐ-Ø*Ð*Ð*Ø��1�a˜˜A˜q !¥a¨¡d¤d U¨1¡WÐ-Ø*Ð*Ð*Ø��1�a˜˜A˜q !¥a¨¡d¤d U¨1¡WÐ-ð$/ñ 0ô 0ð 2JðKò Kð Kð Kð Kð Kð	Kð 	Kð 	Kñ 	Kô 	Kð 	Kð 	Kð 	Kð 	Kð 	Kð 	Kð 	Køøøð 	Kð 	Kð 	Kð 	Kð 	Kð 	Ks   É&CMÍMÍMc            	      óh  — t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          ¦  «        5  dt          d¦  «        d<   d d d ¦  «         n# 1 swxY w Y   t          ¦   «         t          g ¦  «        cxk    r*t          g g¦  «        cxk    rt          ddg ¦  «        k    sn J ‚t	          ¦   «         5  t          dgd	gg¦  «                             ¦   «         dgd	ggk    sJ ‚	 d d d ¦  «         n# 1 swxY w Y   t	          ¦   «         5  t          dgd	gg¦  «        j                             ¦   «         dggd	ggk    sJ ‚	 d d d ¦  «         n# 1 swxY w Y   t          dgg¦  «        } t	          ¦   «         5  t          j        | d
<   d d d ¦  «         n# 1 swxY w Y   t          t          dgddgg¦  «        }|}|j
        |j        k    sJ ‚|j
        dk    sJ ‚|d d …         t          dddgk    sJ ‚t          ddt          dddg¦  «        }|}|j
        |j        k    sJ ‚|j
        dk    sJ ‚|d d …         t          dddgk    sJ ‚||k    sJ ‚t          |¦  «        |k    sJ ‚t          ddt          dd¦  «        ¦  «        }t          ddt          dd¦  «        ¦  «        }t          ||g¦  «        }|j
        dk    sJ ‚|j        dk    sJ ‚|d d …         g d¢k    sJ ‚t          t          d¦  «        ¦  «        t          d¦  «        k    sJ ‚t          t          t          d¦  «        ¦  «        ¦  «        t          t          d¦  «        ¦  «        k    sJ ‚t          |¦  «         |j        ¦   «         k    sJ ‚t          t          |¦  «        ¦  «        t          |¦  «                             ¦   «         k    sJ ‚|t          |¦  «        usJ ‚t#          dd¦  «        t#          dd¦  «        dz  gt#          dd¦  «        dz  t#          dd¦  «        dz  gg}t          |¦  «        } | t          g d¢g d¢g d¢g d¢g d¢g¦  «        k    sJ ‚|                      ¦   «         |k    sJ ‚t          |d¬¦  «                             ¦   «         |k    sJ ‚t%          ddd¦  «        }t#          d¦  «        |g}t          |¦  «        t          ddgddg|d
         |d         g|d         |d         gg¦  «        k    sJ ‚t	          ¦   «         5  t          |d¬¦  «                             ¦   «         d„ |D ¦   «         k    sJ ‚	 d d d ¦  «         n# 1 swxY w Y   t          t#          d¦  «        t#          d¦  «        g¦  «        t          t#          d¦  «        g¦  «        k    sJ ‚t          t          d„ ¦  «         t          t          d„ ¦  «         t          ddgddgg¦  «        } t          | dg¦  «        }	|	t          ddgddgddgg¦  «        k    sJ ‚d S )Nc                  ó>   — t          ddt          d¦  «        ¦  «        S )Nr¹   é   )r1   rÂ   rl   rm   rn   ry   ztest_creation.<locals>.<lambda>Ï  s   € �v a¨­E°"©I¬IÑ6Ô6€ rm   c                  ó$   — t          ddg ¦  «        S )Nr¹   rä   rÙ   rl   rm   rn   ry   ztest_creation.<locals>.<lambda>Ð  s   € �v a¨¨RÑ0Ô0€ rm   c                  ó,   — t          d¦  «        d         S rØ   rÙ   rl   rm   rn   ry   ztest_creation.<locals>.<lambda>Ñ  s   € �v f™~œ~¨aÔ0€ rm   r¹   r°   rƒ   r   r¡   )r„   r¼   r„   rº   rÍ   ©	r¡   r„   rƒ   r¦   r¹   r§   rº   r½   r·   r¦   )r¡   r¡   r„   r„   r„   )rƒ   rƒ   rƒ   r¦   r¦   F©Úevaluaterò   r¾   rÈ   rÉ   c                 ó   — g | ]}|g‘ŒS rl   rl   r‡   s     rn   r0  z!test_creation.<locals>.<listcomp>  s   € Ð7IÐ7IÐ7IÀ¸¸Ð7IÐ7IÐ7Irm   c                  óZ   — t          t          d¦  «        t          dd¦  «        g¦  «        S )Nr„   r   rƒ   ©r1   r8   rl   rm   rn   ry   ztest_creation.<locals>.<lambda>  ó!   € �v¥t¨A¡w¤wµ°Q¸±
´
Ð&;Ñ<Ô<€ rm   c                  óZ   — t          t          d¦  «        t          dd¦  «        g¦  «        S )Nr„   rƒ   r   r£  rl   rm   rn   ry   ztest_creation.<locals>.<lambda>  r¤  rm   )r¹   r§   r§   )rN   r  Ú
IndexErrorr1   rS   ÚtolistÚTr   ÚEmptySetr^   r�   rŽ   rÂ   r5   r/   Úas_immutableÚ
as_mutabler8   rA   )
rÄ   rZ   r–   r[   Úc23Úc13r\   Údatrò   ÚM2s
             rn   Útest_creationr°  Î  sÄ  € Ý
�:Ð6Ð6Ñ7Ô7Ð7Ý
�:Ð0Ð0Ñ1Ô1Ð1Ý
�:Ð0Ð0Ñ1Ô1Ð1Ý	•
Ñ	Ô	ð ð Ø�ˆv‰Œ�qÑðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ ‰8Œ8•v˜b‘z”zÐEÐEÒEÐE¥V¨R¨D¡\¤\ÐEÐEÒEÐEµV¸A¸qÀ"Ñ5EÔ5EÒEÐEÐEÐEÐEÐEå	Ñ	!Ô	!ð ?ð ?Ý˜˜˜T�{�mÑ$Ô$×+Ò+Ñ-Ô-°A°3¸°+°Ò>Ð>Ð>Ð>Ð>ð?ð ?ð ?ñ ?ô ?ð ?ð ?ð ?ð ?ð ?ð ?øøøð ?ð ?ð ?ð ?å	Ñ	!Ô	!ð Cð CÝ˜˜˜T�{�mÑ$Ô$Ô&×-Ò-Ñ/Ô/°a°S°E¸D¸6°?ÒBÐBÐBÐBÐBðCð Cð Cñ Cô Cð Cð Cð Cð Cð Cð Cøøøð Cð Cð Cð Cå��ˆu‰Œ€AÝ	Ñ	!Ô	!ð ð Ý”*ˆˆ$‰ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ 	•�A�˜˜A˜ÐÑ Ô €AØ	€AØŒ6�Q”VÒÐÐÐØŒ6�QŠ;ˆ;ˆ;ˆ;ØˆQˆQˆQŒ4•A�q˜!˜Q�<ÒÐÐÐåˆq�!•a˜˜A˜q�\Ñ"Ô"€AØ	€AØŒ6�Q”VÒÐÐÐØŒ6�QŠ;ˆ;ˆ;ˆ;ØˆQˆQˆQŒ4•A�q˜!˜Q�<ÒÐÐÐà�Š6ˆ6ˆ6ˆ6å�!‰9Œ9˜Š>ˆ>ˆ>ˆ>å
��A•u˜Q ‘{”{Ñ
#Ô
#€CÝ
��A•u˜Q ‘|”|Ñ
$Ô
$€CÝ��SˆzÑÔ€AØŒ6�QŠ;ˆ;ˆ;ˆ;ØŒ6�QŠ;ˆ;ˆ;ˆ;ØˆQˆQˆQŒ4Ð.Ð.Ð.Ò.Ð.Ð.Ð.å•#�a‘&”&‰>Œ>�S ™VœVÒ#Ð#Ð#Ð#Ý�?­3¨q©6¬6Ñ2Ô2Ñ3Ô3µÅsÈ1ÁvÄvÑ7NÔ7NÒNÐNÐNÐNÝ˜1ÑÔ  ¤Ñ!1Ô!1Ò1Ð1Ð1Ð1Ý•/ !Ñ$Ô$Ñ%Ô%­¸Ñ);Ô);×)FÒ)FÑ)HÔ)HÒHÐHÐHÐHà•F˜1‘I”IÐÐÐÐå��1‰IŒI•t˜A˜a‘y”y ‘{Ð#¥d¨1¨Q¡i¤i°¡kµ4¸¸!±9´9¸Q±;Ð%?Ð
@€CÝˆs‰Œ€AØ•ØˆˆØˆˆØˆˆØˆˆØˆˆðñ ô ò ð ð ð ð �8Š8‰:Œ:˜ÒÐÐÐå�# Ð&Ñ&Ô&×-Ò-Ñ/Ô/°3Ò6Ð6Ð6Ð6Ý�S˜!˜QÑÔ€AÝ�‰7Œ7�Aˆ,€CÝ�#‰;Œ;�&Ø�AÐØ�AÐØ€t„Wˆa�ŒgÐØ€t„Wˆa�ŒgÐð	"ñ ô ò ð ð ð õ
 
 Ñ	!Ô	!ð Jð JÝ�c EÐ*Ñ*Ô*×1Ò1Ñ3Ô3Ð7IÐ7IÀSÐ7IÑ7IÔ7IÒIÐIÐIÐIÐIðJð Jð Jñ Jô Jð Jð Jð Jð Jð Jð Jøøøð Jð Jð Jð Jõ •4˜‘7”7�D ™GœGÐ$Ñ%Ô%­µ°a±´°	Ñ):Ô):Ò:Ð:Ð:Ð:Ý
�:Ð<Ð<Ñ=Ô=Ð=Ý
�:Ð<Ð<Ñ=Ô=Ð=õ 	��A�˜˜A˜ÐÑ Ô €AÝ	��F�Ñ	Ô	€BØ•˜!˜Q˜ ! Q ¨!¨Q¨Ð0Ñ1Ô1Ò1Ð1Ð1Ð1Ð1Ð1sZ   ÁA6Á6A:Á=A:Ã0DÄDÄ!DÄ36E6Å6E:Å=E:Æ F<Æ<G ÇG Ô*4U+Õ+U/Õ2U/c                  ób  — t          j        dt          dd¦  «        t          dd¦  «        dz  t          dd¦  «        dz  t          dd¦  «        dz  t          dd¦  «        dz  t          dd¦  «        dz  t          dd¦  «        dz  ¦  «        t          g d¢g d¢g d	¢g d
¢g¦  «        k    sJ ‚d S )Nrƒ   r„   r¡   r¦   r¹   r§   rº   )r¡   r„   r„   r„   rƒ   rƒ   )r¦   r„   r„   r„   r¹   r¹   )r§   r§   rº   rº   r¹   r¹   )r1   Ú	irregularr8   rl   rm   rn   Útest_irregular_blockr³    sÊ   € ÝÔ˜A�t A a™yœy­$¨q°©)¬)°A©+µt¸A¸a±y´yÀ±{ÝˆQˆq‰	Œ	�!‰•T˜!˜A‘Y”Y˜q‘[¥$ q¨¡)¤)¨A¡+­t°A°a©y¬y¸©{ñ<ô <Ý?EØÐÐØÐÐØÐÐØÐÐð	Gñ @ô @òð ð ð ð ð rm   c                  ó8  — t           j        t           j        t          t          z  t           j        gt          t          t          t          dz  gt          t           j         t          t          z  dgg} t          | ¦  «        }|                     ¦   «         | k    sJ ‚d S )Nr„   rƒ   )	r   ÚOner  r^   r_   ÚZeror`   r1   r§  )Úlstr–   s     rn   Útest_tolistr¸  &  sh   € ÝŒE•1”6�1�Q™3¥¤Ð'­!­Qµµ1°a±4¨½1½q¼u¸fÅaÍÁcÈ1Ð:MÐ
N€CÝˆs‰Œ€AØ�8Š8‰:Œ:˜ÒÐÐÐÐÐrm   c                  ó~  — t          dd¦  «                             ¦   «         t          dd¦  «        k    sJ ‚t          dd¦  «                             ¦   «         t          t          dd¦  «        ¦  «        k    sJ ‚t          dd¦  «                             ¦   «         t          t          dd¦  «        ¦  «        k    sJ ‚d S ©Nr   rƒ   )r>   r«  rª  r/   rl   rm   rn   Útest_as_mutabler»  ,  sŸ   € Ý��A‰;Œ;×!Ò!Ñ#Ô#¥u¨Q°¡{¤{Ò2Ð2Ð2Ð2Ý��A‰;Œ;×#Ò#Ñ%Ô%­½¸qÀ!¹¼Ñ)EÔ)EÒEÐEÐEÐEÝ��A‰;Œ;×#Ò#Ñ%Ô%­½¸qÀ!¹¼Ñ)EÔ)EÒEÐEÐEÐEÐEÐErm   c                  ó  — t          d¦  «        } | d d…d d…f         t          d¦  «        k    sJ ‚| dd…dd…f         t          d¦  «        k    sJ ‚t          ddd„ ¦  «        }|dd d …f         t          ddd¦  «        k    sJ ‚|dd…df         t          ddd¦  «        k    sJ ‚t          g d	¢g d
¢g d¢g d¢g¦  «        }|d d …df         t          ddg d¢¦  «        k    sJ ‚|dd …d d …f         t          g d¢g d¢g¦  «        k    sJ ‚d S )Nr¦   rƒ   r„   r   c                 ó   — | |z   S rt   rl   rv   s     rn   ry   ztest_slicing.<locals>.<lambda>7  ó
   €  1 q¡5€ rm   r¡   r»   ©r„   rƒ   )r   r¡   r„   rƒ   ©r¦   r¹   r§   rº   ©r½   r·   rÍ   é   ©rÜ   é   é   rÎ   rä   )rƒ   rº   rÂ  rÎ   r  )r5   r>   r1   )Úm0Úm1Úm2s      rn   Útest_slicingrÉ  2  sW  € Ý	ˆQ‰Œ€BØˆbˆqˆb�"�1�"ˆfŒ:�˜Q™œÒÐÐÐØˆa�ˆc�1�Q�3ˆhŒ<�5 ™8œ8Ò#Ð#Ð#Ð#å	��1Ð(Ð(Ñ	)Ô	)€BØˆa���ˆdŒ8•v˜a  IÑ.Ô.Ò.Ð.Ð.Ð.Øˆa�ˆc�1ˆfŒ:�  1 fÑ-Ô-Ò-Ð-Ð-Ð-å	���˜|˜|˜|¨^¨^¨^Ð=MÐ=MÐ=MÐNÑ	OÔ	O€BØˆaˆaˆa�ˆeŒ9�˜q ! ^ ^ ^Ñ4Ô4Ò4Ð4Ð4Ð4Øˆbˆcˆc�1�1�1ˆfŒ:�   Ð1AÐ1AÐ1AÐ BÑCÔCÒCÐCÐCÐCÐCÐCrm   c                  ó  — t          d¦  «        } t          d¦  «        | dd…dd…f<   | t          d¦  «        k    sJ ‚t          d¦  «        | d d…d d…f<   | t          d¦  «        k    sJ ‚t          ddd¦  «        | d d …df<   | t          d¦  «        k    sJ ‚t          d¦  «        | d d …d d …f<   | t          d¦  «        k    sJ ‚g d¢| d d …d d …f<   | t          d¦  «        k    sJ ‚ddg| d d…df<   | t          d	¦  «        k    sJ ‚d S )
Nr¦   r„   )©r   r   r   r   rË  ©r   r   r¡   r   rp  r¡   ©r¡   r„   rƒ   r¦   r   )©r¡   r   r   r   )r„   r¡   r   r   )rƒ   r   r¡   r   )r¦   r   r   r¡   ©rÍ  ©r¹   r§   rº   r½   ©r·   rÍ   rÂ  rÜ   ©rÄ  rÅ  rÎ   é   ))r   r„   rƒ   r¦   )r   r§   rº   r½   rÑ  rÒ  )r>   r5   r1   rè   s    rn   Útest_submatrix_assignmentrÔ  @  s�  € Ýˆa‰Œ€AÝ�a‘&”&€A€aˆ€cˆ1ˆQˆ3€h�KØ•ð &ñ 'ô 'ò 'ð 'ð 'ð 'õ �A‘”€A€b€q€bˆ"ˆ1ˆ"€f�IØ•�A‘”Š;ˆ;ˆ;ˆ;Ý�Q˜˜<Ñ(Ô(€A€a€a€aˆ€d�GØ•ð &ñ 'ô 'ò 'ð 'ð 'ð 'õ �A‰hŒh€A€a€a€aˆˆˆ€d�GØ•�a‘”Š=ˆ=ˆ=ˆ=ØMÐMÐM€A€a€a€aˆˆˆ€d�GØ•ð *ñ +ô +ò +ð +ð +ð +ð �1ˆv€A€b€q€bˆ!€e�HØ•ð *ñ +ô +ò +ð +ð +ð +ð +ð +rm   c                  ó¼  ‡ — t          ddd„ ¦  «        Š ‰                      g d¢ddg¦  «        t          ddg d¢¦  «        k    sJ ‚‰                      ddgg d	¢¦  «        t          ddg d
¢¦  «        k    sJ ‚‰                      t          d¦  «        t          d¦  «        ¦  «        ‰ k    sJ ‚t          t          ˆ fd„¦  «         t          t          ˆ fd„¦  «         d S )Nr¦   rƒ   c                 ó   — | dz  |z   S ©Nrƒ   rl   rv   s     rn   ry   ztest_extract.<locals>.<lambda>]  s   €  ! A¡#¨¡'€ rm   )r   r¡   rƒ   r   r¡   r„   )r   r¡   rƒ   r¦   r·   rÍ   r	  )r   r   r„   r·   r·   rÂ  c                  ó4   •— ‰                       dgdg¦  «        S )Nr¦   r   ©rÃ   rè   s   €rn   ry   ztest_extract.<locals>.<lambda>a  ó   ø€ ˜qŸyšy¨!¨¨q¨cÑ2Ô2€ rm   c                  ó4   •— ‰                       dgdg¦  «        S rº  rÙ  rè   s   €rn   ry   ztest_extract.<locals>.<lambda>b  rÚ  rm   )r1   rÃ   rÂ   rN   r¦  rè   s   @rn   Útest_extractrÜ  \  sñ   ø€ Ýˆq�!Ð)Ð)Ñ*Ô*€AØ�9Š9�Y�Y�Y  A Ñ'Ô'­6°!°QÐ8KÐ8KÐ8KÑ+LÔ+LÒLÐLÐLÐLØ�9Š9�a˜�V˜Y˜Y˜YÑ'Ô'­6°!°QÐ8KÐ8KÐ8KÑ+LÔ+LÒLÐLÐLÐLØ�9Š9•U˜1‘X”X�u Q™xœxÑ(Ô(¨AÒ-Ð-Ð-Ð-Ý
�:Ð2Ð2Ð2Ð2Ñ3Ô3Ð3Ý
�:Ð2Ð2Ð2Ð2Ñ3Ô3Ð3Ð3Ð3rm   c                  óB  — t          d¦  «        } |                      dd¦  «        t          ddd¦  «        k    sJ ‚t          ddd„ ¦  «        }|                     dd¦  «        t          d¦  «        k    sJ ‚|                     dd	¦  «        t          d
¦  «        k    sJ ‚d S )Nrƒ   r¡   r·   )	r¡   r   r   r   r¡   r   r   r   r¡   r¦   c                 ó   — | |z   S rt   rl   rv   s     rn   ry   ztest_reshape.<locals>.<lambda>h  r¾  rm   )r»   ©rƒ   r¡   r„   )rƒ   r¦   r„   r¸   r„   r§   ))r   r¡   r„   rƒ   r¡   r„   )rƒ   r¦   r„   rƒ   r¦   r¹   )r5   Úreshaper1   ©rÆ  rÇ  s     rn   Útest_reshaperâ  e  s¶   € Ý	ˆQ‰Œ€BØ�:Š:�a˜ÑÔ�v a¨Ð,GÑHÔHÒHÐHÐHÐHÝ	��1Ð(Ð(Ñ	)Ô	)€BØ�:Š:Ø	ˆ1ñô ÝÐDÑEÔEòFð Fð Fð Fà�:Š:�a˜ÑÔ�vÐ&NÑOÔOÒOÐOÐOÐOÐOÐOrm   c                  óÎ   — t          d¦  «        } |                      d„ ¦  «        t          d¦  «        dz  k    sJ ‚|                      d„ ¦  «        t          d¦  «        k    sJ ‚d S )Nrƒ   c                 ó   — d| z  S ©Nr„   rl   r/  s    rn   ry   z test_applyfunc.<locals>.<lambda>p  s
   €  ! A¡#€ rm   r„   c                 ó   — dS r€   rl   r/  s    rn   ry   z test_applyfunc.<locals>.<lambda>q  s   €  !€ rm   )r5   Ú	applyfuncr>   )rÆ  s    rn   Útest_applyfuncrè  n  sa   € Ý	ˆQ‰Œ€BØ�<Š<˜˜Ñ&Ô&­#¨a©&¬&°©(Ò2Ð2Ð2Ð2Ø�<Š<˜˜Ñ$Ô$­¨a©¬Ò0Ð0Ð0Ð0Ð0Ð0rm   c            	      ó¸  — t          t          t          t          z   z  dgt          t          z   t          z  t          z  t          t          t          t          t          z   z  z   z  gg¦  «        } |                      ¦   «         }|t          t          t          z  t          dz  z   dgt          t          dz  z  t          t          dz  z  z   t          t          z  t          t          dz  z  z   t          dz  z   gg¦  «        k    sJ ‚t	          dd¬¦  «        }t          t          t          |z  ¦  «        g¦  «                             d¬¦  «        t          t          |¦  «        t          t          |¦  «        z  z   g¦  «        k    sJ ‚t          g d¢g d¢g d	¢g¦  «                             ¦   «         t          d
d
t          dd¦  «        gg d¢g d¢g¦  «        k    sJ ‚d S )Nr„   rƒ   rZ   T©Úreal)Úcomplexr»   )r   r   rä   rÀ   r¡   )r   r¡   rä   rì   )
r1   r^   r_   r   r   r   r
   r   r   r   )rÆ  rÇ  rZ   s      rn   Útest_expandrí  t  s³  € Ý	•!•Q�‘U‘)˜Q�¥A­¡E­1¡9­a¡-µµA½½1½q¹5¹	±MÑ1BÐ!CÐDÑ	EÔ	E€Bà	�Š‰Œ€BØ•Ý
�A‰#•�1‘‰*�aˆ�1�Q ™T™6¥A¥a¨¡d¡F™?­A­a©Cµ!µA°q±D±&©L½1¸a¹4Ñ,?Ð@ÐAñCô Cò Cð Cð Cð Cõ 	ˆs˜ÐÑÔ€Aå•3•q˜‘s‘8”8�*ÑÔ×$Ò$¨TÐ$Ñ2Ô2Ý•�A‘”��3˜q™6œ6™Ñ!Ð"Ñ#Ô#ò$ð $ð $ð $õ �9�9�9˜j˜j˜j¨)¨)¨)Ð4Ñ5Ô5×9Ò9Ñ;Ô;½vØ	
ˆA�x˜˜1‰~Œ~ÐØˆ
ˆ
Øˆ	ˆ	ðGñ @ô @ò ð ð ð ð ð rm   c            	      óà  — t          t          t          ¦  «        dz  t          t          dz  ¦  «        gt          t          dz  ¦  «        t          t          ¦  «        dz  z  t          t          dz  ¦  «        t          t          ¦  «        dz  z  gg¦  «        } |                      t          j        t          ¦  «        t          j        t          ¦  «        z  ¦  «        }|t          t          dz  t          t          ¦  «        gt          dz  t          t          ¦  «        z  t          dz  t          t          ¦  «        z  gg¦  «        k    sJ ‚|                      t          j        t          ¦  «        t          j        t          ¦  «        z  ¦  «        }|t          t          dz  t          gt          t          dz  z  t          dz  t          z  gg¦  «        k    sJ ‚|                      t          j	        t          ¦  «        t          j	        t          ¦  «        z  ¦  «        }|t          t          dz  t           gt           t          dz  z  t          dz   t          z  gg¦  «        k    sJ ‚d S rå  )
r1   r   r^   r   r_   ÚrefinerU   rë  r  rø   rá  s     rn   Útest_refinerð  †  s¬  € Ý	•#•a‘&”&˜!‘)�T¥! Q¡$™ZœZÐ(Ý•a˜‘d‘”�C¥™FœF A™IÑ%¥t­A¨q©D¡z¤zµ#µa±&´&¸!±)Ñ';Ð<ð>ñ 
?ô 
?€Bà	�Š•1”6�!‘9”9�qœv¥a™yœyÑ(Ñ	)Ô	)€BØ•�!˜Q™$¥¥A¡¤˜­!¨Q©$­sµ1©v¬v©+µq¸!±t½CÅ¹F¼F±{Ð)CÐDÑEÔEÒEÐEÐEÐEà	�Š•1”:�a‘=”=¥1¤:­a¡=¤=Ñ0Ñ	1Ô	1€BØ•�!˜Q™$¥˜¥Q¥q¨!¡t¡V­Q°©Tµ!©VÐ$4Ð5Ñ6Ô6Ò6Ð6Ð6Ð6à	�Š•1”:�a‘=”=¥1¤:­a¡=¤=Ñ0Ñ	1Ô	1€BØ•�!˜Q™$¥ ˜¥q b­¨A©¡gµ°1±¨uµQ©wÐ%7Ð8Ñ9Ô9Ò9Ð9Ð9Ð9Ð9Ð9rm   c                  óÆ  — t          dd¦  «        } t          ddd¬¦  «        } | t          ddd¬¦  «        k    sJ ‚t          dddd¦  «        } t          ddd¬¦  «        } | t          ddd¬¦  «        k    sJ ‚|                      ¦   «         } |j        ¦   «          || k    sJ ‚t          j        d¦  «        }| t          dd|¬¦  «        k    sJ ‚d	D ]'}d
D ]"}t          |d||¬¦  «        } | | j        k    sJ ‚Œ#Œ(t          ddd¬¦  «        } d}t          | j        d         ¦  «        D ]2}t          | j        d         ¦  «        D ]}| ||f         dk    r|dz  }ŒŒ3|dk    sJ ‚d S )Nrƒ   )Úseedr¦   r   é–   T)rò  Ú	symmetric)rô  Úprng)rÍ   rÂ  )rÞ   éF   é   )rô  Úpercentrõ  rÍ   r¡   rö  )Úminrø  r÷  )r9   Úcopyr%   ÚrandomÚRandomr¨  rÂ   rŒ   )rÄ   r   ÚrngÚsizerø  Ú
zero_countrw   rx   s           rn   Útest_randomr   ’  s¼  € Ý�1�aÑÔ€AÝ�1�a˜aÐ Ñ Ô €AØ•
˜1˜a aÐ(Ñ(Ô(Ò(Ð(Ð(Ð(å�1�a˜˜CÑ Ô €AÝ�1˜1¨Ð-Ñ-Ô-€AØ•
˜1 1°Ð5Ñ5Ô5Ò5Ð5Ð5Ð5à	�Š‰Œ€AØ€A„J�L„L€LØ�Š6ˆ6ˆ6ˆ6å
Œ-˜Ñ
Ô
€CØ•
˜1¨°3Ð7Ñ7Ô7Ò7Ð7Ð7Ð7ð ð ð ˆØ$ð 	ð 	ˆGÝ˜4¨4¸ÀsÐKÑKÔKˆAØ˜œ’8�8�8�8�8ð	õ 	�2˜1 bÐ)Ñ)Ô)€AØ€JÝ�1”7˜1”:ÑÔð  ð  ˆÝ�q”w˜q”zÑ"Ô"ð 	 ð 	 ˆAØ��A�Œw˜!Š|ˆ|Ø˜a‘�
øð	 ð ˜ÒÐÐÐÐÐrm   c                  óþ  ‡‡— t          d¦  «        } |                      ¦   «         t          d¦  «        k    sJ ‚|                      d¬¦  «        t          d¦  «        k    sJ ‚|                      d¬¦  «        t          d¦  «        k    sJ ‚|                      d¬¦  «        t          d¦  «        k    sJ ‚|                      d¬¦  «        t          d¦  «        k    sJ ‚|                      d¬¦  «        t          d¦  «        k    sJ ‚t          g d¢g d	¢g d
¢g¦  «        } |                      ¦   «         }| |z  t          d¦  «        k    sJ ‚|                      d¬¦  «        |k    sJ ‚|                      d¬¦  «        |k    sJ ‚|                      d¬¦  «        |k    sJ ‚|                      d¬¦  «        |k    sJ ‚|                      d¬¦  «        |k    sJ ‚t          g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d ¢g d!¢g d"¢g d#¢g d$¢g¦  «        }|                     d%¬¦  «        |z  t          |j        d&         ¦  «        k    sJ ‚t          Š ‰g d'¢g d(¢g d)¢g¦  «        Št          ˆˆfd*„d+                     ¦   «         D ¦   «         ¦  «        sJ ‚t          Š ‰g d'¢g d(¢g d)¢g¦  «        Št          ˆˆfd,„d+                     ¦   «         D ¦   «         ¦  «        sJ ‚d S )-Nr¦   r~  rv  r�  r„  rˆ  ÚQR)r„   rƒ   r¹   )rƒ   r§   r„   )r½   rƒ   r§   rƒ   )r   r   r   r   r¡   r   r   r¡   r   r¡   r¡   r¡   r   r   r   r¡   r¡   r   r   r   r   r¡   r¡   r   r   )r¡   r   r¡   r   r   r¡   r   r   r¡   r   r¡   r   r¡   r¡   r¡   r   r¡   r¡   r   r   r   r   r   r¡   r   )r¡   r¡   r¡   r¡   r   r¡   r   r   r¡   r¡   r   r   r   r¡   r¡   r¡   r¡   r   r   r¡   r¡   r   r   r¡   r¡   )r¡   r   r   r   r   r   r¡   r¡   r   r   r¡   r¡   r¡   r   r   r   r   r   r   r¡   r   r   r¡   r   r   )r¡   r   r   r¡   r¡   r¡   r   r¡   r   r   r¡   r   r   r¡   r¡   r¡   r   r¡   r   r   r   r¡   r   r   r   )r¡   r   r   r   r   r   r   r   r¡   r¡   r¡   r   r¡   r   r¡   r¡   r¡   r¡   r   r   r   r¡   r¡   r   r¡   )r   r¡   r¡   r¡   r   r   r   r   r¡   r¡   r¡   r   r¡   r   r¡   r   r¡   r   r¡   r   r¡   r   r   r¡   r   )r¡   r¡   r   r   r   r¡   r¡   r   r   r¡   r¡   r   r¡   r¡   r   r¡   r¡   r   r¡   r   r¡   r¡   r   r¡   r¡   )r   r   r¡   r¡   r¡   r   r   r¡   r¡   r   r¡   r¡   r   r¡   r   r   r   r   r   r   r¡   r   r¡   r   r¡   )r¡   r   r¡   r¡   r¡   r   r¡   r   r   r¡   r¡   r   r¡   r¡   r   r¡   r¡   r¡   r¡   r   r¡   r¡   r¡   r   r   )r   r¡   r¡   r   r   r   r   r¡   r¡   r   r¡   r   r¡   r   r¡   r¡   r   r   r¡   r   r   r   r¡   r¡   r   )r¡   r   r   r¡   r   r¡   r   r¡   r¡   r   r   r¡   r   r¡   r   r¡   r   r¡   r   r¡   r   r¡   r¡   r   r   )r   r¡   r¡   r   r   r¡   r¡   r   r   r¡   r¡   r   r¡   r   r   r   r¡   r   r   r¡   r   r¡   r¡   r   r¡   )r¡   r¡   r¡   r   r¡   r   r   r¡   r   r   r¡   r   r¡   r¡   r   r   r¡   r¡   r¡   r   r¡   r   r¡   r¡   r   )r   r¡   r   r   r   r   r¡   r¡   r   r¡   r¡   r   r   r   r   r¡   r   r¡   r¡   r¡   r   r   r¡   r   r   )r¡   r¡   r¡   r¡   r   r¡   r¡   r¡   r¡   r¡   r¡   r   r   r   r¡   r   r¡   r   r¡   r   r   r¡   r   r   r   )r   r   r   r¡   r   r¡   r¡   r   r¡   r   r   r   r   r   r¡   r   r¡   r¡   r   r¡   r   r¡   r¡   r   r¡   )r   r¡   r   r¡   r   r   r   r   r¡   r¡   r¡   r   r   r¡   r¡   r¡   r   r   r¡   r   r¡   r¡   r   r¡   r¡   )r¡   r   r¡   r¡   r   r¡   r   r¡   r¡   r   r¡   r¡   r¡   r   r¡   r   r   r   r   r¡   r   r   r¡   r   r¡   )r   r   r   r¡   r   r   r¡   r¡   r   r¡   r¡   r   r¡   r   r¡   r¡   r   r   r   r   r   r   r   r   r   )r¡   r   r   r   r   r¡   r   r¡   r   r   r¡   r¡   r   r¡   r   r¡   r¡   r¡   r¡   r   r¡   r¡   r¡   r¡   r¡   )r   r   r¡   r¡   r   r¡   r   r   r   r¡   r   r   r¡   r   r   r¡   r   r   r   r¡   r   r¡   r   r¡   r¡   )r   r   r   r   r   r¡   r¡   r¡   r   r¡   r¡   r¡   r   r   r   r¡   r   r¡   r¡   r   r¡   r¡   r   r   r   )r   r   r¡   r   r¡   r¡   r   r¡   r¡   r¡   r   r   r¡   r   r¡   r   r   r¡   r   r¡   r   r   r   r   r   )r   r   r   r¡   r¡   r   r¡   r¡   r¡   r   r   r¡   r   r¡   r   r¡   r¡   r   r¡   r¡   r¡   r   r   r¡   r   ÚBLOCKr   )râ   é1   é   )r·   éG   é^   )é;   é   éA   c              3   ó`   •K  — | ](}t          ‰                     |¦  «        ¦  «        ‰u V — Œ)d S rt   ©r†   r  ©rˆ   Úsr•   r–   s     €€rn   r‰   ztest_inverse.<locals>.<genexpr>â  ó8   øè è € ÐLÐL¨�t�A—E’E˜!‘H”H‰~Œ~ Ð$ÐLÐLÐLÐLÐLÐLrm   zGE ADJ LU CH LDL QRc              3   ó`   •K  — | ](}t          ‰                     |¦  «        ¦  «        ‰u V — Œ)d S rt   r  r  s     €€rn   r‰   ztest_inverse.<locals>.<genexpr>ç  r  rm   )r5   r  r1   rŒ   r/   r�   Úsplitr0   )rò   ÚAinvÚAAr•   r–   s      @@rn   Útest_inverser  °  sÚ  øø€ ÝˆA‰Œ€AØ�5Š5‰7Œ7•c˜!‘f”fÒÐÐÐØ�5Š5˜ˆ5ÑÔ¥ Q¡¤Ò'Ð'Ð'Ð'Ø�5Š5˜ˆ5ÑÔ¥# a¡&¤&Ò(Ð(Ð(Ð(Ø�5Š5˜ˆ5ÑÔ¥ Q¡¤Ò'Ð'Ð'Ð'Ø�5Š5˜ˆ5ÑÔ¥# a¡&¤&Ò(Ð(Ð(Ð(Ø�5Š5˜ˆ5ÑÔ¥ Q¡¤Ò'Ð'Ð'Ð'Ý�	�	�	Ø�	�	Ø�	�	ðñ 	ô 	€Að �5Š5‰7Œ7€DØˆT‰6•S˜‘V”VÒÐÐÐØ�5Š5˜ˆ5ÑÔ Ò%Ð%Ð%Ð%Ø�5Š5˜ˆ5ÑÔ $Ò&Ð&Ð&Ð&Ø�5Š5˜ˆ5ÑÔ Ò%Ð%Ð%Ð%Ø�5Š5˜ˆ5ÑÔ $Ò&Ð&Ð&Ð&Ø�5Š5˜ˆ5ÑÔ Ò%Ð%Ð%Ð%å	Ð\Ð\Ð\ØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWØWÐWÐWð1Yñ 
Zô 
Z€Bð2 �6Š6˜ˆ6Ñ!Ô! BÑ&­#¨b¬h°q¬kÑ*:Ô*:Ò:Ð:Ð:Ð:å
€CØˆˆ\ˆ\ˆ\Øˆ\ˆ\Øˆ\ˆ\ðñ 	ô 	€Aõ ÐLÐLÐLÐLÐLÐ.C×.IÒ.IÑ.KÔ.KÐLÑLÔLÑLÔLÐLÐLÐLÝ
€CØˆˆ\ˆ\ˆ\Øˆ\ˆ\Øˆ\ˆ\ðñ 	ô 	€Aõ ÐLÐLÐLÐLÐLÐ.C×.IÒ.IÑ.KÔ.KÐLÑLÔLÑLÔLÐLÐLÐLÐLÐLrm   c                  ó˜  — t          ddt          dz  t          z  dt          dz  z  t          t          z  z   g¦  «        } t          t          g}|                      |¦  «        t          dt          z  t          z  t          dz  gt          dt          z  t          z   gg¦  «        k    sJ ‚t          ddt          t          dz  t          dz  z  g¦  «        } |                      |¦  «        t          ddgdt          z  t          dz  z  t          dz  dz  t          dz  z  gg¦  «        k    sJ ‚t          dz  t          z  }t          t          g}t	          ||¦  «        t          dt          z  dt          z  gdt          z  dgg¦  «        k    sJ ‚t          dz  t          dz  z  }t	          ||¦  «        t          dt          dz  z  dt          z  t          dz  z  gdt          z  t          dz  z  dt          dz  z  t          z  gg¦  «        k    sJ ‚t
          t          t          dz  z  z   }t          dz  dt          dz  z  z   }t          ddt          z  gdt          z  dt          z  gg¦  «        }|t	          |t          t          t          g¦  «        ¦  «        k    sJ ‚|t	          |t          t          t          g¦  «        j        ¦  «        k    sJ ‚t	          |t          t          f|g¦  «        t          ddt          dz  z  dt          z  gdt          dz  z  dt          z  dt          z  gdt          z  dt          z  dgg¦  «        k    sJ ‚d S )Nr¡   r„   r¦   rƒ   r   r§   )r1   r^   r_   Újacobianr6   r`   r¨  )ÚLÚsymsÚfÚgÚanss        rn   Útest_jacobian_hessianr  ê  sá  € Ýˆq�!•a˜‘d�1‘f˜a¥ 1¡™f¥q­¡s™lÐ+Ñ,Ô,€AÝ�qˆ6€DØ�:Š:�dÑÔ�v¨­!©­A©­q°!©t }µq¸!½A¹#Å¹'°lÐ&CÑDÔDÒDÐDÐDÐDåˆq�!•a�˜A™�a ™d™�^Ñ$Ô$€AØ�:Š:�dÑÔ�v¨¨1 v°µ!±µA°q±D±½!¸Q¹$¸q¹&ÅÀAÁ¹+Ð/FÐ&GÑHÔHÒHÐHÐHÐHå	ˆ1‰�Q‰€AÝ�qˆ6€DÝ�1�dÑÔ�v¨­!©¨Q­q©S z°Aµa±C¸°8Ð&<Ñ=Ô=Ò=Ð=Ð=Ð=å	ˆ1‰�Q�‰T‰	€AÝ�1�dÑÔÝ�•1�a‘4‘˜�1™�Q ™T™Ð" Q¥q¡S­¨A©¡X¨qµ°A±©vµa©xÐ$8Ð9Ñ:Ô:ò;ð ;ð ;ð ;õ 	
�A�a�‰d‰F‰
€AÝ	ˆ1‰ˆq•�A‘‰v‰€AÝ
�1˜�!™�*Ø•Q‘3˜�!™�*ðñ ô €Cà•'˜!�V¥Q­ F™^œ^Ñ,Ô,Ò,Ð,Ð,Ð,Ø•'˜!�V¥Q­ F™^œ^Ô-Ñ.Ô.Ò.Ð.Ð.Ð.Ý�1•q�!�f˜q˜cÑ"Ô"¥fØ�•1�a‘4‘˜�1™ÐØ	
�1ˆa‰4‰�A•a‘C˜�1™ÐØ�a‰C�A•a‘C˜1Ðð.ñ ' ô ' ò  ð  ð  ð  ð  ð  rm   c                  óü  — t          t          t          ¦  «        t          t          ¦  «        gt          ¦  «        t          t          ¦  «        dz  t          t          ¦  «        dz  z   k    sJ ‚t          t	          t          ¦  «        t	          dt          z  ¦  «        gt          ¦  «        t	          dt          z  ¦  «        k    sJ ‚t          t	          t          ¦  «        t          gt          ¦  «        t	          t          ¦  «        t          t	          t          ¦  «        z  z
  k    sJ ‚t          dt          t          dz  gt          ¦  «        dk    sJ ‚dt	          t          ¦  «        z  t          t          ¦  «        z  t          z  dt          t          ¦  «        z  t	          t          ¦  «        z  t          dz  z  z   dt	          t          ¦  «        z  t          t          ¦  «        z  t          z  z
  t	          t          ¦  «        t          t          ¦  «        z  t          dz  z  z
  t	          t          ¦  «        t          t          ¦  «        z  t          dz  z  z   } t          t	          t          ¦  «        t          t          ¦  «        t          dz  gt          ¦  «                             ¦   «         | k    sJ ‚t          t	          t          ¦  «        t          t          ¦  «        t          dz  gt          d¬¦  «                             ¦   «         | k    sJ ‚t          dz   t          t          ¦  «        dz  z  t          dz  t          t          ¦  «        dz  z  z
  dt          z  t          t          ¦  «        dz  z  z
  dt          z  t          t          ¦  «        dz  z  z
  }t          t          t          ¦  «        t          t          ¦  «        t          dz  gt          ¦  «                             ¦   «         |k    sJ ‚t          t          t          ¦  «        t          t          ¦  «        t          dz  gt          d¬¦  «                             ¦   «         |k    sJ ‚t          g t          ¦  «        dk    sJ ‚d S )Nr„   rƒ   r¡   r&  r§   r:  rv  )r=   r   r^   r   r   r   )Úw1Úw2s     rn   Útest_wronskianr     s  € Ý•c�!‘f”f�c¥!™fœfÐ%¥qÑ)Ô)­Sµ©V¬V°Q©Y½½Q¹¼À¹Ñ-BÒBÐBÐBÐBÝ•c�!‘f”f�c !¥A¡#™hœhÐ'­Ñ+Ô+­s°1µQ±3©x¬xÒ7Ð7Ð7Ð7Ý•c�!‘f”f�a�[¥!Ñ$Ô$­­A©¬µµ3µq±6´6±Ñ(9Ò9Ð9Ð9Ð9Ý�a��A˜q™D�\¥1Ñ%Ô%¨Ò*Ð*Ð*Ð*Ø	�C•‰FŒF‰•3•q‘6”6Ñ	�!Ñ	˜a¥¥A¡¤™h¥s­1¡v¤v™o­a°©dÑ2Ñ	2°Qµs½1±v´v±X½cÅ!¹f¼f±_ÅQÑ5FÑ	FÝ�A‰Œ�s•1‰vŒv‰•a˜‘dÑñ
Ý ¥™VœV¥C­¡F¤F™]­1¨a©4Ñ/ñ
0€Bå•c�!‘f”f�c¥!™fœf¥a¨¡dÐ+­QÑ/Ô/×6Ò6Ñ8Ô8¸BÒ>Ð>Ð>Ð>Ý•c�!‘f”f�c¥!™fœf¥a¨¡dÐ+­Q°{ÐCÑCÔC×JÒJÑLÔLØòð ð ð å
ˆQ‰$ˆ�s•1‰vŒv�q‰y‰�1˜a™4¥¥A¡¤¨¡	™>Ñ	)¨A­a©CµµA±´¸±	©MÑ	9¸A½a¹CÅÅAÁÄÈÁ	¹MÑ	I€BÝ•c�!‘f”f�c¥!™fœf¥a¨¡dÐ+­QÑ/Ô/×6Ò6Ñ8Ô8¸BÒ>Ð>Ð>Ð>Ý•c�!‘f”f�c¥!™fœf¥a¨¡dÐ+­Q°{ÐCÑCÔC×JÒJÑLÔLØòð ð ð å�R�ÑÔ˜qÒ Ð Ð Ð Ð Ð rm   c                  ó|  — t          dt          gt          dgg¦  «                             t          d¦  «        t          ddgddgg¦  «        k    sJ ‚t          t          dgt          t          z   dgg¦  «                             t          dgt          dgg¦  «        t          ddgddgg¦  «        k    sJ ‚t          t          dgt          t          z   dgg¦  «                             t          dft          dfg¦  «        t          ddgddgg¦  «        k    sJ ‚t          t          dgt          t          z   dgg¦  «                             t          dt          di¦  «        t          ddgddgg¦  «        k    sJ ‚t          t          t          z  g¦  «                             t          t          dz
  t          t          dz
  id¬	¦  «        t          t          dz
  t          dz
  z  g¦  «        k    sJ ‚t          D ]D} t          dd
gd
dgg¦  «        |                      d¦  «                             dd¦  «        k    sJ ‚ŒEd S )Nr¡   r¦   r¹   r„   rä   r  r¬   T)Úsimultaneousr   )r1   r^   r  r_   r‹   r5   ©r•   s    rn   Ú	test_subsr$    s2  € Ý�A•q�6�A˜q˜6Ð"Ñ#Ô#×(Ò(­¨AÑ.Ô.µ&¸1¸a¸&À1ÀaÀ&Ð9IÑ2JÔ2JÒJÐJÐJÐJÝ•A�q�6�A¥™E 1˜:Ð&Ñ'Ô'×,Ò,­q°"¨g½¸2°wÐ-?Ñ@Ô@Ý��Q�˜"˜a˜Ð!Ñ"Ô"ò#ð #ð #ð #å•A�q�6�A¥™E 1˜:Ð&Ñ'Ô'×,Ò,­q°"¨g½¸2°wÐ-?Ñ@Ô@Ý��Q�˜"˜a˜Ð!Ñ"Ô"ò#ð #ð #ð #å•A�q�6�A¥™E 1˜:Ð&Ñ'Ô'×,Ò,­a°µQ¸¨^Ñ<Ô<Ý��Q�˜"˜a˜Ð!Ñ"Ô"ò#ð #ð #ð #å•1•Q‘3�%‰=Œ=×Ò�q¥! a¡%­­A°©EÐ2ÀÐÑFÔFÝ•�Q‘�˜Q™‘Ð Ñ!Ô!ò"ð "ð "ð "õ ð Að AˆÝ˜˜1�v  1˜vÐ&Ñ'Ô'¨3¯7ª7°1©:¬:¯?ª?¸1¸aÑ+@Ô+@Ò@Ð@Ð@Ð@Ð@ðAð Arm   c                  ó  — t          dt          gt          dgg¦  «                             t          di¦  «        t          ddgddgg¦  «        k    sJ ‚t          t          dgt          t          z   dgg¦  «                             t          dt          di¦  «        t          ddgddgg¦  «        k    sJ ‚t          D ]E} t          ddgddgg¦  «        |                      d¦  «                             ddi¦  «        k    sJ ‚ŒFd S )	Nr¡   r¦   r¹   r„   rä   r  r¬   r   )r1   r^   Úxreplacer_   r‹   r5   r#  s    rn   Útest_xreplacer'  %  s  € Ý�A•q�6�A˜q˜6Ð"Ñ#Ô#×,Ò,­a°¨VÑ4Ô4Ý��A�˜˜A˜ÐÑ Ô ò!ð !ð !ð !å•A�q�6�A¥™E 1˜:Ð&Ñ'Ô'×0Ò0µ!°R½¸B°Ñ@Ô@Ý��Q�˜"˜a˜Ð!Ñ"Ô"ò#ð #ð #ð #åð Gð GˆÝ˜˜1�v  1˜vÐ&Ñ'Ô'¨3¯7ª7°1©:¬:×+>Ò+>ÀÀ1¸vÑ+FÔ+FÒFÐFÐFÐFÐFðGð Grm   c                  óÀ  — t          d¦  «        } t          d¦  «        }t          dt          z  dt          z  z   t          t          t          z  z   t          z  g |t          ¦  «        t           |t          ¦  «        z  z    |t          ¦  «        z  dd| z  t          | t          z  ¦  «        | z  z
  z  t          z  gg¦  «        }|                     ¦   «          |t          t          t          z   t          t          z  z  dt          z   gdt          z   dddt          t          | z  ¦  «        z  z
  t          | z  z  z  gg¦  «        k    sJ ‚dt          z   dz  }t          |gg¦  «        }|                     ¦   «          |t          |gg¦  «        k    sJ ‚|                     t          ¬¦  «         |t          |                     t          ¬¦  «        gg¦  «        k    sJ ‚d S )Nr|   r  r¡   r„   )Úratio)	r   r   r1   r^   r_   r   r   r%   r   )r|   r  rÄ   Úeqs       rn   Útest_simplifyr+  -  s¦  € Ýˆs‰Œ€AÝ�‰Œ€Aå˜Q�q™S 1¥Q¡3™Y½½Q½q¹S¹ÅA¹ÐHØ�1•Q‘4”4�!˜A˜A�a™DœD™&‘= ! !¥A¡$¤$Ñ&¨¨Q¨q©Sµ3°q½2±v±;´;¸q±=Ñ-@Ñ(AÅBÑ(FÐHðJñ 	Kô 	K€Aà‡J‚J�L„L€LØ•�1�q™5¥1¥q¡5™/À!ÅaÁ%ÐIØ$%­¡E¨1¨q°1µS½¸A¹±Y´Y±;©ÅÀAÁÑ.FÑ+GÐIðKñ Lô Lò Lð Lð Lð Là
�a‰%�!‰€BÝ��ˆv‰Œ€AØ‡J‚J�L„L€LØ•˜˜�v‘”ÒÐÐÐØ‡J‚J•R€JÑÔÐØ•˜Ÿš­2˜Ñ.Ô.Ð/Ð0Ñ1Ô1Ò1Ð1Ð1Ð1Ð1Ð1rm   c                  ó  — t          g d¢g d¢g¦  «        } | j        t          ddgddgddgddgddgddgddgd	d	gd
d
gddgg
¦  «        k    sJ ‚| j        j        | k    sJ ‚| j        |                      ¦   «         k    sJ ‚d S )N)
r¡   r„   rƒ   r¦   r¹   r§   rº   r½   r·   r   r¡   r„   rƒ   r¦   r¹   r§   rº   r½   r·   r   )r1   r¨  Ú	transposer  s    rn   Útest_transposer.  >  sË   € ÝÐ.Ð.Ð.Ø.Ð.Ð.ð0ñ 	1ô 	1€AàŒ3•&˜Q ˜FØ ˜FØ ˜FØ ˜FØ ˜FØ ˜FØ ˜FØ ˜FØ ˜FØ ˜Fð	%ñ 	&ô 	&ò 	&ð 	&ð 	&ð 	&ð Œ3Œ5�AŠ:ˆ:ˆ:ˆ:ØŒ3�!—+’+‘-”-ÒÐÐÐÐÐrm   c                  ó˜  — t          dt          dgg d¢g¦  «        } | j        t          ddgt          dgddgg¦  «        k    sJ ‚| j        t          dt           dgg d¢g¦  «        k    sJ ‚| j        |                      ¦   «         k    sJ ‚| j        | j        j        k    sJ ‚| j        t          ddgt           dgddgg¦  «        k    sJ ‚d S )Nr   r¹   )r¡   r„   r   r¡   r„   )r1   r
   r¨  ÚCÚ	conjugateÚHr  s    rn   Útest_conjugater3  O  s  € Ý�•A�q�	Ø�	�	ðñ 	ô 	€Að Œ3•&˜1˜a˜&Ý˜a˜&Ø˜a˜&ð"ñ #ô #ò #ð #ð #ð #ð Œ3•&˜1�q˜b !˜*Ø$˜*˜*ð&ñ 'ô 'ò 'ð 'ð 'ð 'àŒ3�!—+’+‘-”-ÒÐÐÐàŒ3�!”#”%Š<ˆ<ˆ<ˆ<ØŒ3•&˜A˜q˜'Ý˜2˜q˜'Ø˜q˜'ð#ñ $ô $ò $ð $ð $ð $ð $ð $rm   c            
      óN  — t          t          d„ ¦  «         t          dt          t          t          gddt          t          gdddt          gg d¢g¦  «        } | j        t          g d¢t           dddgt           t           ddgt           t           t          dgg¦  «        k    sJ ‚d S )Nc                  ó*   — t          d¦  «        j        S r×  )r5   ÚDrl   rm   rn   ry   z!test_conj_dirac.<locals>.<lambda>b  s   € ¥3 q¡6¤6¤8€ rm   r¡   r   rp  rÎ  rä   )rN   ÚAttributeErrorr1   r
   r6  r  s    rn   Útest_conj_diracr8  a  s¾   € Ý
�>Ð+Ð+Ñ,Ô,Ð,å�•A•q�!�Ø�A•q�!�Ø�A�q�!�Ø��ðñ 	ô 	€Að
 Œ3•&Ð*Ð*Ð*Ý˜2  A¨Ð*Ý˜2¥˜r 2¨Ð*Ý˜2¥˜r¥A rÐ*ð,ñ -ô -ò -ð -ð -ð -ð -ð -rm   c                  ój   — t          g d¢g d¢g d¢g¦  «        } |                      ¦   «         dk    sJ ‚d S )N©r¡   r   r   ©r   r¹   r   )r   r   r½   rÅ  ©r1   Útracer  s    rn   Ú
test_tracer>  o  sE   € Ý�	�	�	Ø�	�	Ø�	�	ðñ 	ô 	€Að �7Š7‰9Œ9˜Š?ˆ?ˆ?ˆ?ˆ?ˆ?rm   c                  ób   — t          t          ddgdt          dgg¦  «        } | j        dk    sJ ‚d S )Nr   r¿  )r1   r^   r_   rŒ   r  s    rn   Ú
test_shaper@  v  s@   € Ý•�A�q�	Ø•A�q�	ðñ 	ô 	€AàŒ7�fÒÐÐÐÐÐrm   c                  ót  — t          t          ddgdt          dgg¦  «        } |                      dd„ ¦  «         | t          t          ddgdt          dz   dgg¦  «        k    sJ ‚|                      dd„ ¦  «         | t          t          dz   ddgdt          z   t          dz   dgg¦  «        k    sJ ‚|                      d¦  «        t          t          dz   ddgg¦  «        k    sJ ‚|                      d¦  «        }d|d<   | d         t          dz   k    sJ ‚| dd d	…f         }d|d<   | d         t          dz   k    sJ ‚|                      d¦  «        }|t          t          dz   dt          z   g¦  «        k    sJ ‚d|d<   | d         t          dz   k    sJ ‚| d d …df         }d|d<   | d         t          dz   k    sJ ‚d S )
Nr   r¡   c                 ó   — | |z   dz   S ©Nr¡   rl   )Úrrx   s     rn   ry   z!test_col_row_op.<locals>.<lambda>  s   € ˜Q ™U Q™Y€ rm   r„   rƒ   c                 ó   — | t           |z  z   S rt   )r_   )r\   rx   s     rn   ry   z!test_col_row_op.<locals>.<lambda>ƒ  s   € ˜Q¥ A¡™X€ rm   é*   r¼   rä   )r1   r^   r_   Úrow_opÚcol_opÚrowÚcol)rÄ   Úr1Úc1s      rn   Útest_col_row_oprM  |  s  € Ý•�A�q�	Ø•A�q�	ðñ 	ô 	€Aà‡H‚HˆQÐ&Ð&Ñ'Ô'Ð'Ø•�  1˜Ø�A ™E 1˜ð'ñ (ô (ò (ð (ð (ð (ð ‡H‚HˆQÐ%Ð%Ñ&Ô&Ð&Ø•�˜Q™ A qÐ)Ø�Q™¥ A¡ qÐ)ð+ñ ,ô ,ò ,ð ,ð ,ð ,ð
 �5Š5�‰8Œ8•v¥ A¡ q¨!˜}˜oÑ.Ô.Ò.Ð.Ð.Ð.Ø	
�Šˆq‰Œ€BØ€B€q�EØˆTŒ7•a˜!‘eÒÐÐÐØ	
ˆ1ˆcˆrˆcˆ6Œ€BØ€B€q�EØˆTŒ7•a˜!‘eÒÐÐÐØ	
�Šˆq‰Œ€BØ•�˜Q™ ¥A¡˜Ñ'Ô'Ò'Ð'Ð'Ð'Ø€B€q�EØˆTŒ7•a˜!‘eÒÐÐÐØ	
ˆ1ˆ1ˆ1ˆaˆ4Œ€BØ€B€q�EØˆTŒ7•a˜!‘eÒÐÐÐÐÐrm   c                  ó°   — t          g d¢g d¢g¦  «        } |                      dd¦  «         | d         dk    sJ ‚| d         dk    sJ ‚| d         d	k    sJ ‚d S )
Nr¥   ©r¦   r¹   r§   r¡   rƒ   rÈ   rÜ   r¼   r°   rÊ   )r1   Úrow_multr  s    rn   Útest_row_multrQ  ™  sk   € Ý���Øˆwˆwðñ 	ô 	€Aà‡J‚Jˆq��O„O€OØˆSŒ6�RŠ<ˆ<ˆ<ˆ<ØˆSŒ6�QŠ;ˆ;ˆ;ˆ;ØˆSŒ6�RŠ<ˆ<ˆ<ˆ<ˆ<ˆ<rm   c                  ó¸   — t          g d¢g d¢g d¢g¦  «        } |                      ddd¦  «         | d         dk    sJ ‚| d	         d
k    sJ ‚| d         dk    sJ ‚d S )Nr¥   rO  ©r¡   r¡   r¡   r„   r   r¹   r¼   r§   rÈ   r¦   ©r   r„   r½   )r1   Úrow_addr  s    rn   Útest_row_addrV  ¢  sy   € Ý���ØˆwˆwØˆwˆwðñ 	ô 	€Að ‡I‚Iˆa��!ÑÔÐØˆSŒ6�QŠ;ˆ;ˆ;ˆ;ØˆSŒ6�QŠ;ˆ;ˆ;ˆ;ØˆSŒ6�QŠ;ˆ;ˆ;ˆ;ˆ;ˆ;rm   c                  óZ  — t           d d…         D ]š} |                      d¦  «        }|                     ddd„ ¦  «         | | g d¢g d¢g d¢g¦  «        k    sJ ‚|                      d¦  «        dz  }d	|d
<   |                     ddd„ ¦  «         | | | g d¢g d¢g d¢g¦  «        k    sJ ‚Œ›d S )Nr„   rƒ   r¡   r   c                 ó   — | d|z  z   S rå  rl   ©r¢   Úus     rn   ry   z!test_zip_row_op.<locals>.<lambda>¯  ó   € ¨¨A¨a©C©€ rm   r:  ©r„   r¡   r   rì   rä   r¾   c                 ó   — | d|z  z   S rå  rl   rY  s     rn   ry   z!test_zip_row_op.<locals>.<lambda>¶  r[  rm   )r„   rä   r   )r¦   r   r   r	  )r‹   r5   Ú
zip_row_op)r•   rÄ   s     rn   Útest_zip_row_opr_  ¬  s	  € Ý�r˜�rŒ{ð &ð &ˆØ�GŠG�A‰JŒJˆØ	�Š�Q˜Ð/Ð/Ñ0Ô0Ð0Ø�C�C˜˜˜Ø"˜˜Ø"˜˜ð$ñ %ô %ò %ð %ð %ð %ð �GŠG�A‰JŒJ�q‰LˆØˆˆ$‰Ø	�Š�Q˜Ð/Ð/Ñ0Ô0Ð0°!°!Ø�C�C˜˜˜Ø#˜˜Ø#˜˜ð%ñ &ô &ò &ð &ð &ð &ð &ð&ð &rm   c                  ó´   — t          g d¢¦  «        } t          g d¢¦  «        }t          g d¢¦  «        }| dvsJ ‚| dvsJ ‚| dk    sJ ‚| |k    sJ ‚| |k    sJ ‚d S )Nr¥   )r„   r„   rƒ   rl   )r¡   r¡   rÙ   )r–   rZ   r[   s      rn   Útest_issue_3950ra  »  sz   € ÝˆyˆyˆyÑÔ€AÝˆyˆyˆyÑÔ€AÝˆyˆyˆyÑÔ€AØ�R����Ø�S����Ø�Š6ˆ6ˆ6ˆ6Ø�Š6ˆ6ˆ6ˆ6Ø�Š6ˆ6ˆ6ˆ6ˆ6ˆ6rm   c                  óÎ  —  G d„ d¦  «        }  G d„ d¦  «        } | ¦   «         } |¦   «         }t          g d¢¦  «        }||         dk    sJ ‚d||<   |d         dk    sJ ‚t          g d¢g d	¢g¦  «        }|||f         d
k    sJ ‚|d|f         d
k    sJ ‚||df         d
k    sJ ‚d|||f<   |d         dk    sJ ‚d
|d|f<   |d         d
k    sJ ‚d||df<   |d         dk    sJ ‚d S )Nc                   ó   — e Zd Zd„ ZdS )útest_issue_3981.<locals>.Index1c                 ó   — dS rC  rl   ©Úselfs    rn   Ú	__index__z)test_issue_3981.<locals>.Index1.__index__È  ó   € Ø�1rm   N©ri   rj   rk   rh  rl   rm   rn   ÚIndex1rd  Ç  ó#   € € € € € ð	ð 	ð 	ð 	ð 	rm   rk  c                   ó   — e Zd Zd„ ZdS )útest_issue_3981.<locals>.Index2c                 ó   — dS rå  rl   rf  s    rn   rh  z)test_issue_3981.<locals>.Index2.__index__Ì  ri  rm   Nrj  rl   rm   rn   ÚIndex2rn  Ë  rl  rm   rp  r¥   rƒ   r¹   r„   rO  r§   r¡   r¦   r°   r½   rÙ   )rk  rp  Úindex1Úindex2r–   s        rn   Útest_issue_3981rs  Æ  sk  € ðð ð ð ð ñ ô ð ðð ð ð ð ñ ô ð ð ˆV‰XŒX€FØˆV‰XŒX€FåˆyˆyˆyÑÔ€AàˆVŒ9˜Š>ˆ>ˆ>ˆ>à€A€f�IØˆQŒ4�1Š9ˆ9ˆ9ˆ9å�	�	�	˜9˜9˜9Ð%Ñ&Ô&€AØˆV�Vˆ^Ô Ò!Ð!Ð!Ð!ØˆQ�ˆYŒ<˜1ÒÐÐÐØˆV�QˆYŒ<˜1ÒÐÐÐà€A€fˆf€nÑØˆTŒ7�aŠ<ˆ<ˆ<ˆ<Ø€A€aˆ€i�LØˆTŒ7�aŠ<ˆ<ˆ<ˆ<Ø€A€fˆa€i�LØˆTŒ7�aŠ<ˆ<ˆ<ˆ<ˆ<ˆ<rm   c                  ó@  ‡ — t          t          d¦  «        dg¦  «        Š t          ˆ fd„t          d¦  «        D ¦   «         ¦  «        sJ ‚t          ˆ fd„t          d¦  «        D ¦   «         ¦  «        sJ ‚t          ˆ fd„t          d¦  «        D ¦   «         ¦  «        sJ ‚d S )Nr¹   r§   c              3   óz   •K  — | ]5} ‰j         ¦   «         |         ‰|                               ¦   «         k    V — Œ6d S rt   ©Úevalf©rˆ   rw   rZ   s     €rn   r‰   ztest_evalf.<locals>.<genexpr>ç  s@   øè è € Ð>Ð>°ˆwˆqŒw‰yŒy˜Œ|˜q œtŸzšz™|œ|Ò+Ð>Ð>Ð>Ð>Ð>Ð>rm   r„   c              3   ó~   •K  — | ]7} ‰j         d ¦  «        |         ‰|                               d ¦  «        k    V — Œ8dS ©r„   Nrv  rx  s     €rn   r‰   ztest_evalf.<locals>.<genexpr>è  sD   øè è € Ð@Ð@°!ˆwˆqŒw�q‰zŒz˜!Œ}  !¤§
¢
¨1¡¤Ò-Ð@Ð@Ð@Ð@Ð@Ð@rm   c              3   ó~   •K  — | ]7} ‰j         d ¦  «        |         ‰|                               d ¦  «        k    V — Œ8dS rz  r{   rx  s     €rn   r‰   ztest_evalf.<locals>.<genexpr>é  sD   øè è € Ð8Ð8¨!ˆsˆqŒs�1‰vŒv�aŒy˜A˜aœDŸFšF 1™IœIÒ%Ð8Ð8Ð8Ð8Ð8Ð8rm   )r1   r   r�   rÂ   ©rZ   s   @rn   Ú
test_evalfr}  å  s­   ø€ Ý•�Q‘”˜ˆ|ÑÔ€AÝÐ>Ð>Ð>Ð>µU¸1±X´XÐ>Ñ>Ô>Ñ>Ô>Ð>Ð>Ð>ÝÐ@Ð@Ð@Ð@µu¸Q±x´xÐ@Ñ@Ô@Ñ@Ô@Ð@Ð@Ð@ÝÐ8Ð8Ð8Ð8­u°Q©x¬xÐ8Ñ8Ô8Ñ8Ô8Ð8Ð8Ð8Ð8Ð8rm   c                  óv  — t          t          t          gt          t          gg¦  «        }  | j        ¦   «         du sJ ‚t          g d¢g d¢g¦  «        }  | j        ¦   «         du sJ ‚t          g d¢ddt          dgg¦  «        }  | j        ¦   «         du sJ ‚t          dt          d	gg¦  «        }  | j        ¦   «         du sJ ‚t          g d
¢g¦  «        }  | j        ¦   «         du sJ ‚t          dgt          gd	gg¦  «        }  | j        ¦   «         du sJ ‚t          dgdgd	gg¦  «        }  | j        ¦   «         du sJ ‚d S )NTrÍ  rÐ  Fr¹   r§   r½   r¡   rƒ   r¥   r„   )r1   r^   Úis_symbolicr|  s    rn   Útest_is_symbolicr€  ì  sc  € Ý••A���A˜ÐÑ Ô €AØˆ1Œ=‰?Œ?˜dÐ"Ð"Ð"Ð"Ý���˜l˜l˜lÐ+Ñ,Ô,€AØˆ1Œ=‰?Œ?˜eÐ#Ð#Ð#Ð#Ý���˜q !¥Q¨˜lÐ+Ñ,Ô,€AØˆ1Œ=‰?Œ?˜dÐ"Ð"Ð"Ð"Ý�•A�q�	ˆ{ÑÔ€AØˆ1Œ=‰?Œ?˜dÐ"Ð"Ð"Ð"Ý�	�	�	ˆ{ÑÔ€AØˆ1Œ=‰?Œ?˜eÐ#Ð#Ð#Ð#Ý��•a�S˜1˜#ˆÑÔ€AØˆ1Œ=‰?Œ?˜dÐ"Ð"Ð"Ð"Ý���a�S˜1˜#ˆÑÔ€AØˆ1Œ=‰?Œ?˜eÐ#Ð#Ð#Ð#Ð#Ð#rm   c                  ó¶   — t          g d¢g¦  «        } | j        du sJ ‚t          dgdgdgg¦  «        } | j        du sJ ‚t          dd¦  «        } | j        du sJ ‚d S )Nr¥   Tr¡   r„   rƒ   Fr¦   )r1   Úis_upperr>   r|  s    rn   Útest_is_upperrƒ  ý  sz   € Ý�	�	�	ˆ{ÑÔ€AØŒ:˜ÐÐÐÐÝ���a�S˜1˜#ˆÑÔ€AØŒ:˜ÐÐÐÐÝˆa�‰Œ€AØŒ:˜ÐÐÐÐÐÐrm   c                  ó€   — t          g d¢g¦  «        } | j        du sJ ‚t          dgdgdgg¦  «        } | j        du sJ ‚d S )Nr¥   Fr¡   r„   rƒ   T)r1   Úis_lowerr|  s    rn   Útest_is_lowerr†    sZ   € Ý�	�	�	ˆ{ÑÔ€AØŒ:˜ÐÐÐÐÝ���a�S˜1˜#ˆÑÔ€AØŒ:˜ÐÐÐÐÐÐrm   c                  óÚ   — t          ddg d¢¦  «        }  | j        ¦   «         sJ ‚t          ddgddgg¦  «        }  | j        ¦   «         rJ ‚t          g ¦  «        }  | j        ¦   «         sJ ‚d S )Nr¦   )r   r„   r¡   r§   r   r   r¡   r„   r   r   r   rƒ   r   r   r   r   r¡   r   ©r1   ri  r|  s    rn   Útest_is_nilpotentr‰    s‡   € Ýˆq�!ÐEÐEÐEÑFÔF€AØˆ1Œ>ÑÔÐÐÐÝ��A�˜˜A˜ÐÑ Ô €AØˆqŒ~ÑÔÐÐÐÝˆr‰
Œ
€AØˆ1Œ>ÑÔÐÐÐÐÐrm   c                  ó¤  — d\  } }t          | |¦  «        } |j        d¦  «         dt          | |¦  «        z  }||k    sJ ‚|j        |j        cxk    rdk    sn J ‚|j        |j        cxk    rdk    sn J ‚|j        |j        cxk    rdk    sn J ‚t          d¦  «        t          dd¦  «        k    sJ ‚t          d¦  «        t          dd¦  «        k    sJ ‚t          dd¦  «        t          dddgdz  ¦  «        k    sJ ‚t          dd¦  «        t          dddgdz  ¦  «        k    sJ ‚ |j        d¦  «         |t          | |¦  «        k    sJ ‚d S )N)rƒ   r¹   r¹   rƒ   r„   r   r§   r¡   )r>   Úfillr8   rŽ   r�   rŒ   r1   )r|   r–   rZ   r[   s       rn   Útest_zeros_ones_fillrŒ    s‚  € Ø�D€A€qåˆa�‰Œ€AØ
€A„FˆA�K„K€Kà	�D��A‰JŒJ‰€Aà�Š6ˆ6ˆ6ˆ6ØŒ6�Q”VÐ Ð Ò Ð ˜qÒ Ð Ð Ð Ð Ð ØŒ6�Q”VÐ Ð Ò Ð ˜qÒ Ð Ð Ð Ð Ð ØŒ7�a”gÐ'Ð'Ò'Ð' Ò'Ð'Ð'Ð'Ð'Ð'Ý�‰8Œ8•u˜Q ‘{”{Ò"Ð"Ð"Ð"Ý�‰7Œ7•d˜1˜a‘j”jÒ Ð Ð Ð Ý��A‰;Œ;�&  A¨ s¨1¡uÑ-Ô-Ò-Ð-Ð-Ð-Ý��1‰:Œ:�  1 q c¨!¡eÑ,Ô,Ò,Ð,Ð,Ð,à
€A„Fˆ1�I„I€IØ•�a˜‘”ÒÐÐÐÐÐrm   c                  óô   — t          d¦  «        } | t          ¦   «         k    sJ ‚t          dd¦  «        } | j        dk    sJ ‚| j        dk    sJ ‚t          dd¦  «        } | j        dk    sJ ‚| j        dk    sJ ‚d S )Nr   r„   )r>   r1   rŽ   r�   r|  s    rn   Útest_empty_zerosrŽ  +  sx   € Ýˆa‰Œ€AØ•‘”Š=ˆ=ˆ=ˆ=Ýˆa�‰Œ€AØŒ6�QŠ;ˆ;ˆ;ˆ;ØŒ6�QŠ;ˆ;ˆ;ˆ;Ýˆa�‰Œ€AØŒ6�QŠ;ˆ;ˆ;ˆ;ØŒ6�QŠ;ˆ;ˆ;ˆ;ˆ;ˆ;rm   c                  óâ  — t          t          dz  t          t          z  gt          t          t          ¦  «        z  t          t	          t          ¦  «        z  gg¦  «        }  | j        t          ¦  «        t          dt          z  t          gt          t          ¦  «        t	          t          ¦  «        gg¦  «        k    sJ ‚t          t          t           t          dz  gt          t          ¦  «        dt          z  t          t           ¦  «        z
  t          dt          z  z   gg¦  «                             t          t          ¦  «        t          t          t           t          gt          dt          gg¦  «        k    sJ ‚t          t          t          ¦  «        dz
  t          z  dt          z  t          t          z  z   t          t          z  gdt          z  t          t          ¦  «        t          t          t          dz   ¦  «        ¦  «        gg¦  «                             t          d¦  «        t          g d¢t          dt          d¦  «        gg¦  «        k    sJ ‚ | j
        t          ¦  «        t          t          dd¦  «        t          dz  z  t          t          dz  z  dz  gt          dz  t          t          ¦  «        z  dz  t          dz  t	          t          ¦  «        z  dz  gg¦  «        k    sJ ‚d S )Nr„   r¡   r   )r¡   r   r¡   rƒ   )r1   r^   r_   r   r   r   r   Úlimitr   r­   r   r   r|  s    rn   Útest_issue_3749r‘  6  s2  € Ý•�A‘•q�‘s��a¥¥A¡¤™h­­#­a©&¬&©Ð1Ð2Ñ3Ô3€AØˆ1Œ6•!‰9Œ9� ¥1¡¥a ­3­q©6¬6µ3µq±6´6Ð*:Ð;Ñ<Ô<Ò<Ð<Ð<Ð<ÝÝ	
�QˆB•�1‘ˆÝ	�Q‰Œ�•1‘•s�A˜2‘w”w‘¥ A¥a¡C¡Ð(ð*ñ +ô +ç+0ª5µµB©<¬<Ý••b�S�"�¥ A¥r˜{Ð+Ñ,Ô,ò-ð -ð -ð -õ Ý
�a‰&Œ&�1‰*•a‰˜�1™�q¥™s™¥A¥q¡DÐ*Ø	
�1‰�c•!‰fŒf•c�#�a !™e™*œ*‘o”oÐ&ð(ñ )ô )ç).ª­q°!©¬Ý�	�	�	�B ¥3 q¡6¤6˜?Ð+Ñ,Ô,ò-ð -ð -ð -ð ˆ1Œ;•q‰>Œ>�VÝ	�!�Q‰Œ�˜1™Ñ	�a¥ 1¡™f Q™hÐ'Ý	
ˆA‰�c•!‰fŒf‰�Q‰�˜1™�S¥™VœV™ A™Ð&ð%(ñ )ô )ò )ð )ð )ð )ð )ð )rm   c                  ó¾   — t          d¦  «        } |                      dd¦  «         dD ]4}|                      |d„ ¬¦  «        |                      d¬¦  «        k    sJ ‚Œ5d S )	Nr¦   r   r¡   )ru  r~  c                 ó   — | dk    S r€   rl   r/  s    rn   ry   z%test_inv_iszerofunc.<locals>.<lambda>J  s
   € ¸¸aº€ rm   )rw  Ú
iszerofuncr�  rv  )r5   Úcol_swapr  )rò   rw  s     rn   Útest_inv_iszerofuncr–  F  s{   € ÝˆA‰Œ€AØ‡J‚Jˆq�!ÑÔÐØð  ð  ˆØ�uŠu˜FÐ/?Ð/?ˆuÑ@Ô@Ø�EŠE˜ˆEÑÔò ð  ð  ð  ð  ð ð  rm   c                  ó\  — t          d¦  «        \  } }t          | t          |¦  «        z  | t          |¦  «        z  g¦  «        }t          | |g¦  «        }|                     |¦  «        }||                     |j        ¦  «        k    sJ ‚||j                             |¦  «        k    sJ ‚||j                             |j        ¦  «        k    sJ ‚|j        t          |j        d         ¦  «        z  |z  }|                     t          ¦  «        }|t          ddgd| dz  gg¦  «        k    sJ ‚d S )Núrho,phir   r¡   r„   )
r   r1   r   r   r  r¨  r5   rŒ   rç  r&   )ÚrhoÚphiÚXÚYr  r  s         rn   Útest_jacobian_metricsr�  N  s  € Ý�yÑ!Ô!�H€CˆÝ�•C˜‘H”H‘˜c¥# c¡(¤(™lÐ+Ñ,Ô,€AÝ��SˆzÑÔ€AØ	�
Š
�1‰Œ€AØ�—
’
˜1œ3‘”ÒÐÐÐØ�”—’˜qÑ!Ô!Ò!Ð!Ð!Ð!Ø�”—’˜qœsÑ#Ô#Ò#Ð#Ð#Ð#Ø	Œ�C�”˜”
‰OŒOÑ˜AÑ€AØ	�Š•HÑÔ€AØ•˜˜A˜  C¨¡F Ð,Ñ-Ô-Ò-Ð-Ð-Ð-Ð-Ð-rm   c                  ó˜  — t          d¦  «        \  } }t          | t          |¦  «        z  | t          |¦  «        z  | dz  g¦  «        }t          | |g¦  «        }t          t          |¦  «        |  t          |¦  «        z  gt          |¦  «        | t          |¦  «        z  gd| z  dgg¦  «        }|                     |¦  «        |k    sJ ‚d S )Nr˜  r„   r   )r   r1   r   r   r  )r™  rš  r›  rœ  r  s        rn   Útest_jacobian2rŸ  [  sÅ   € Ý�yÑ!Ô!�H€CˆÝ�•C˜‘H”H‘˜c¥# c¡(¤(™l¨C°©FÐ3Ñ4Ô4€AÝ��SˆzÑÔ€AÝÝ	ˆS‰Œ�C�4�˜C™œ‘=Ð!Ý	ˆS‰Œ�C�˜C™œ‘LÐ!Øˆc‰E˜qÐ!ðñ 	ô 	€Að
 �:Š:�a‰=Œ=˜AÒÐÐÐÐÐrm   c                  ób  — t          t          t          t          z   t          z   ¦  «        t          t          t          z   t          z   ¦  «        t          t          t          z   t          z   ¦  «        g¦  «        } t          t          t          t          g¦  «        }t          dd¦  «        D ]„}t          dd¦  «        D ]q}| d |…d d …f         }|d |…d d …f         }|                     |¦  «        }|j        |k    sJ ‚|j        |k    sJ ‚t          |¦  «        D ]}|d d …|f         |k    sJ ‚ŒŒrŒ…d S ©Nr¡   rƒ   )	r1   r   r^   r_   r`   rÂ   r  rŽ   r�   )r›  rœ  rw   rx   ÚX_sliceÚY_slicer  Úks           rn   Útest_issue_4564r¥  g  s%  € Ý••A�‘E�A‘I‘”¥¥A­¡E­A¡I¡¤µµA½±E½A±I±´Ð?Ñ@Ô@€AÝ••1•aˆyÑÔ€AÝ�1�a‰[Œ[ð *ð *ˆÝ�q˜!‘”ð 	*ð 	*ˆAØ˜˜˜˜A˜A˜A˜”hˆGØ˜˜˜˜A˜A˜A˜”hˆGØ× Ò  Ñ)Ô)ˆAØ”6˜Q’;�;�;�;Ø”6˜Q’;�;�;�;Ý˜1‘X”Xð *ð *�Ø˜˜˜˜A˜”w 'Ò)Ð)Ð)Ð)Ð)ð*ð	*ð*ð *rm   c                  ó@  ‡ ‡— t          t          t          t          z   t          z   ¦  «        t          t          t          z   t          z   ¦  «        gt          t          t          z   t          z   ¦  «        t          t          t          z   t          z   ¦  «        gg¦  «        Š t          t          ˆ fd„¦  «         ‰ dd d …f         Š t          t          t          gt          t          gg¦  «        Št          t          ˆ ˆfd„¦  «         t          t          ˆ fd„¦  «         d S )Nc                  ól   •— ‰                       t          t          t          t          g¦  «        ¦  «        S rt   ©r  r1   r^   r_   r`   ©r›  s   €rn   ry   z(test_nonvectorJacobian.<locals>.<lambda>x  s!   ø€ ˜aŸjšj­µµAµq°	Ñ):Ô):Ñ;Ô;€ rm   r   c                  ó.   •— ‰                       ‰¦  «        S rt   )r  ©r›  rœ  s   €€rn   ry   z(test_nonvectorJacobian.<locals>.<lambda>{  s   ø€ ˜aŸjšj¨™mœm€ rm   c                  ó|   •— ‰                       t          t          t          gt          t          gg¦  «        ¦  «        S rt   r¨  r©  s   €rn   ry   z(test_nonvectorJacobian.<locals>.<lambda>|  s(   ø€ ˜aŸjšj­µ1µa°&½1½a¸&Ð0BÑ)CÔ)CÑDÔD€ rm   )r1   r   r^   r_   r`   rN   Ú	TypeErrorr«  s   @@rn   Útest_nonvectorJacobianr®  u  sá   øø€ Ý••Q�‘U�Q‘Y‘”¥¥Q­¡U­Q¡Y¡¤Ð0Ý•Q�‘U�Q‘Y‘”¥¥Q­¡U­Q¡Y¡¤Ð0ð2ñ 	3ô 	3€Aå
�9Ð;Ð;Ð;Ð;Ñ<Ô<Ð<Ø	ˆ!ˆQˆQˆQˆ$Œ€AÝ••A���A˜ÐÑ Ô €AÝ
�9Ð+Ð+Ð+Ð+Ð+Ñ,Ô,Ð,Ý
�9ÐDÐDÐDÐDÑEÔEÐEÐEÐErm   c                  ó¸   — t          ddgddgg¦  «        } |                      ¦   «         }|j        dk    sJ ‚t          d¦  «        D ]}||         |dz   k    sJ ‚Œd S ©Nr¡   rƒ   r„   r¦   )r1   Úvecr�   rÂ   )r–   Úm_vecrw   s      rn   Útest_vecr³    ss   € Ý��A�˜˜A˜ÐÑ Ô €AØ�EŠE‰GŒG€EØŒ:˜Š?ˆ?ˆ?ˆ?Ý�1‰XŒXð !ð !ˆØ�QŒx˜1˜q™5Ò Ð Ð Ð Ð ð!ð !rm   c                  ó~  — t          ddgddgg¦  «        } |                      ¦   «         }|j        dk    sJ ‚t          d¦  «        D ]}||         |dz   k    sJ ‚Œ|                      d¬¦  «        }|d         dk    sJ ‚t          dt          t          t
          z   z  gt
          t          z  t          dz  z   dgg¦  «        } |                      d¬¦  «        }|d         t
          t          z  t          dz  z   k    sJ ‚t          dt          t          t
          z   z  gt
          t          z  dgg¦  «        } |                      dd¬¦  «        }|d         t
          t          z  k    sJ ‚t          t          d„ ¦  «         t          t          d	„ ¦  «         t          t          d
„ ¦  «         t          t          d„ ¦  «         d S )Nr¡   r„   rƒ   F)Údiagonalr   )rµ  Úcheck_symmetryc                  óJ   — t          ddgg¦  «                             ¦   «         S r¡  ©r1   Úvechrl   rm   rn   ry   ztest_vech.<locals>.<lambda>˜  ó    € �v¨¨1 v hÑ/Ô/×4Ò4Ñ6Ô6€ rm   c                  óP   — t          ddgddgg¦  «                             ¦   «         S r°  r¸  rl   rm   rn   ry   ztest_vech.<locals>.<lambda>™  ó'   € �v¨¨1 v°°1¨vÐ&6Ñ7Ô7×<Ò<Ñ>Ô>€ rm   c                  óJ   — t          ddgg¦  «                             ¦   «         S r¡  r¸  rl   rm   rn   ry   ztest_vech.<locals>.<lambda>š  rº  rm   c                  óP   — t          ddgddgg¦  «                             ¦   «         S r°  r¸  rl   rm   rn   ry   ztest_vech.<locals>.<lambda>›  r¼  rm   )	r1   r¹  r�   rÂ   r^   r_   rN   r'   r  )r–   Úm_vechrw   s      rn   Ú	test_vechrÀ  ‡  s�  € Ý��A�˜˜A˜ÐÑ Ô €AØ�VŠV‰XŒX€FØŒ;˜!ÒÐÐÐÝ�1‰XŒXð "ð "ˆØ�aŒy˜A ™EÒ!Ð!Ð!Ð!Ð!Ø�VŠV˜UˆVÑ#Ô#€FØ�!Œ9˜Š>ˆ>ˆ>ˆ>å�•A•q�1‘u‘I�¥¥1¡¥q¨!¡t¡¨Q Ð0Ñ1Ô1€AØ�VŠV˜UˆVÑ#Ô#€FØ�!Œ9��!™�a ™d™
Ò"Ð"Ð"Ð"å�•A•q�1‘u‘I�¥¥1¡ a Ð)Ñ*Ô*€AØ�VŠV˜U°5ˆVÑ9Ô9€FØ�!Œ9��!™ÒÐÐÐå
�:Ð6Ð6Ñ7Ô7Ð7Ý
�:Ð>Ð>Ñ?Ô?Ð?Ý
�:Ð6Ð6Ñ7Ô7Ð7Ý
�:Ð>Ð>Ñ?Ô?Ð?Ð?Ð?rm   c                  óÜ   ‡ — t          g d¢¦  «        t          g d¢¦  «        k    sJ ‚dddggŠ t          t          ˆ fd„¦  «         t          ‰ d¬¦  «        t          g d¢¦  «        k    sJ ‚d S )Nr¥   r¡   r„   rƒ   c                  ó"   •— t          ‰ ¦  «        S rt   )r4   rè   s   €rn   ry   ztest_diag.<locals>.<lambda>¢  s   ø€ �t A™wœw€ rm   F)Ústrict)r4   r1   rN   r  rè   s   @rn   Ú	test_diagrÄ  ž  s}   ø€ å�	�	�	‰?Œ?�f Y Y YÑ/Ô/Ò/Ð/Ð/Ð/Ø	
ˆA�ˆsˆ€AÝ
�:����Ñ'Ô'Ð'Ý�˜%Ð Ñ Ô ¥F¨9¨9¨9Ñ$5Ô$5Ò5Ð5Ð5Ð5Ð5Ð5rm   c                  ód  — t          ddgddgg¦  «        } t          dt          gt          dgg¦  «        }t          dt          dgt          dt          gt          t          t          gg¦  «        } | j        ¦   «         | gk    sJ ‚ |j        ¦   «         |gk    sJ ‚ |j        ¦   «         |gk    sJ ‚d S ©Nr¡   r„   rƒ   )r1   r^   r_   r`   Úget_diag_blocks©rZ   r[   r\   s      rn   Útest_get_diag_blocks1rÉ  ¦  s¼   € Ý��A�˜˜A˜ÐÑ Ô €AÝ�•A��˜A˜ÐÑ Ô €AÝ�•A�q�	�A˜q¥!˜9¥q­!­Q iÐ0Ñ1Ô1€AØˆ1ÔÑÔ 1 #Ò%Ð%Ð%Ð%Øˆ1ÔÑÔ 1 #Ò%Ð%Ð%Ð%Øˆ1ÔÑÔ 1 #Ò%Ð%Ð%Ð%Ð%Ð%rm   c                  ó@  — t          ddgddgg¦  «        } t          dt          gt          dgg¦  «        }t          dt          dgt          dt          gt          t          t          gg¦  «        }t	          | ||¦  «                             ¦   «         | ||gk    sJ ‚t	          | ||¦  «                             ¦   «         | ||gk    sJ ‚t	          | ||¦  «                             ¦   «         | ||gk    sJ ‚t	          |||¦  «                             ¦   «         |||gk    sJ ‚d S rÆ  )r1   r^   r_   r`   r4   rÇ  rÈ  s      rn   Útest_get_diag_blocks2rË  ¯  s  € Ý��A�˜˜A˜ÐÑ Ô €AÝ�•A��˜A˜ÐÑ Ô €AÝ�•A�q�	�A˜q¥!˜9¥q­!­Q iÐ0Ñ1Ô1€AÝ��1�a‰=Œ=×(Ò(Ñ*Ô*¨q°!°Q¨iÒ7Ð7Ð7Ð7Ý��1�a‰=Œ=×(Ò(Ñ*Ô*¨q°!°Q¨iÒ7Ð7Ð7Ð7Ý��1�a‰=Œ=×(Ò(Ñ*Ô*¨q°!°Q¨iÒ7Ð7Ð7Ð7Ý��1�a‰=Œ=×(Ò(Ñ*Ô*¨q°!°Q¨iÒ7Ð7Ð7Ð7Ð7Ð7rm   c                  ód  — t          ddgddgg¦  «        } t          dt          gt          dgg¦  «        }t          dt          dgt          dt          gt          t          t          gg¦  «        }t	          | ||¦  «        }|                     d¬¦  «        t	           | j        ¦   «          |j        ¦   «          |j        ¦   «         ¦  «        k    sJ ‚t	          | ||¦  «        }|                     d¬¦  «        t	           | j        ¦   «          |j        ¦   «          |j        ¦   «         ¦  «        k    sJ ‚t	          | ||¦  «        }|                     d¬¦  «        t	           | j        ¦   «          |j        ¦   «          |j        ¦   «         ¦  «        k    sJ ‚t	          | | || || ¦  «        }|                     d¬¦  «        t	           | j        ¦   «          | j        ¦   «          |j        ¦   «          | j        ¦   «          |j        ¦   «          | j        ¦   «         ¦  «        k    sJ ‚|                     dd¬¦  «        t	           | j        d¬¦  «         | j        d¬¦  «         |j        d¬¦  «         | j        d¬¦  «         |j        d¬¦  «         | j        d¬¦  «        ¦  «        k    sJ ‚d S )	Nr¡   r„   rƒ   T)Útry_block_diagr�  )rÍ  rw  rv  )r1   r^   r_   r`   r4   r  )rZ   r[   r\   rò   s       rn   Útest_inv_blockrÎ  ¹  s„  € Ý��A�˜˜A˜ÐÑ Ô €AÝ�•A��˜A˜ÐÑ Ô €AÝ�•A�q�	�A˜q¥!˜9¥q­!­Q iÐ0Ñ1Ô1€AÝˆQ��1‰Œ€AØ�5Š5 ˆ5Ñ%Ô%­¨e¨a¬e©g¬g°u°q´u±w´wÀÀÄÁÄÑ)HÔ)HÒHÐHÐHÐHÝˆQ��1‰Œ€AØ�5Š5 ˆ5Ñ%Ô%­¨e¨a¬e©g¬g°u°q´u±w´wÀÀÄÁÄÑ)HÔ)HÒHÐHÐHÐHÝˆQ��1‰Œ€AØ�5Š5 ˆ5Ñ%Ô%­¨e¨a¬e©g¬g°u°q´u±w´wÀÀÄÁÄÑ)HÔ)HÒHÐHÐHÐHÝˆQ��1�a˜˜AÑÔ€AØ�5Š5 ˆ5Ñ%Ô%­ØˆŒ‰Œ��”‘”˜%˜!œ%™'œ' 5 1¤5¡7¤7¨E¨A¬E©G¬G°U°Q´U±W´Wñ*>ô *>ò >ð >ð >ð >à�5Š5 ¨Uˆ5Ñ3Ô3µtØˆŒ�UÐÑÔ˜U˜QœU¨%Ð0Ñ0Ô0°%°!´%¸uÐ2EÑ2EÔ2EØˆŒ�UÐÑÔ˜U˜QœU¨%Ð0Ñ0Ô0°%°!´%¸uÐ2EÑ2EÔ2Eñ8Gô 8Gò Gð Gð Gð Gð Gð Grm   c                  ó.  — t          t          d„ ¦  «         t          t          d„ ¦  «         t          t	          d¦  «        ¦  «        t          d¦  «        k    sJ ‚t          t          d¦  «        ¦  «        t          d¦  «        k    sJ ‚t          t          d„ ¦  «         t          t	          d¦  «        ¦  «        t          d¦  «        k    sJ ‚t          t          d¦  «        ¦  «        t          d¦  «        k    sJ ‚t          t          d„ ¦  «         t          t	          d¦  «        t          d¦  «        ¦  «        t          dd¦  «        k    sJ ‚t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d	„ ¦  «         d
S )zg
    Check that matrix dimensions can be specified using any reasonable type
    (see issue 4614).
    c                  ó"   — t          dd¦  «        S )Nrƒ   rä   ©r>   rl   rm   rn   ry   z$test_creation_args.<locals>.<lambda>Ð  s   € �u Q¨™|œ|€ rm   c                  ó&   — t          dddd¦  «        S ©Nr¡   r„   rƒ   r¦   rÑ  rl   rm   rn   ry   z$test_creation_args.<locals>.<lambda>Ñ  s   € �e A q¨!¨QÑ/Ô/€ rm   rƒ   c                  ó    — t          d¦  «        S ©Nç      @rÑ  rl   rm   rn   ry   z$test_creation_args.<locals>.<lambda>Ô  s   € �u R™yœy€ rm   c                  ó    — t          d¦  «        S rÕ  ©r5   rl   rm   rn   ry   z$test_creation_args.<locals>.<lambda>×  s   € �s 2™wœw€ rm   r¦   c                  ó    — t          d¦  «        S ©Nr¹   rÙ   rl   rm   rn   ry   z$test_creation_args.<locals>.<lambda>Ù  s   € �f Q™iœi€ rm   c                  ó"   — t          dd¦  «        S r    rÙ   rl   rm   rn   ry   z$test_creation_args.<locals>.<lambda>Ú  s   € �f Q¨™lœl€ rm   c                  ó&   — t          ddgg¦  «        S r    rÙ   rl   rm   rn   ry   z$test_creation_args.<locals>.<lambda>Û  s   € �v q¨1¨# hÑ/Ô/€ rm   N)rN   r  r­  r>   ru   r   r5   r8   rl   rm   rn   Útest_creation_argsrÝ  Ë  sQ  € õ
 �:Ð+Ð+Ñ,Ô,Ð,Ý
�9Ð/Ð/Ñ0Ô0Ð0Ý•�Q‘”‰=Œ=�E !™HœHÒ$Ð$Ð$Ð$Ý•˜‘”ÑÔ¥ a¡¤Ò(Ð(Ð(Ð(Ý
�:Ð(Ð(Ñ)Ô)Ð)Ý�s�1‰vŒv‰;Œ;�#˜a™&œ&Ò Ð Ð Ð Ý�w�q‰zŒz‰?Œ?�c !™fœfÒ$Ð$Ð$Ð$Ý
�:��Ñ'Ô'Ð'Ý•�A‘”� ™
œ
Ñ#Ô#¥t¨A¨q¡z¤zÒ1Ð1Ð1Ð1Ý
�9Ð'Ð'Ñ(Ô(Ð(Ý
�9Ð*Ð*Ñ+Ô+Ð+Ý
�:Ð/Ð/Ñ0Ô0Ð0Ð0Ð0rm   c                  ó8  — t          ddg d¢¦  «        } |                      ¦   «         rJ ‚|                      ¦   «         sJ ‚|                      d¬¦  «        sJ ‚t          ddg d¢¦  «        } |                      ¦   «         sJ ‚t          ddd¦  «        } |                      ¦   «         sJ ‚|                      ¦   «         sJ ‚t          ddg d¢¦  «        } | t          ddd¦  «        k    sJ ‚t          ddt	          dd¦  «        ¦  «        } |                      ¦   «         rJ ‚|                      ¦   «         sJ ‚t          d	¦  «        } |                      ¦   «         sJ ‚t          d
¦  «        } |                      ¦   «         sJ ‚t          dddt
          dz  dt
          z  z   dz   t          t
          dz   dz  ddt          ddg	¦  «        } |                      ¦   «         sJ ‚|                      d¬¦  «        rJ ‚|                      ¦   «                              d¬¦  «        sJ ‚d S )Nr„   ©r   r¡   r¡   r   F©r%   ©r¡   r   r   r¡   r¡   rƒ   )	r¡   r   r   r   r„   r   r   r   rƒ   ))r¹   r   rÇ   r¼   )©r¹   r   r   )r   r§   r   r   )r1   Úis_diagonalÚis_symmetricr4   r>   r^   r_   r   rè   s    rn   Útest_diagonal_symmetricalrå  Þ  s	  € Ýˆq�!�\�\�\Ñ"Ô"€AØ�}Š}‰ŒÐÐÐØ�>Š>ÑÔÐÐÐØ�>Š> 5ˆ>Ñ)Ô)Ð)Ð)Ð)åˆq�!�\�\�\Ñ"Ô"€AØ�=Š=‰?Œ?ÐÐˆ?åˆQ��1‰Œ€AØ�=Š=‰?Œ?ÐÐˆ?Ø�>Š>ÑÔÐÐÐåˆq�!Ð0Ð0Ð0Ñ1Ô1€AØ•�Q˜˜1‘”ÒÐÐÐåˆq�!•U˜1˜a‘[”[Ñ!Ô!€AØ�~Š~ÑÔÐÐÐØ�=Š=‰?Œ?ÐÐˆ?åÐ'Ñ(Ô(€AØ�=Š=‰?Œ?ÐÐˆ?åÐ%Ñ&Ô&€AØ�=Š=‰?Œ?ÐÐˆ?åˆq�!�a�˜A™ ¥!¡™ a™­­Q°©U°Q©J¸¸1½aÀÀAÐFÑGÔG€AØ�>Š>ÑÔÐÐÐØ�~Š~ uˆ~Ñ-Ô-Ð-Ð-Ð-Ø�8Š8‰:Œ:×"Ò"¨EÐ"Ñ2Ô2Ð2Ð2Ð2Ð2Ð2rm   c                  ó€	  ‡— t          ddt          z   gdt          z
  dgg¦  «        Š‰                     ¦   «         sJ ‚t          ddg d¢¦  «        Š‰                     ¦   «         rJ ‚‰                     ¦   «         rJ ‚t	          t
          ˆfd„¦  «         t          ddd¦  «        Š‰                     ¦   «         \  } }| t          d¦  «        k    sJ ‚|‰k    sJ ‚t          ddg d¢¦  «        Š‰                     ¦   «         sJ ‚‰                     ¦   «         sJ ‚‰                     ¦   «         \  } }|  	                    ¦   «         ‰z  | z  |k    sJ ‚t          ddg d¢¦  «        Š‰                     ¦   «         sJ ‚‰                     ¦   «         sJ ‚‰                     ¦   «         \  } }|  	                    ¦   «         ‰z  | z  |k    sJ ‚| t          d¦  «        k    sJ ‚|‰k    sJ ‚t          ddg d¢¦  «        Š‰                     ¦   «         sJ ‚‰                     ¦   «         \  } }|  	                    ¦   «         ‰z  | z  |k    sJ ‚t          ddg d	¢¦  «        Š‰                     ¦   «         sJ ‚‰                     ¦   «         \  } }|  	                    ¦   «         ‰z  | z  |k    sJ ‚| D ]"}| 
                    ¦   «         d         dk    sJ ‚Œ#t          ddg d
¢¦  «        Š‰                     ¦   «         sJ ‚‰                     ¦   «         sJ ‚‰                     ¦   «         \  } }|  	                    ¦   «         ‰z  | z  |k    sJ ‚| t          ddgddgg¦  «        k    sJ ‚t          ddg d¢¦  «        Š‰                     d¦  «        rJ ‚t	          t          ˆfd„¦  «         ‰                     ¦   «         sJ ‚‰                     ¦   «         \  } }|  	                    ¦   «         ‰z  | z  |k    sJ ‚t          ddg d¢¦  «        Š‰                     ¦   «         rJ ‚t	          t          ˆfd„¦  «         t          ddg d¢¦  «        Š‰                     ¦   «         rJ ‚t	          t          ˆfd„¦  «         t          d¦  «        \  }}}}t          dd||||g¦  «        Š‰                     ¦   «         sJ ‚‰                     ¦   «         sJ ‚d S )Nr¡   r„   rƒ   ©r¬   r¡   r¬   r›  rƒ   rÍ   c                  ó,   •— ‰                       ¦   «         S rt   ©rq  rè   s   €rn   ry   z&test_diagonalization.<locals>.<lambda>  ó   ø€ ¨¯ª©¬€ rm   rß  )r¡   r   r   rƒ   ©r¡   r¡   r   r   )	r¡   r„   r   r   rƒ   r   r„   rB  r„   rÎ  r   )r   r¡   rä   r   Tc                  ó.   •— ‰                       d¦  «        S )NTré  rè   s   €rn   ry   z&test_diagonalization.<locals>.<lambda>1  s   ø€  §¢¨dÑ 3Ô 3€ rm   ©r   r¡   r   r   c                  ó,   •— ‰                       ¦   «         S rt   ré  rè   s   €rn   ry   z&test_diagonalization.<locals>.<lambda>9  ó   ø€  §¢¡¤€ rm   )	r¬   r¡   r¬   r›  rƒ   rÍ   r„   r  r¦   c                  ó,   •— ‰                       ¦   «         S rt   ré  rè   s   €rn   ry   z&test_diagonalization.<locals>.<lambda>=  rï  rm   úa b c d)r1   r
   rl  rä  rN   r)   r4   rq  r5   r  Úas_numer_denomrã  r(   r   )r  r6  rw   rZ   r[   r\   r]   r–   s          @rn   Útest_diagonalizationró  þ  s  ø€ Ý��A•a‘C�˜1�Q™3 ˜(Ð#Ñ$Ô$€AØ×ÒÑ Ô Ð Ð Ð åˆq�!Ð+Ð+Ð+Ñ,Ô,€AØ×"Ò"Ñ$Ô$Ð$Ð$Ð$Ø�~Š~ÑÔÐÐÐÝ
ÕÐ!8Ð!8Ð!8Ð!8Ñ9Ô9Ð9õ 	ˆQ��1‰Œ€AØ�]Š]‰_Œ_�F€QˆØ•�A‘”Š;ˆ;ˆ;ˆ;Ø�Š6ˆ6ˆ6ˆ6åˆq�!�\�\�\Ñ"Ô"€AØ�>Š>ÑÔÐÐÐØ×ÒÑ Ô Ð Ð Ð Ø�]Š]‰_Œ_�F€QˆØ�5Š5‰7Œ7�Q‰;˜‰?˜aÒÐÐÐåˆq�!�\�\�\Ñ"Ô"€AØ�>Š>ÑÔÐÐÐØ×ÒÑ Ô Ð Ð Ð Ø�]Š]‰_Œ_�F€QˆØ�5Š5‰7Œ7�Q‰;˜‰?˜aÒÐÐÐØ•�A‘”Š;ˆ;ˆ;ˆ;Ø�Š6ˆ6ˆ6ˆ6åˆq�!�\�\�\Ñ"Ô"€AØ×ÒÑ Ô Ð Ð Ð Ø�]Š]‰_Œ_�F€QˆØ�5Š5‰7Œ7�Q‰;˜‰?˜aÒÐÐÐåˆq�!Ð1Ð1Ð1Ñ2Ô2€AØ×ÒÑ Ô Ð Ð Ð Ø�]Š]‰_Œ_�F€QˆØ�5Š5‰7Œ7�Q‰;˜‰?˜aÒÐÐÐØð *ð *ˆØ×ÒÑ!Ô! !Ô$¨Ò)Ð)Ð)Ð)Ð)åˆq�!�\�\�\Ñ"Ô"€AØ�=Š=‰?Œ?ÐÐˆ?Ø×ÒÑ Ô Ð Ð Ð Ø�]Š]‰_Œ_�F€QˆØ�5Š5‰7Œ7�Q‰;˜‰?˜aÒÐÐÐØ•˜˜A˜  A Ð'Ñ(Ô(Ò(Ð(Ð(Ð(õ 	ˆq�!�]�]�]Ñ#Ô#€AØ×"Ò" 4Ñ(Ô(Ð(Ð(Ð(Ý
�;Ð3Ð3Ð3Ð3Ñ4Ô4Ð4Ø×ÒÑ Ô Ð Ð Ð Ø�]Š]‰_Œ_�F€QˆØ�5Š5‰7Œ7�Q‰;˜‰?˜aÒÐÐÐõ 	ˆq�!�\�\�\Ñ"Ô"€AØ×"Ò"Ñ$Ô$Ð$Ð$Ð$Ý
�;Ð/Ð/Ð/Ð/Ñ0Ô0Ð0åˆq�!Ð5Ð5Ð5Ñ6Ô6€AØ×"Ò"Ñ$Ô$Ð$Ð$Ð$Ý
�;Ð/Ð/Ð/Ð/Ñ0Ô0Ð0õ ˜Ñ#Ô#�J€A€qˆ!ˆQÝˆq�!�a˜˜A˜q�\Ñ"Ô"€AØ�>Š>ÑÔÐÐÐØ×ÒÑ Ô Ð Ð Ð Ð Ð rm   c                  ó
  ‡ — t          ddgddgg¦  «        Š  ‰ j        ¦   «         du sJ ‚d‰ d<    ‰ j        ¦   «         du sJ ‚t          ddgddgg¦  «        Š  ‰ j        ¦   «          d‰ d<   t          t          ˆ fd„¦  «         d S )Nr   r¡   TrÈ   Fc                  ó"   •—  ‰ j         ¦   «         S rt   ré  r|  s   €rn   ry   z"test_issue_15887.<locals>.<lambda>P  s   ø€   ¤¡¤€ rm   )r?   rl  rq  rN   r(   r|  s   @rn   Útest_issue_15887rö  F  s®   ø€ å˜Q ˜F Q¨ FÐ+Ñ,Ô,€AØˆ1ÔÑ Ô  DÐ(Ð(Ð(Ð(Ø€A€d�GØˆ1ÔÑ Ô  EÐ)Ð)Ð)Ð)å˜Q ˜F Q¨ FÐ+Ñ,Ô,€AØ€A„M�O„O€OØ€A€d�GÝ
�;Ð/Ð/Ð/Ð/Ñ0Ô0Ð0Ð0Ð0rm   c                  óÒ  ‡— t          ddg d¢¦  «        Št          t          ˆfd„¦  «         t          ddg d¢¦  «        Št          ddg d¢¦  «        } ‰                     ¦   «         \  }}| |k    sJ ‚| ‰                     ¦   «         d         k    sJ ‚t          ddg d¢¦  «        Št          ddg d	¢¦  «        } ‰                     ¦   «         \  }}| |k    sJ ‚t          ddg d
¢¦  «        Št          ddg d¢¦  «        } ‰                     ¦   «         \  }}| |k    sJ ‚t          ddg d¢¦  «        Št          ddg d¢¦  «        } ‰                     ¦   «         \  }}| |k    sJ ‚t          ddg d¢¦  «        Št          ddg d¢¦  «        } ‰                     ¦   «         \  }}| |k    sJ ‚t          ddg d¢¦  «        Št          ddg d¢¦  «        } ‰                     ¦   «         \  }}| |k    sJ ‚t          ddg d¢¦  «        Š‰                     ¦   «         rJ ‚t          ddg d¢¦  «        } ‰                     ¦   «         \  }}| |k    sJ ‚t          t          dd¬¦  «        t          dd¬¦  «        gt          dd¬¦  «        t          dd¬¦  «        gg¦  «        Š‰                     ¦   «         \  }}|                     ¦   «         D ]$}t          |t          ¦  «        r|j	        dk    sJ ‚Œ%d S )Nrƒ   r„   rç  c                  ó,   •— ‰                       ¦   «         S rt   )r  rè   s   €rn   ry   z"test_jordan_form.<locals>.<lambda>V  rê  rm   )	rº   r—  r§   rÍ   iíÿÿÿrÍ   rÜ   ièÿÿÿrÄ  )	rä   r   r   r   r¡   r   r   r   r¡   r¡   ©	r   r¡   r   rB  r¦   r   r  r¡   r„   )	r„   r¡   r   r   r„   r   r   r   r„   )	r„   r§   éñÿÿÿr¡   r¡   rC  r¡   r„   r&  )	rä   r¡   r   r   rä   r   r   r   rä   )	r¦   rC  r„   r¹   re  rƒ   r§   é÷ÿÿÿr¦   )	r   r¡   r   r   r   r   r   r   r¡   r¦   )r§   r¹   r  r¬   r¬   rä   rƒ   rƒ   r„   r¡   r  r¬   rä   r¡   r¹   r¹   )r„   r¡   r   r   r   r„   r   r   r   r   r„   r¡   r   r   r   r„   )r§   r„   éøÿÿÿr&  r¬   r„   r·   r§   r„   r  rü  r&  rä   r   rƒ   r¦   )r  r   r   r   r   r„   r¡   r   r   r   r„   r   r   r   r   r„   )r¹   r¦   r„   r¡   r   r¡   rä   rä   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1.0én   )Ú	precisionz2.0z3.14159265358979323846264338327z4.0)
r1   rN   r)   r  rq  rl  r	   ÚvaluesrÒ   Ú_prec)ÚJmustr  r  Útermr–   s       @rn   Útest_jordan_formr  S  sk  ø€ åˆq�!Ð+Ð+Ð+Ñ,Ô,€AÝ
ÕÐ!8Ð!8Ð!8Ð!8Ñ9Ô9Ð9õ 	ˆq�!Ð:Ð:Ð:Ñ;Ô;€AÝ�1�aÐ5Ð5Ð5Ñ6Ô6€EØ�=Š=‰?Œ?�D€A€qØ�AŠ:ˆ:ˆ:ˆ:Ø�A—M’M‘O”O AÔ&Ò&Ð&Ð&Ð&õ 	ˆq�!Ð2Ð2Ð2Ñ3Ô3€Aõ �1�aÐ4Ð4Ð4Ñ5Ô5€EØ�=Š=‰?Œ?�D€A€qØ�AŠ:ˆ:ˆ:ˆ:õ 	ˆq�!Ð4Ð4Ð4Ñ5Ô5€Aõ �1�aÐ7Ð7Ð7Ñ8Ô8€EØ�=Š=‰?Œ?�D€A€qØ�AŠ:ˆ:ˆ:ˆ:õ 	ˆq�!Ð3Ð3Ð3Ñ4Ô4€AÝ�1�aÐ4Ð4Ð4Ñ5Ô5€EØ�=Š=‰?Œ?�D€A€qØ�AŠ:ˆ:ˆ:ˆ:åˆq�!ÐLÐLÐLÑMÔM€AÝ�1�að ð ð ñ ô €Eð
 �=Š=‰?Œ?�D€A€qØ�AŠ:ˆ:ˆ:ˆ:åˆq�!ÐLÐLÐLÑMÔM€Aõ �1�að 'ð 'ð 'ñ (ô (€Eð �=Š=‰?Œ?�D€A€qØ�AŠ:ˆ:ˆ:ˆ:åˆq�!ÐJÐJÐJÑKÔK€AØ×"Ò"Ñ$Ô$Ð$Ð$Ð$Ý�1�aÐIÐIÐIÑJÔJ€EØ�=Š=‰?Œ?�D€A€qØ�AŠ:ˆ:ˆ:ˆ:õ 	•�u¨Ð,Ñ,Ô,­e°EÀSÐ.IÑ.IÔ.IÐJÝÐ8ÀCÐHÑHÔHÍ%ÐPUÐadÐJeÑJeÔJeÐfðhñ 	iô 	i€Aà�=Š=‰?Œ?�D€A€qØ—’‘
”
ð %ð %ˆÝ�d�EÑ"Ô"ð 	%Ø”: Ò$Ð$Ð$Ð$øð%ð %rm   c            	      ó   — t          g d¢g d¢g d¢g d¢g¦  «        } ddt          z  z
  }ddt          z  z   }t          |dddgd|ddgdd|dgddd|gg¦  «        }t          |dddgd|ddgdd|dgddd|gg¦  «        }|                      ¦   «         \  }}||k    s||k    sJ ‚t          ||z  |                     ¦   «         z  ¦  «        | k    sJ ‚d S )	N)r„   r¦   r¡   r   )rB  r„   r   r¡   )r   r   r„   r¦   )r   r   rB  r„   r„   r¦   r¡   r   )r1   r
   r  r%   r  )rò   ÚpÚqÚJmust1ÚJmust2r  r  s          rn   Ú#test_jordan_form_complex_issue_9274r	  ž  s.  € ÝÐ Ð Ð Ø Ð Ð Ø Ð Ð Ø Ð Ð ð"ñ 	#ô 	#€Að 	
ˆA�a‰C‰€AØ	ˆA�a‰C‰€AÝ�a˜˜A˜q�\Ø˜˜A˜q�\Ø˜˜A˜q�\Ø˜˜A˜q�\ð#ñ $ô $€Fõ �a˜˜A˜q�\Ø˜˜A˜q�\Ø˜˜A˜q�\Ø˜˜A˜q�\ð#ñ $ô $€Fð �=Š=‰?Œ?�D€A€qØ�Š;ˆ;˜!˜vš+˜+˜+Ð%Ý�A�a‘C˜Ÿš™œ‘KÑ Ô  AÒ%Ð%Ð%Ð%Ð%Ð%rm   c                  óî   — t          g d¢g d¢g d¢g d¢g¦  «        } |                      ¦   «         \  }}|t          g d¢g d¢g d¢g d¢g¦  «        k    sJ ‚|t          g d	¢g d¢g d¢g d¢g¦  «        k    sJ ‚d S )
Nrá  rß  )r   r   r¡   r¡   rp  ©r   r¡   r   r¡   rÎ  rí  rÌ  rë  )r1   r  r  s      rn   Útest_issue_10220r  ±  s×   € å���Ø��Ø��Ø��ðñ 	ô 	€Að �=Š=‰?Œ?�D€A€qØ•˜˜˜Ø$˜˜Ø$˜˜Ø$˜˜ð&ñ 'ô 'ò 'ð 'ð 'ð 'ð •Ø$˜˜Ø$˜˜Ø$˜˜Ø$˜˜ð	&ñ 'ô 'ò 'ð 'ð 'ð 'ð 'ð 'rm   c                  ó"  — t          g d¢g d¢g d¢g d¢g¦  «        } |                      ¦   «         \  }}|                     ¦   «         t          t           t           dz  t          t          dz  gdt          z   ddt          z
  dgdt	          d¦  «         dz  t          dz  z
  dt	          d¦  «         dz  t          dz  z   gg d	¢g¦  «        k    sJ ‚|t          t           dddgdt           ddgddt          dgdddt          gg¦  «        k    sJ ‚d S )
Nro  ©r  rä   r   rä   ©r   r   rä   rä   ©r   r   r„   r¡   r„   rä   r   r¡   r  )r1   r  r   r
   r   )rò   r  r  s      rn   Útest_jordan_form_issue_15858r  Â  sB  € ÝØˆˆØˆˆØˆˆØˆˆð	ñ 	ô 	€Að
 �]Š]‰_Œ_�F€QˆØ�8Š8‰:Œ:�ÝˆR�1˜"˜Q™$¥Qµ!°A±#Ð6Ø	�a‰˜Q ¥Q¡°AÐ6Ø•!�A‘$”$��q‘�1˜Q™3‘ Q­¨1©¬¨¨a©µ!°A±#©Ð6Ø6Ð6Ð6ð	!8ñ 9ô 9ò 9ð 9ð 9ð 9ð
 •Ý
ˆˆQ��1ˆØ	
�QˆB��1ˆØ	
ˆA�q�!ˆØ	
ˆAˆq•!ˆð	ñ ô ò ð ð ð ð ð rm   c                  óÈ  — t          d¦  «        \  } }}t          | | z
  |dz  ||z   z  z   ||z  ||z   z  g||z  ||z   z  | |dz  ||z   z  z   gg¦  «        }|                     t          ¦  «        }|t	          t          dz  || z  || z  z   d|z  |z  z   ||z   z  t          z  z   ||z  | z  ||z   z  z   t          d¬¦  «        k    sJ ‚t          |¦  «        t          u sJ ‚t          ddgddgg¦  «        }|                     ¦   «         |                     t          ¦  «        cxk    r&t          t          dz  t          z
  dz
  ¦  «        k    sn J ‚t          ddgt          dgg¦  «        }|                     t          ¦  «        }|j        t          k    sJ ‚|                     ¦   «          	                    |j        t          ¦  «        t          dz  dt          z  z
  k    sJ ‚d S )	Nz
UA K_i K_wr„   zZZ(K_i,K_w,UA)r)  r¡   rƒ   r   r§   )
r   r1   r+  r^   r   r†   r    ÚgenÚas_exprr  )ÚUAÚK_iÚK_wrò   r+  r  s         rn   Útest_Matrix_berkowitz_charpolyr  Ô  sÿ  € Ý˜<Ñ(Ô(�L€BˆˆSå�#�˜‘˜S !™V S¨3¡YÑ/Ñ/°s¸3±wÀÀcÁ	Ñ7JÐKØ ™G S¨3¡YÑ/°#°¸¸Q¹ÀÀcÁ	Ñ8JÑ1JÐKðMñ 	Nô 	N€Að �zŠz�!‰}Œ}€HàÝ�Q�‰T�S˜‘V˜c "™f‘_ q¨¡u¨S¡yÑ0°3¸±9Ñ=½aÑ?Ñ?ØˆC‰�‰
�C˜#‘IÑñÝ !Ð*:ð	<ñ 	<ô 	<ò<ð <ð <ð <õ �‰>Œ>�XÐ%Ð%Ð%Ð%å��A�˜˜A˜ÐÑ Ô €AØ�:Š:‰<Œ<˜1Ÿ:š:¥a™=œ=ÐBÐBÒBÐB­HµQ¸±T½A±XÀ±\Ñ,BÔ,BÒBÐBÐBÐBÐBÐBå��A��˜A˜ÐÑ Ô €AØ	�
Š
•1‰Œ€AØŒ5•AŠ:ˆ:ˆ:ˆ:Ø�9Š9‰;Œ;×Ò˜AœE¥1Ñ%Ô%­¨A©°µ!±©Ò3Ð3Ð3Ð3Ð3Ð3rm   c            
      óì  — t          d¦  «        } t          j        d| ¦  «        }|                     ¦   «         t          t	          | ¦  «        gg¦  «        k    sJ ‚t          j        d| ¦  «        }|                     ¦   «         t          t	          | ¦  «        t	          | ¦  «        t	          | ¦  «        dz  gdt	          | ¦  «        t	          | ¦  «        gddt	          | ¦  «        gg¦  «        k    sJ ‚d S )NÚlamdar¡   rƒ   r„   r   )r   r1   Újordan_blockÚ_eval_matrix_exp_jblockr   ©Úlr–   s     rn   Útest_exp_jordan_blockr  ë  sä   € Ýˆw‰Œ€AåÔ˜A˜qÑ!Ô!€AØ×$Ò$Ñ&Ô&­&µ3°q±6´6°(°Ñ*<Ô*<Ò<Ð<Ð<Ð<åÔ˜A˜qÑ!Ô!€AØ×$Ò$Ñ&Ô&ÝÝ�‰VŒV•S˜‘V”V�S ™VœV A™XÐ&Ø•�A‘”�˜A™œÐØ�•3�q‘6”6ˆNðñ 	ô 	òð ð ð ð ð rm   c            	      óh  — t          ddgddgg¦  «        } t          t          d¦  «        dt          d¦  «        z  dz  dt          d¦  «        z  dz  z   gdt          d¦  «        gg¦  «        }|                      ¦   «         |k    sJ ‚t          | ¦  «        |k    sJ ‚t          ddgddgg¦  «        } |                      ¦   «         t          t          dgdt          gg¦  «        k    sJ ‚t          | ¦  «        t          t          dgdt          gg¦  «        k    sJ ‚t          ddgddgg¦  «        } |                      ¦   «         t          t          t          d¦  «        z  t           t	          d¦  «        z  gt          t	          d¦  «        z  t          t          d¦  «        z  gg¦  «        k    sJ ‚d S )	Nrƒ   r¦   r   r  rB  r¹   r¡   rä   )r1   r   r   r   r   )r–   Úm_exps     rn   Útest_expr"  ù  s~  € Ý��A�˜˜B˜Ð Ñ!Ô!€AÝ•S˜‘V”V˜R¥ B¡¤™Z¨™\¨A­c°!©f¬f©H°Q©JÑ6Ð7¸!½SÀ¹W¼W¸ÐFÑGÔG€EØ�5Š5‰7Œ7�eÒÐÐÐÝˆq‰6Œ6�UŠ?ˆ?ˆ?ˆ?å��A�˜˜A˜ÐÑ Ô €AØ�5Š5‰7Œ7•f�q !˜f q­! fÐ-Ñ.Ô.Ò.Ð.Ð.Ð.Ýˆq‰6Œ6•V�a ˜V a­ VÐ,Ñ-Ô-Ò-Ð-Ð-Ð-å��B�˜!˜Q˜Ð Ñ!Ô!€AØ�5Š5‰7Œ7•f�q¥ Q¡¤™x­!¨­C°©F¬F©Ð3µa½¸A¹¼±hÅÅ#ÀaÁ&Ä&ÁÐ5IÐJÑKÔKÒKÐKÐKÐKÐKÐKrm   c                  ól  ‡— t          d¦  «        } t          j        d| ¦  «        Š‰                     ¦   «         t          t	          | ¦  «        gg¦  «        k    sJ ‚t          j        d| ¦  «        Š‰                     ¦   «         t          t	          | ¦  «        d| z  dd| dz  z  z  dd| dz  z  z  gdt	          | ¦  «        d| z  dd| dz  z  z  gddt	          | ¦  «        d| z  gdddt	          | ¦  «        gg¦  «        k    sJ ‚t          g d¢g d	¢g d
¢g¦  «        Št          t          ˆfd„¦  «         d S )Nr  r¡   r¦   rä   r„   rƒ   r   rì   rÀ   r  c                  ó,   •— ‰                       ¦   «         S rt   )r   rè   s   €rn   ry   ztest_log.<locals>.<lambda>  s   ø€  §¢¡¤€ rm   )r   r1   r  Ú_eval_matrix_log_jblockr   rN   r(   r  s    @rn   Útest_logr&    sW  ø€ Ýˆw‰Œ€AåÔ˜A˜qÑ!Ô!€AØ×$Ò$Ñ&Ô&­&µ3°q±6´6°(°Ñ*<Ô*<Ò<Ð<Ð<Ð<åÔ˜A˜qÑ!Ô!€AØ×$Ò$Ñ&Ô&Ýå�Q‘”˜˜1™˜b ! A q¡D¡&™k¨1¨a°°1±©f©:Ð6Ø•C˜‘F”F˜A˜a™C  Q q¨!¡t¡V¡Ð-Ø�A•s˜1‘v”v˜q ™sÐ#Ø�A�q�#˜a™&œ&Ð!ð	ñ	
ô 	
ò
ð 
ð 
ð 
õ 	Ø	ˆˆØˆ	ˆ	Øˆ
ˆ
ð	ñ	ô 	€Aõ
 �;˜˜˜˜Ñ(Ô(Ð(Ð(Ð(rm   c                  óV  — t          t          t          fdf¦  «        } |                      t          ¦  «        sJ ‚|                      t          ¦  «        rJ ‚|                      t
          ¦  «        sJ ‚|                      t          d¦  «        } |                      t          ¦  «        rJ ‚d S )Nr¿  r„   )r1   r^   r_   Úhasr`   r   r  rñ   s    rn   Útest_hasr)     s�   € Ý••A�˜ÐÑ Ô €AØ�5Š5•‰8Œ8€O€Oˆ8Ø�uŠu•Q‰xŒxÐÐˆ<Ø�5Š5•‰=Œ=ÐÐˆ=à	�Š�q�!‰Œ€AØ�uŠu•Q‰xŒxÐÐˆ<ÐÐrm   c            	      óò   — t          d¦  «        } t          dd| t          | ¦  «        dz  t          | ¦  «        dz  z   t          j        g¦  «        }t          |¦  «        \  }}}}|t          j        k    sJ ‚d S )Nr^   rƒ   r¡   r„   )r   r1   r   r   r   r  r,   ©r^   ÚcolumnÚpivot_offsetÚ	pivot_valÚpivot_assumed_nonzeroÚ
simplifieds         rn   Ú:test_find_reasonable_pivot_naive_finds_guaranteed_nonzero1r1  *  st   € õ 	ˆs‰Œ€AÝ�A�q˜1�c !™fœf a™i­#¨a©&¬&°!©)Ñ3µQ´VÐ<Ñ=Ô=€Få$ VÑ,Ô,ñ ?€L�)Ð2°Jà�œÒÐÐÐÐÐrm   c            
      ó*  — t          d¦  «        } t          dd| t          | ¦  «        dz  t          | ¦  «        dz  z   | dz  z   t          | ¦  «        dz  t          | ¦  «        dz  z   g¦  «        }t	          |t
          ¬¦  «        \  }}}}|dk    sJ ‚d S )Nr^   rƒ   r¡   r„   ©Úsimpfunc)r   r1   r   r   r,   r-   r+  s         rn   Ú:test_find_reasonable_pivot_naive_finds_guaranteed_nonzero2r5  6  sœ   € õ 	ˆs‰Œ€AÝ�A�qØÝ˜‘V”V˜Q‘Y�s 1™vœv q™yÑ(¨¨A©Ñ-Ý˜‘V”V˜Q‘Y�s 1™vœv q™yÑ(ð*ñ+ô +€Fõ
 	% VµiÐ@Ñ@Ô@ñ ?€L�)Ð2°Jà˜Š>ˆ>ˆ>ˆ>ˆ>ˆ>rm   c            
      óä  — t          d¦  «        } t          dd| t          | ¦  «        dz  t          | ¦  «        dz  z   | z   t          | ¦  «        dz  t          | ¦  «        dz  z   g¦  «        }t	          |t
          ¬¦  «        \  }}}}t          |¦  «        dk    sJ ‚|d         d         dk    sJ ‚|d         d         d| z   k    sJ ‚|d         d         dk    sJ ‚|d         d         dk    sJ ‚d S )Nr^   rƒ   r¡   r„   r3  r   )r   r1   r   r   r,   r-   Úlenr+  s         rn   Ú+test_find_reasonable_pivot_naive_simplifiesr8  E  s  € õ 	ˆs‰Œ€AÝ�A�qØÝ˜‘V”V˜Q‘Y�s 1™vœv q™yÑ(¨Ñ*Ý˜‘V”V˜Q‘Y�s 1™vœv q™yÑ(ð*ñ+ô +€Fõ
 	% VµiÐ@Ñ@Ô@ñ ?€L�)Ð2°Jõ ˆz‰?Œ?˜aÒÐÐÐØ�aŒ=˜Ô˜qÒ Ð Ð Ð Ø�aŒ=˜Ô˜q ™sÒ"Ð"Ð"Ð"Ø�aŒ=˜Ô˜qÒ Ð Ð Ð Ø�aŒ=˜Ô˜qÒ Ð Ð Ð Ð Ð rm   c                  ó   ‡ ‡— t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t
          d„ ¦  «         t          t          d	„ ¦  «         t          t          d
„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t
          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t
          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t
          d„ ¦  «         t          t          d„ ¦  «         t          t
          d„ ¦  «         t          t          d„ ¦  «         t          t
          d„ ¦  «         t          t
          d„ ¦  «         t          t
          d „ ¦  «         t          t          d!„ ¦  «         t          t          d"„ ¦  «         t          t          d#„ ¦  «         t          t          d$„ ¦  «         t          t          d%„ ¦  «         t          t          d&„ ¦  «         t          t          d'„ ¦  «         t          t          d(„ ¦  «         t          d)¦  «        Š t          t          ˆ fd*„¦  «         t          g d+¢g¦  «        Št          g d,¢g d-¢g d.¢g¦  «        Š t          t          ˆ ˆfd/„¦  «         t          g d,¢g d-¢g d.¢g¦  «        Š t          t          ˆ ˆfd0„¦  «         d S )1Nc                  ó*   — t          ddgdgg¦  «        S r    rÙ   rl   rm   rn   ry   ztest_errors.<locals>.<lambda>X  s   € �v¨¨1 v°¨s mÑ4Ô4€ rm   c                  ó2   — t          ddgg¦  «        d         S )Nr¡   r„   )g333333ó?r¹   rÙ   rl   rm   rn   ry   ztest_errors.<locals>.<lambda>Y  ó   € �v¨¨1 v hÑ/Ô/°Ô7€ rm   c                  ó2   — t          ddgg¦  «        d         S )Nr¡   r„   )r¡   gÍÌÌÌÌÌ@rÙ   rl   rm   rn   ry   ztest_errors.<locals>.<lambda>Z  r<  rm   c                  ó&   — t          ddd¬¦  «        S )Nrƒ   r¦   T)r\   rô  )r9   rl   rm   rn   ry   ztest_errors.<locals>.<lambda>[  s   € �z¨!¨q¸DÐAÑAÔA€ rm   c                  óL   — t          ddg¦  «                             dd¦  «        S )Nr¡   r„   r¦   r§   )r1   rà  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>\  s    € �v q¨! f™~œ~×5Ò5°a¸Ñ;Ô;€ rm   c                  óv   — t          ddgddgg¦  «                             ddgt          ddg¦  «        ¦  «        S ©Nr¡   r„   rƒ   r¦   r   )r1   Úcopyin_matrixrl   rm   rn   ry   ztest_errors.<locals>.<lambda>^  s9   € •˜˜A˜  A Ð'Ñ(Ô(×6Ò6¸¸1°v½vÀqÈ!Àf¹~¼~ÑNÔN€ rm   c                  óp   — t          ddgddgg¦  «                             ddgt          ¦   «         ¦  «        S rA  )r1   Úcopyin_listÚsetrl   rm   rn   ry   ztest_errors.<locals>.<lambda>_  s=   € �f q¨! f¨q°!¨fÐ%5Ñ6Ô6×BÒBÀAØðDÝ‰uŒuñô € rm   c                  óP   — t          g d¢g d¢g¦  «                             ¦   «         S )Nr¥   )r„   rƒ   r   ©r1   r  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>a  s'   € ­°°°¸I¸I¸IÐ0FÑ)GÔ)G×)KÒ)KÑ)MÔ)M€ rm   c                  ót   — t          ddddg¦  «                             t          ddgddgg¦  «        ¦  «        S rÓ  )r1   Úrow_joinrl   rm   rn   ry   ztest_errors.<locals>.<lambda>c  s9   € •�q˜!˜a ˜VÑ$Ô$×-Ò-­f°q¸!°f¸qÀ!¸fÐ5EÑ.FÔ.FÑGÔG€ rm   c                  óp   — t          ddg¦  «                             t          ddgddgg¦  «        ¦  «        S rÓ  )r1   Úcol_joinrl   rm   rn   ry   ztest_errors.<locals>.<lambda>e  s3   € �F A q 6™NœN×3Ò3µF¸QÀ¸FÀQÈÀFÐ;KÑ4LÔ4LÑMÔM€ rm   c                  óp   — t          dg¦  «                             dt          ddgddgg¦  «        ¦  «        S rÓ  )r1   Ú
row_insertrl   rm   rn   ry   ztest_errors.<locals>.<lambda>f  óD   € �v q c™{œ{×5Ò5°a½À!ØðBØ�1ˆvðAñ :ô :ñ  ô  € rm   c                  óp   — t          dg¦  «                             dt          ddgddgg¦  «        ¦  «        S rÓ  )r1   Ú
col_insertrl   rm   rn   ry   ztest_errors.<locals>.<lambda>h  rN  rm   c                  óH   — t          ddg¦  «                             ¦   «         S r    r<  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>j  s   € ­°°A°©¬×)=Ò)=Ñ)?Ô)?€ rm   c                  óH   — t          dg¦  «                             d¦  «        S rC  )r1   rç  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>k  s   € �f a S™kœk×3Ò3°AÑ6Ô6€ rm   c                  óT   — t          ddgddgg¦  «                             dd¦  «        S ©Nr¡   r„   rƒ   r¦   r¹   )r1   Úminorrl   rm   rn   ry   ztest_errors.<locals>.<lambda>l  s+   € �v¨¨1 v°°1¨vÐ&6Ñ7Ô7×=Ò=¸aÀÑCÔC€ rm   c                  óT   — t          ddgddgg¦  «                             dd¦  «        S rT  )r1   Úminor_submatrixrl   rm   rn   ry   ztest_errors.<locals>.<lambda>m  s+   € �v¨¨1 v°°1¨vÐ&6Ñ7Ô7×GÒGÈÈ1ÑMÔM€ rm   c                  óJ   — t          g d¢¦  «                             d¦  «        S ©Nr¥   r¡   ©r1   Úcrossrl   rm   rn   ry   ztest_errors.<locals>.<lambda>n  s    € �f Y Y YÑ/Ô/×5Ò5°aÑ8Ô8€ rm   c                  óJ   — t          g d¢¦  «                             d¦  «        S rY  ©r1   Údotrl   rm   rn   ry   ztest_errors.<locals>.<lambda>o  s    € �f Y Y YÑ/Ô/×3Ò3°AÑ6Ô6€ rm   c                  óh   — t          g d¢¦  «                             t          ddg¦  «        ¦  «        S )Nr¥   r¡   r„   r]  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>p  s*   € �v i i iÑ0Ô0×4Ò4µV¸QÀ¸F±^´^ÑDÔD€ rm   c                  óJ   — t          ddg¦  «                             g ¦  «        S r    r]  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>q  s   € �v q¨! f™~œ~×1Ò1°"Ñ5Ô5€ rm   c                  óJ   — t          ddg¦  «                             d¦  «        S )Nr¡   r„   rZ   r]  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>r  s   € �f a¨ V™nœn×0Ò0°Ñ5Ô5€ rm   c                  óN   — t          ddg¦  «                             g d¢¦  «        S )Nr¡   r„   r¥   r]  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>s  s"   € �v q¨! f™~œ~×1Ò1°)°)°)Ñ<Ô<€ rm   c                  óH   — t          g d¢¦  «                             ¦   «         S )Nr¥   )r1   r   rl   rm   rn   ry   ztest_errors.<locals>.<lambda>t  s   € ­°	°	°	Ñ):Ô):×)>Ò)>Ñ)@Ô)@€ rm   c                  óP   — t          ddgddgg¦  «                             ¦   «         S rÓ  )r1   Ú
normalizedrl   rm   rn   ry   ztest_errors.<locals>.<lambda>u  ó'   € �v¨¨1 v°°1¨vÐ&6Ñ7Ô7×BÒBÑDÔD€ rm   c                  óL   — t          ddg¦  «                             d¬¦  «        S )Nr¡   r„   znot a methodrv  rG  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>v  s!   € �v q¨! f™~œ~×1Ò1¸Ð1ÑHÔH€ rm   c                  óH   — t          ddg¦  «                             ¦   «         S r    ©r1   Ú
inverse_GErl   rm   rn   ry   ztest_errors.<locals>.<lambda>w  ó   € ­°°A°©¬×)BÒ)BÑ)DÔ)D€ rm   c                  óP   — t          ddgddgg¦  «                             ¦   «         S r    ri  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>x  rf  rm   c                  óH   — t          ddg¦  «                             ¦   «         S r    ©r1   Úinverse_ADJrl   rm   rn   ry   ztest_errors.<locals>.<lambda>y  s   € ­°°A°©¬×)CÒ)CÑ)EÔ)E€ rm   c                  óP   — t          ddgddgg¦  «                             ¦   «         S r    rn  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>z  s'   € �v¨¨1 v°°1¨vÐ&6Ñ7Ô7×CÒCÑEÔE€ rm   c                  óH   — t          ddg¦  «                             ¦   «         S r    )r1   Ú
inverse_LUrl   rm   rn   ry   ztest_errors.<locals>.<lambda>{  rk  rm   c                  óH   — t          ddg¦  «                             ¦   «         S r    rˆ  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>|  s   € ­°°A°©¬×)DÒ)DÑ)FÔ)F€ rm   c                  óH   — t          ddg¦  «                             ¦   «         S r    ©r1   r5  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>}  s   € ­°°A°©¬×);Ò);Ñ)=Ô)=€ rm   c                  óT   — t          ddgddgg¦  «                             d¬¦  «        S )Nr¡   r„   rƒ   r¦   zNot a real methodrv  ru  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>  s-   € •˜˜A˜  A Ð'Ñ(Ô(×,Ò,Ð4GÐ,ÑHÔH€ rm   c                  ó`   — t          g d¢g d¢g d¢g d¢g¦  «                             d¬¦  «        S )NrÍ  rÐ  rÑ  rÒ  zNot function©r”  ru  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>�  sC   € •˜˜˜ l l lØˆˆÐ)Ð)Ð)ð+ñ ,ô ,ß,/ªC¸>¨CÑ,JÔ,Jð rm   c                  ó`   — t          g d¢g d¢g d¢g d¢g¦  «                             d¬¦  «        S )NrÍ  rÐ  rÑ  rÒ  Frx  ru  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>„  sC   € •˜˜˜ l l lØˆˆÐ)Ð)Ð)ð+ñ ,ô ,ß,/ªC¸5¨CÑ,AÔ,Að rm   c                  ón   — t          t          ddgddgg¦  «        t          ddgddgg¦  «        ¦  «        S rÓ  ©r6   r1   rl   rm   rn   ry   ztest_errors.<locals>.<lambda>‡  s:   € •�  A ¨¨A¨Ð/Ñ0Ô0µ&¸1¸a¸&À1ÀaÀ&Ð9IÑ2JÔ2JÑKÔK€ rm   c                  óH   — t          t          ddgddgg¦  «        g ¦  «        S rÓ  r{  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>ˆ  s%   € �w¥v°°1¨v¸¸1°vÐ.>Ñ'?Ô'?ÀÑDÔD€ rm   c                  óB   — t          t          d¦  «        dz  d¦  «        S )Nr^   r„   rZ   )r6   r   rl   rm   rn   ry   ztest_errors.<locals>.<lambda>‰  s   € �w¥v¨c¡{¤{°A¡~°sÑ;Ô;€ rm   c                  ó,   — t          d¦  «        d         S )Nrƒ   )r¹   r„   rØ  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>Š  ó   € �s 1™vœv dœ|€ rm   c                  ó,   — t          d¦  «        d         S )Nrƒ   )r„   r¹   rØ  rl   rm   rn   ry   ztest_errors.<locals>.<lambda>‹  r  rm   rÏ  c                  ó.   •— ‰                       d¦  «        S )Nzmethod=LU_decomposition())r5  r  s   €rn   ry   ztest_errors.<locals>.<lambda>�  s   ø€ ˜qŸušuÐ%@ÑAÔA€ rm   )rÍ   rÍ   rÍ   r¥   ©r„   rƒ   r¦   r¸   c                  ó0   •— ‰                       d‰¦  «        S )NgÍÌÌÌÌÌ@)rM  ©rÄ   ÚVs   €€rn   ry   ztest_errors.<locals>.<lambda>�  s   ø€ ˜qŸ|š|¨C°Ñ3Ô3€ rm   c                  ó0   •— ‰                       d‰¦  «        S )NgÍÌÌÌÌÌÀ)rP  r„  s   €€rn   ry   ztest_errors.<locals>.<lambda>’  s   ø€ ˜qŸ|š|¨D°!Ñ4Ô4€ rm   )rN   r  r¦  r'   r­  r)   r1   r„  s   @@rn   Útest_errorsr‡  W  sU  øø€ Ý
�:Ð4Ð4Ñ5Ô5Ð5Ý
�:Ð7Ð7Ñ8Ô8Ð8Ý
�:Ð7Ð7Ñ8Ô8Ð8Ý
�:ÐAÐAÑBÔBÐBÝ
�:Ð;Ð;Ñ<Ô<Ð<Ý
�:ØNÐNñPô Pð På
�9ð ð ñ ô ð å
ÕÐ!MÐ!MÑNÔNÐNÝ
�:ØGÐGñIô Ið Iå
ÝÐMÐMñOô Oð Oå
�:ð ð ñ ô ð å
�:ð ð ñ ô ð å
ÕÐ!?Ð!?Ñ@Ô@Ð@Ý
�9Ð6Ð6Ñ7Ô7Ð7Ý
�:ÐCÐCÑDÔDÐDÝ
�:ÐMÐMÑNÔNÐNÝ
�9Ð8Ð8Ñ9Ô9Ð9Ý
�9Ð6Ð6Ñ7Ô7Ð7Ý
�:ÐDÐDÑEÔEÐEÝ
�:Ð5Ð5Ñ6Ô6Ð6Ý
�9Ð5Ð5Ñ6Ô6Ð6Ý
�:Ð<Ð<Ñ=Ô=Ð=Ý
ÕÐ!@Ð!@ÑAÔAÐAÝ
�:ÐDÐDÑEÔEÐEÝ
�:ÐHÐHÑIÔIÐIÝ
ÕÐ!DÐ!DÑEÔEÐEÝ
�:ÐDÐDÑEÔEÐEÝ
ÕÐ!EÐ!EÑFÔFÐFÝ
�:ÐEÐEÑFÔFÐFÝ
ÕÐ!DÐ!DÑEÔEÐEÝ
ÕÐ!FÐ!FÑGÔGÐGÝ
ÕÐ!=Ð!=Ñ>Ô>Ð>Ý
�:ØHÐHñJô Jð Jå
�:ð	Kð 	KñLô Lð Lõ �:ð	Bð 	BñCô Cð Cõ �:ØKÐKñMô Mð Må
�:ÐDÐDÑEÔEÐEÝ
�:Ð;Ð;Ñ<Ô<Ð<Ý
�:Ð+Ð+Ñ,Ô,Ð,Ý
�:Ð+Ð+Ñ,Ô,Ð,ÝÐNÑOÔO€AÝ
�:ÐAÐAÐAÐAÑBÔBÐBÝ���ˆ~ÑÔ€AÝ�	�	�	˜9˜9˜9 i i iÐ0Ñ1Ô1€AÝ
�:Ð3Ð3Ð3Ð3Ð3Ñ4Ô4Ð4Ý�	�	�	˜9˜9˜9 i i iÐ0Ñ1Ô1€AÝ
�:Ð4Ð4Ð4Ð4Ð4Ñ5Ô5Ð5Ð5Ð5rm   c                  ór  — t          t          ¦   «         ¦  «        dk    sJ ‚t          t          ddgg¦  «        ¦  «        t          t          dgdgg¦  «        ¦  «        cxk    rdk    sn J ‚t          t          ddd„ ¦  «        ¦  «        t          t          ddd„ ¦  «        ¦  «        cxk    rdk    sn J ‚t          t          g d¢g d¢g¦  «        ¦  «        dk    sJ ‚t          dg¦  «        t          dgg¦  «        k    sJ ‚t          ¦   «         rJ ‚t          ¦   «         t          g ¦  «        k    sJ ‚d S )	Nr   r¡   r„   c                 ó   — dS r€   rl   rv   s     rn   ry   ztest_len.<locals>.<lambda>—  s   € ¨€ rm   c                 ó   — dS r€   rl   rv   s     rn   ry   ztest_len.<locals>.<lambda>˜  s   €  a€ rm   r»   r¸   r§   )r7  r1   rl   rm   rn   Útest_lenr‹  ”  sX  € Ý�v‰xŒx‰=Œ=˜AÒÐÐÐÝ�v˜˜1�v�hÑÔÑ Ô ¥C­°°°a°S¨zÑ(:Ô(:Ñ$;Ô$;Ð@Ð@Ò@Ð@¸qÒ@Ð@Ð@Ð@Ð@Ð@Ý�v�a˜˜N˜NÑ+Ô+Ñ,Ô,Ý�F�1�a˜˜Ñ(Ô(Ñ)Ô)ð/ð /ò /ð /Ø-.ò/ð /ð /ð /ð /ð /å�v�y�y�y ) ) )Ð,Ñ-Ô-Ñ.Ô.°!Ò3Ð3Ð3Ð3Ý�1�#‰;Œ;�& 1 # ™-œ-Ò'Ð'Ð'Ð'Ý‰xŒxÐÐˆ<Ý‰8Œ8•v˜b‘z”zÒ!Ð!Ð!Ð!Ð!Ð!rm   c            
      óŽ  — t          ddt          ft          ddfddt          dz  ff¦  «        } |                      t          ¦  «        t          t          dt          z  t          dz  dz  ft          t          z  dt          z  dt          z  fdt          z  dt          z  t          dz  dz  ff¦  «        k    sJ ‚|                      t          ¦  «        t          t          dt          z  t          t          z  ft          dz  dz  dt          z  dt          z  fdt          z  dt          z  t          t          dz  z  ff¦  «        k    sJ ‚d S )Nr¡   r¦   r„   rÍ   r¹   rƒ   )r1   r^   r_   r   rñ   s    rn   Útest_integrater�  Ÿ  s  € Ý��A•q�	�A˜q !˜9 r¨1­a°©d mÐ4Ñ5Ô5€AØ�;Š;•q‰>Œ>Ý•�A•a‘C�˜A™˜a™Ð ¥1¥Q¡3¨­!©¨Q­q©S /°Bµq±D¸!½A¹#½qÀ!¹tÀA¹vÐ3FÐGÑHÔHòIð Ið Ið Ià�;Š;•q‰>Œ>Ý•�A•a‘C��1™�¥ 1¡ Q¡¨­!©¨Q­q©SÐ1°Bµq±D¸!½A¹#½qÅÀAÁ¹vÐ3FÐGÑHÔHòIð Ið Ið Ið Ið Irm   c                  ó  — t          ddt          t          ¦  «        t          z  ft          ddfddt          dz  dz   ff¦  «        } |                      t          d¦  «        t          dt          ddfdf¦  «        k    sJ ‚d S )	Nr¡   r¦   r„   rÍ   r¹   r   )r¡   r¦   r¡   )rÍ   r¹   r¡   )r1   r   r^   r_   r�  rñ   s    rn   Ú
test_limitr�  §  st   € Ý��A•s�1‘v”v�a‘xÐ ¥1 a¨ )¨b°!µQ¸±T¸A±XÐ->Ð?Ñ@Ô@€AØ�7Š7•1�a‰=Œ=�F Iµ°1°a¨y¸*Ð#EÑFÔFÒFÐFÐFÐFÐFÐFrm   c            	      óT  — t          ddt          ft          ddfddt          dz  dz   ff¦  «        } t          |                      t          ¦  «        t          | ¦  «        ¦  «        sJ ‚|                      t          ¦  «        t          dddddt          z  ff¦  «        k    sJ ‚|                      t          ¦  «        t          d	¦  «        k    sJ ‚t	          | t          ¦  «        t          dddddt          z  ff¦  «        k    sJ ‚t	          | t          ¦  «        t          d	¦  «        k    sJ ‚|                      ¦   «         }t          |                     t          ¦  «        t          |¦  «        ¦  «        sJ ‚|                     t          ¦  «        t          dddddt          z  ff¦  «        k    sJ ‚|                     t          ¦  «        t          d	¦  «        k    sJ ‚t	          |t          ¦  «        t          dddddt          z  ff¦  «        k    sJ ‚t	          |t          ¦  «        t          d	¦  «        k    sJ ‚|                      t          d
¬¦  «        t          | t          d
¬¦  «        k    sJ ‚t	          | t          d
¬¦  «        t          | t          d
¬¦  «        k    sJ ‚d S )Nr¡   r¦   r„   rÍ   r¹   rì   rÀ   r   )rÀ   r:  rÀ   FrŸ  )	r?   r^   r_   rÒ   r   r†   rª  r@   rW   )rò   ÚA_imms     rn   Ú	test_diffr’  ¬  sU  € Ý˜Q ¥1˜I­¨1¨a y°2°q½!¸Q¹$À¹(Ð2CÐDÑEÔE€AÝ�a—f’f�Q‘i”i¥ a¡¤Ñ)Ô)Ð)Ð)Ð)Ø�6Š6•!‰9Œ9Õ*¨I°yÀ1ÀaÈÍ1ÉÀ+Ð+NÑOÔOÒOÐOÐOÐOØ�6Š6•!‰9Œ9Õ*Ð+LÑMÔMÒMÐMÐMÐMå�•1‰:Œ:Õ+¨Y¸	ÀAÀqÈ!ÍAÉ#À;Ð,OÑPÔPÒPÐPÐPÐPÝ�•1‰:Œ:Õ+Ð,MÑNÔNÒNÐNÐNÐNà�NŠNÑÔ€EÝ�e—j’j¥‘m”m¥T¨%¡[¤[Ñ1Ô1Ð1Ð1Ð1Ø�:Š:•a‰=Œ=Õ0°)¸YÈÈAÈqÕQRÉsÈÐ1TÑUÔUÒUÐUÐUÐUØ�:Š:•a‰=Œ=Õ0Ð1RÑSÔSÒSÐSÐSÐSå�•q‰>Œ>Õ1°9¸iÈ!ÈQÐPQÕRSÑPSÈÐ2UÑVÔVÒVÐVÐVÐVÝ�•q‰>Œ>Õ1Ð2SÑTÔTÒTÐTÐTÐTà�6Š6•!˜eˆ6Ñ$Ô$­¸½1ÀuÐ(MÑ(MÔ(MÒMÐMÐMÐMÝ�•1˜uÐ%Ñ%Ô%­¸½AÈÐ)NÑ)NÔ)NÒNÐNÐNÐNÐNÐNrm   c                  ór  ‡— t          t          t          gt          t          gg¦  «        } |                      | ¦  «        t          ddgddggddgddgggddgddggddgddgggg¦  «        k    sJ ‚t          | | ¦  «        t          ddgddggddgddgggddgddggddgddgggg¦  «        k    sJ ‚|                      ¦   «         }|                     |¦  «        t          ddgddggddgddgggddgddggddgddgggg¦  «        k    sJ ‚t          ||¦  «        t          ddgddggddgddgggddgddggddgddgggg¦  «        k    sJ ‚|                      t          ¦  «        t          ddgddgg¦  «        k    sJ ‚t          t          t          g¦  «        }|                      |¦  «        t          j        dddd¦  «        k    sJ ‚|                      | ¦  «        t          ddgddggddgddgggddgddggddgddgggg¦  «        k    sJ ‚|                     t          t          gg¦  «        }|j        dk    sJ ‚|t          dgdggdgdggg¦  «        k    sJ ‚t          d¦  «        } |t          t          t          ¦  «        Š‰                     t          t          t          gg¦  «        t          ‰                     t          ¦  «        ‰                     t          ¦  «        ‰                     t          ¦  «        g¦  «        k    sJ ‚‰                     t          t          t          gdf¦  «        t          ‰                     t          d¦  «        ‰                     t          t          ¦  «        ‰                     t          t          ¦  «        g‰                     t          t          ¦  «        ‰                     t          d¦  «        ‰                     t          t          ¦  «        g‰                     t          t          ¦  «        ‰                     t          t          ¦  «        ‰                     t          d¦  «        gg¦  «        k    sJ ‚t          t          ¦  «        t          t          ¦  «        z  }|                     t          t          gg¦  «        t          t!          t          ¦  «        t          t          ¦  «        z  t          t          ¦  «        t          t          ¦  «        z  g¦  «        k    sJ ‚|                     t          t          t          ff¦  «        t          t!          t          ¦  «        t          t          ¦  «        z  t          t          ¦  «        t          t          ¦  «        z  g¦  «        k    sJ ‚|                     t          t          t          ff¦  «        t          t          t          ¦  «         t          t          ¦  «        z  t!          t          ¦  «        t          t          ¦  «        z  g¦  «        k    sJ ‚|                     t          t          fft          t          gg¦  «        t          t!          t          ¦  «        t          t          ¦  «        z  t          t          ¦  «         t          t          ¦  «        z  gt          t          ¦  «        t          t          ¦  «        z  t!          t          ¦  «        t          t          ¦  «        z  gg¦  «        k    sJ ‚‰                     t          ¦  «                             t          ¦  «                             t          ¦  «        ‰                     t          t          t          ffd¦  «        d         k    sJ ‚‰                     t          ¦  «                             t          ¦  «                             t          ¦  «        ‰                     t          t          t          ffd¦  «        d         k    sJ ‚‰                     t          t          t          ggt          t          t          ff¦  «        t          ˆfd	„t          t          t          fD ¦   «         ¦  «        k    sJ ‚t          j        t#          t          t          gg¦  «        ¦  «        }t%          |t          ¦  «        sJ ‚|t#          ddgg¦  «        k    sJ ‚t          dz                       t#          t          t          gg¦  «        ¦  «        }t%          |t          ¦  «        sJ ‚|t#          dt          dz  z  dgg¦  «        k    sJ ‚d S )
Nr¡   r   r„   )r„   r„   r¡   r  rƒ   rë   r\  c                 óT   •‡— g | ]#Šˆˆfd „t           t          t          fD ¦   «         ‘Œ$S )c                 ó`   •— g | ]*}‰                      |¦  «                              ‰¦  «        ‘Œ+S rl   )r   )rˆ   rw   Úfxyzrx   s     €€rn   r0  z2test_diff_by_matrix.<locals>.<listcomp>.<listcomp>í  s2   ø€ Ð:cÐ:cÐ:cÐTU¸4¿9º9ÀQ¹<¼<×;LÒ;LÈQÑ;OÔ;OÐ:cÐ:cÐ:crm   )r^   r_   r`   )rˆ   rx   r–  s    @€rn   r0  z'test_diff_by_matrix.<locals>.<listcomp>í  s=   øø€ Ð9wÐ9wÐ9wÐhiÐ:cÐ:cÐ:cÐ:cÐ:cÕZ[Õ]^Õ`aÐYbÐ:cÑ:cÔ:cÐ9wÐ9wÐ9wrm   )r?   r^   r_   r`   ra   r   rV   rª  rZ   r@   r[   r>   rŒ   r   r   r   r   r1   rÒ   )rò   r‘  ÚBÚdBr  ÚexprÚresr–  s          @rn   Útest_diff_by_matrixr›  Á  s¸  ø€ õ 	�Q¥˜F¥Q­ FÐ+Ñ,Ô,€AØ�6Š6�!‰9Œ9� ! Q ¨!¨Q¨Ð 0°A°q°6¸A¸q¸6Ð2BÐCÈÈ1ÀvÐPQÐSTÈvÐFVÐZ[Ð]^ÐY_ÐbcÐefÐagÐXhÐEiÐjÑkÔkÒkÐkÐkÐkÝ��1‰:Œ:� 1 a &¨1¨a¨&Ð!1°Q¸°F¸QÀ¸FÐ3CÐ DÈÈAÈÐQRÐTUÐPVÐGWÐ[\Ð^_ÐZ`ÐcdÐfgÐbhÐYiÐFjÐkÑlÔlÒlÐlÐlÐlà�NŠNÑÔ€EØ�:Š:�eÑÔ¥¨!¨Q¨°!°Q°Ð(8¸A¸q¸6ÀAÀqÀ6Ð:JÐ'KÐPQÐSTÈvÐXYÐ[\ÐW]ÐN^ÐbcÐefÐagÐjkÐmnÐioÐ`pÐMqÐ&rÑ sÔ sÒsÐsÐsÐsÝ��uÑÔ¥¨1¨a¨&°1°a°&Ð)9¸QÀ¸FÀQÈÀFÐ;KÐ(LÐQRÐTUÐPVÐYZÐ\]ÐX^ÐO_ÐcdÐfgÐbhÐklÐnoÐjpÐaqÐNrÐ'sÑ!tÔ!tÒtÐtÐtÐtð �6Š6•!‰9Œ9Õ*¨Q°¨F°Q¸°FÐ+;Ñ<Ô<Ò<Ð<Ð<Ð<å�a¥˜VÑ$Ô$€AØ�6Š6�!‰9Œ9�œ A q¨!¨QÑ/Ô/Ò/Ð/Ð/Ð/Ø�6Š6�!‰9Œ9� ! Q ¨!¨Q¨Ð 0°A°q°6¸A¸q¸6Ð2BÐCÈÈ1ÀvÐPQÐSTÈvÐFVÐZ[Ð]^ÐY_ÐbcÐefÐagÐXhÐEiÐjÑkÔkÒkÐkÐkÐkð 
�Š•!•Q��Ñ	Ô	€BØŒ8�yÒ Ð Ð Ð Ø•˜!˜˜q˜c˜
 a S¨1¨# JÐ/Ñ0Ô0Ò0Ð0Ð0Ð0å�‰Œ€AØˆ1�Q••1‰:Œ:€DØ�9Š9•q�!�Q�i�[Ñ!Ô!¥U¨D¯IªIµa©L¬L¸$¿)º)ÅA¹,¼,ÈÏ	Ê	ÕRSÉÌÐ+UÑ%VÔ%VÒVÐVÐVÐVØ�9Š9•q�!�Q�i �^Ñ$Ô$­Ø	�Š•1�a‰Œ˜$Ÿ)š)¥A¥q™/œ/¨4¯9ª9µQ½©?¬?Ð;Ø	�Š•1•a‰Œ˜$Ÿ)š)¥A q™/œ/¨4¯9ª9µQ½©?¬?Ð;Ø	�Š•1•a‰Œ˜$Ÿ)š)¥A¥q™/œ/¨4¯9ª9µQ¸©?¬?Ð;ð/ñ )ô )ò ð ð ð õ �q‰6Œ6•#•a‘&”&‰=€DØ�9Š9•q�!�f�XÑÔ¥%­­Q©¬µµA±´©½½A¹¼½sÅ1¹v¼v¹Ð(FÑ"GÔ"GÒGÐGÐGÐGØ�9Š9•Q�!�Q˜˜	Ñ"Ô"¥e­Sµ©V¬VµC½±F´F©]½CÅ¹F¼FÅ3ÅqÁ6Ä6¹MÐ,JÑ&KÔ&KÒKÐKÐKÐKØ�9Š9•Q�!�Q˜˜	Ñ"Ô"¥e­cµ!©f¬f¨WµS½±V´V©^½SÅ¹V¼VÅCÍÁFÄF¹]Ð,KÑ&LÔ&LÒLÐLÐLÐLØ�9Š9•q�!�f�Y¥!¥Q  Ñ)Ô)­UµS½±V´V½CÅ¹F¼F±]ÅSÍÁVÄVÀGÍCÕPQÉFÌFÁNÐ4SÕVYÕZ[ÑV\ÔV\Õ]`ÕabÑ]cÔ]cÑVcÕehÕijÑekÔekÕloÕpqÑlrÔlrÑerÐUsÐ3tÑ-uÔ-uÒuÐuÐuÐuð �9Š9•Q‰<Œ<×Ò�QÑÔ×$Ò$¥QÑ'Ô'¨4¯9ª9µq½!½Q°i°\À1Ñ+EÔ+EÀgÔ+NÒNÐNÐNÐNØ�9Š9•Q‰<Œ<×Ò�QÑÔ×$Ò$¥QÑ'Ô'¨4¯9ª9µq½!½Q°i°\À1Ñ+EÔ+EÀgÔ+NÒNÐNÐNÐNØ�9Š9•q�!�Q�i�[¥A¥q­! 9 ,Ñ/Ô/µ5Ð9wÐ9wÐ9wÐ9wÕnoÕqrÕtuÐmvÐ9wÑ9wÔ9wÑ3xÔ3xÒxÐxÐxÐxõ Œ&•�!�Q˜˜Ñ!Ô!Ñ
"Ô
"€CÝ�cÕ/Ñ0Ô0Ð0Ð0Ð0Ø•&˜1˜a˜&˜Ñ"Ô"Ò"Ð"Ð"Ð"Ýˆa‰4�+Š+•f�q¥!˜f˜XÑ&Ô&Ñ
'Ô
'€CÝ�cÕ/Ñ0Ô0Ð0Ð0Ð0Ø•&˜1�Q ™T™6 1˜+˜Ñ'Ô'Ò'Ð'Ð'Ð'Ð'Ð'rm   c            	      ó  ‡ — t          ddt          ft          ddfddt          dz  dz   ff¦  «        Š t          t          ˆ fd„¦  «          t          ‰ d¦  «        t          ¦  «        t          dd	d
d
dt          z  ff¦  «        k    sJ ‚d S )Nr¡   r¦   r„   rÍ   r¹   c                  ó   •— ‰ j         S rt   )Únonexistantattributerñ   s   €rn   ry   ztest_getattr.<locals>.<lambda>ú  s
   ø€  1Ô#9€ rm   r   rì   rÀ   r   )r1   r^   r_   rN   r7  Úgetattrrñ   s   @rn   Útest_getattrr   ø  s�   ø€ Ý��A•q�	�A˜q !˜9 r¨1­a°©d°Q©hÐ&7Ð8Ñ9Ô9€AÝ
�>Ð9Ð9Ð9Ð9Ñ:Ô:Ð:Ø�7�1�fÑÔ�aÑ Ô ¥F¨I°yÀ1ÀaÈÍ1ÉÀ+Ð+NÑ$OÔ$OÒOÐOÐOÐOÐOÐOrm   c                  óü   — t          g d¢g d¢g d¢g¦  «        } | j        sJ ‚| j        } | j        sJ ‚d| d<   | j        du sJ ‚t          g d¢g d¢g d¢g¦  «        } | j        rJ ‚t	          dd	¦  «        } | j        sJ ‚d S )
N)rƒ   r¦   r¡   )r„   r¦   r¹   r»   r¡   )r   rä   Frß  r¹   r„   )r1   Úis_upper_hessenbergr¨  Úis_lower_hessenbergr>   rñ   s    rn   Útest_hessenbergr¤  þ  sµ   € Ý�	�	�	˜9˜9˜9 i i iÐ0Ñ1Ô1€AØÔ Ð Ð Ð Ø	Œ€AØÔ Ð Ð Ð Ø€A€e�HØÔ  EÐ)Ð)Ð)Ð)å�	�	�	˜9˜9˜9 i i iÐ0Ñ1Ô1€AØÔ$Ð$Ð$Ð$åˆa�‰Œ€AØÔ Ð Ð Ð Ð Ð rm   c            	      ó–  — t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          dt          z   dfdf¦  «                             d	¬
¦  «        t          t          dt          z   ¦  «        dgddgg¦  «        k    sJ ‚t          d¦  «        } |                      d	¬
¦  «        }|t          ddgddt          d¦  «        z  t          z  gg¦  «        k    sJ ‚||j        z  | k    sJ ‚t          d¦  «        } |                      ¦   «         }||j        z  | k    sJ ‚|j        sJ ‚|t          g d¢g d¢g d¢g¦  «        k    sJ ‚t          ddt          z  ddt          z  z   fdt          z  ddt          z   fddt          z  z
  dt          z
  dff¦  «        } |                      ¦   «          	                    ¦   «         t          dt          ddfdt          z
  ddff¦  «        k    sJ ‚t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          t          d„ ¦  «         t          dt          z   dfdf¦  «                             d	¬
¦  «        t          t          dt          z   ¦  «        dgddgg¦  «        k    sJ ‚t          d¦  «        } |                      d	¬
¦  «        }|t          ddgddt          d¦  «        z  t          z  gg¦  «        k    sJ ‚||j        z  | k    sJ ‚t          d¦  «        } |                      ¦   «         }||j        z  | k    sJ ‚|j        sJ ‚|t          g d¢g d¢g d¢g¦  «        k    sJ ‚t          ddt          z  ddt          z  z   fdt          z  ddt          z   fddt          z  z
  dt          z
  dff¦  «        } |                      ¦   «         t          dt          ddfdt          z
  ddff¦  «        k    sJ ‚d S )Nc                  óD   — t          d¦  «                             ¦   «         S ©Nr°   ©r1   Úcholeskyrl   rm   rn   ry   ztest_cholesky.<locals>.<lambda>  s   € ­°©¬×)@Ò)@Ñ)BÔ)B€ rm   c                  óD   — t          d¦  «                             ¦   «         S ©N©r°   )rƒ   r¦   r¨  rl   rm   rn   ry   ztest_cholesky.<locals>.<lambda>  ó   € �vÐ&6Ñ7Ô7×@Ò@ÑBÔB€ rm   c                  ó\   — t          dt          z   dfdf¦  «                             ¦   «         S ©Nr¹   r   r¾   )r1   r
   r©  rl   rm   rn   ry   ztest_cholesky.<locals>.<lambda>  s'   € �v¨­A©¨q z°6Ð&:Ñ;Ô;×DÒDÑFÔF€ rm   c                  óD   — t          d¦  «                             ¦   «         S ©N©)r¡   r¹   )r¹   r¡   r¨  rl   rm   rn   ry   ztest_cholesky.<locals>.<lambda>  r­  rm   c                  óH   — t          d¦  «                             d¬¦  «        S ©Nr¬  F©Ú	hermitianr¨  rl   rm   rn   ry   ztest_cholesky.<locals>.<lambda>  s    € �vÐ&6Ñ7Ô7×@Ò@È5Ð@ÑQÔQ€ rm   r¹   r   r¾   Frµ  r¡   r²  r„   r§   ))é   rÎ   rC  )rÎ   rÊ   r   )rC  r   rÂ  râ  )rƒ   rƒ   r   )rä   r¡   rƒ   r¦   r  rä   rÂ  r  rƒ   c                  óD   — t          d¦  «                             ¦   «         S r§  ©r2   r©  rl   rm   rn   ry   ztest_cholesky.<locals>.<lambda>!  s   € ­°fÑ)=Ô)=×)FÒ)FÑ)HÔ)H€ rm   c                  óD   — t          d¦  «                             ¦   «         S r«  r¹  rl   rm   rn   ry   ztest_cholesky.<locals>.<lambda>"  ó   € �|Ð,<Ñ=Ô=×FÒFÑHÔH€ rm   c                  ó\   — t          dt          z   dfdf¦  «                             ¦   «         S r¯  )r2   r
   r©  rl   rm   rn   ry   ztest_cholesky.<locals>.<lambda>#  s'   € �|¨aµ!©e°Q¨Z¸Ð,@ÑAÔA×JÒJÑLÔL€ rm   c                  óD   — t          d¦  «                             ¦   «         S r±  r¹  rl   rm   rn   ry   ztest_cholesky.<locals>.<lambda>$  r»  rm   c                  óH   — t          d¦  «                             d¬¦  «        S r´  r¹  rl   rm   rn   ry   ztest_cholesky.<locals>.<lambda>%  s!   € �|Ð,<Ñ=Ô=×FÒFÐQVÐFÑWÔW€ rm   )rN   r)   r  r1   r
   r©  r   r¨  r…  r   r2   )rò   r  s     rn   Útest_choleskyr¿    sR  € Ý
ÕÐ!BÐ!BÑCÔCÐCÝ
�:ÐBÐBÑCÔCÐCÝ
�:ÐFÐFÑGÔGÐGÝ
�:ÐBÐBÑCÔCÐCÝ
�:ÐQÐQÑRÔRÐRÝ�A�‘E˜1�:˜vÐ&Ñ'Ô'×0Ò0¸5Ð0ÑAÔAÅVÝ	ˆa•!‰e‰Œ�aÐ˜1˜a˜&ðM"ñ F#ô F#ò #ð #ð #ð #åÐÑ Ô €AØ	�
Š
˜Uˆ
Ñ#Ô#€AØ•˜˜A˜  A¥d¨1¡g¤g¡I­a¡KÐ 0Ð1Ñ2Ô2Ò2Ð2Ð2Ð2ØˆQŒS‰5�AŠ:ˆ:ˆ:ˆ:ÝÐ7Ñ8Ô8€AØ	�
Š
‰Œ€AØˆqŒs‰7�aŠ<ˆ<ˆ<ˆ<ØŒ:ÐÐˆ:Ø•˜	˜	˜	 9 9 9¨j¨j¨jÐ9Ñ:Ô:Ò:Ð:Ð:Ð:Ý��B•q‘D˜!˜a¥™c™'Ð" Q¥q¡S¨!¨Rµ!©VÐ$4°q¸1½Q¹3±wÀÅQÁÈÐ6KÐLÑMÔM€AØ�:Š:‰<Œ<×ÒÑ Ô ¥F¨I½¸1¸a°yÀ1ÅqÁ5È!ÈQÀ-Ð+PÑ$QÔ$QÒQÐQÐQÐQå
ÕÐ!HÐ!HÑIÔIÐIÝ
�:ÐHÐHÑIÔIÐIÝ
�:ÐLÐLÑMÔMÐMÝ
�:ÐHÐHÑIÔIÐIÝ
�:ÐWÐWÑXÔXÐXÝ˜!�a™% ˜ VÐ,Ñ-Ô-×6Ò6ÀÐ6ÑGÔGÍ6Ý	ˆa•!‰e‰Œ�aÐ˜1˜a˜&ðS"ñ L#ô L#ò #ð #ð #ð #åÐ%Ñ&Ô&€AØ	�
Š
˜Uˆ
Ñ#Ô#€AØ•˜˜A˜  A¥d¨1¡g¤g¡I­a¡KÐ 0Ð1Ñ2Ô2Ò2Ð2Ð2Ð2ØˆQŒS‰5�AŠ:ˆ:ˆ:ˆ:ÝÐ=Ñ>Ô>€AØ	�
Š
‰Œ€AØˆqŒs‰7�aŠ<ˆ<ˆ<ˆ<ØŒ:ÐÐˆ:Ø•˜	˜	˜	 9 9 9¨j¨j¨jÐ9Ñ:Ô:Ò:Ð:Ð:Ð:Ý�q˜"�Q™$  A¥a¡C¡Ð(¨1­Q©3°°2½±6Ð*:¸QÀÅ1Á¹WÀbÍ1ÁfÈbÐ<QÐRÑSÔS€AØ�:Š:‰<Œ<�6 9­q°!°Q¨i¸!½a¹%ÀÀA¸Ð"GÑHÔHÒHÐHÐHÐHÐHÐHrm   c            	      óN  — t          dd¬¦  «        } t          t          | ¦  «        t          | ¦  «        g¦  «        }t	          |                     d¦  «        ¦  «        dk    sJ ‚|                     d¦  «        t          t          | ¦  «        dz  t          | ¦  «        dz  z   t          dd¦  «        ¦  «        k    sJ ‚t          dt          dd¦  «        gg¦  «        }|                     ¦   «         t          d	t          d
d¦  «        z   t          j	        ¦  «        k    sJ ‚|                     t          ¦  «        t          |¦  «        k    sJ ‚|                     t           ¦  «        t          |¦  «        k    sJ ‚t          ddgddgg¦  «        }|                     d¦  «        dk    sJ ‚|                     d¦  «        dk    sJ ‚|                     d¦  «        dk    sJ ‚t          d¦  «                             d¦  «        t          d¦  «                             d¦  «        cxk    rdk    sn J ‚|                     t          ¦  «        dk    sJ ‚t          dt          t          g| t          j	        t           gg¦  «        }|                     d¦  «        t!          t          dd¦  «        dt#          t          ¦  «        dz  z  z   t          dz  z   | dz  z   ¦  «        k    sJ ‚t          g d¢ddt          dd¦  «        gg¦  «        }|                     d¦  «        t!          t          dd¦  «        t!          d¦  «        dz  z   ¦  «        k    sJ ‚|                     d¦  «        t          j        u sJ ‚|                     d¦  «        t!          d¦  «        dz  k    sJ ‚t          ddgddgg¦  «        }t          ddgddgg¦  «        }t          dt&           gt&          dgg¦  «        }t          ddgddgg¦  «        }||||g}t          dd¬¦  «        }dD ]ä}t)          d¦  «                             |¦  «        t          j        u sJ ‚|D ]S}	|D ]N}
|	                     |¦  «        |
                     |¦  «        z   |	|
z                        |¦  «        z
  }|dk    sJ ‚ŒOŒT||||fD ]U}t+          ||z                       |¦  «        t#          |¦  «        |                     |¦  «        z  z
  ¦  «        }|dk    sJ ‚ŒVŒåt          dddt&          z  z
  dg¦  «        }t          t          j	        dt&          z  dg¦  «        }t          g d¢¦  «        }t          ddt&          g¦  «        }t          t-          d¦  «        t          dd¦  «        dg¦  «        }|||||g}t          dd¬¦  «        }ddddt          j        t          j        t          fD �]&}|dk    r2t          g d¢¦  «                             |¦  «        t          j        u sJ ‚|dk    ro|D ]l}	|D ]g}
|	                     |¦  «        |
                     |¦  «        z   |	|
z                        |¦  «        z
  }t+          |dk    ¦  «        t          j        u sJ ‚ŒhŒm|ddddt          j        t          j        fv rX|D ]U}	t+          ||	z                       |¦  «        t#          |¦  «        |	                     |¦  «        z  z
  ¦  «        }|dk    sJ ‚ŒV�Œ(t          ddg d¢¦  «        }|                     d¦  «        dk    sJ ‚d S )Nr^   Trê  r„   r¡   rÍ   r¹   rƒ   r·  r·   r¦   r  r   Ú	frobeniusÚfroé%   )r¡   r„   r¬   rÄ  i…  r½   iI3 rä   Úalpha)rÂ  r„   r  r¬   )rä   rä   rä   g      Y@rÀ   )	r¡   rƒ   r   r  rä   r   rƒ   r·   r§   )r   r1   r   r   r&   Únormr   r   r   r  r   Úmaxrù  r5   r_   r   r   r­   r¶  r
   r>   r%   r   ÚInfinityÚNegativeInfinityÚtrue)r^   r¢   rò   r—  r0  r6  r  rÄ  Úorderr›  rœ  ÚdifrÄ   rZ   r[   r\   r]   Úes                     rn   Útest_matrix_normrÍ  5  sá  € õ 	ˆs˜ÐÑÔ€AÝ•�A‘”�˜A™œÐÑ Ô €AÝ�A—F’F˜1‘I”IÑÔ !Ò#Ð#Ð#Ð#Ø�6Š6�"‰:Œ:��S ™VœV R™Z­#¨a©&¬&°"©*Ñ4µh¸qÀ"±o´oÑFÔFÒFÐFÐFÐFõ 	�•H˜Q ‘N”NÐ#Ð$Ñ%Ô%€AØ�6Š6‰8Œ8•s˜2¥¨¨A¡¤Ñ.µ´Ñ7Ô7Ò7Ð7Ð7Ð7Ø�6Š6•"‰:Œ:�˜Q™œÒÐÐÐØ�6Š6•2�#‰;Œ;�#˜a™&œ&Ò Ð Ð Ð õ 	��A�˜˜A˜ÐÑ Ô €AØ�6Š6�!‰9Œ9˜Š>ˆ>ˆ>ˆ>Ø�6Š6�"‰:Œ:˜Š?ˆ?ˆ?ˆ?Ø�6Š6�+ÑÔ !Ò#Ð#Ð#Ð#Ýˆr‰7Œ7�<Š<˜‰?Œ?�c "™gœgŸlšl¨2Ñ.Ô.Ð3Ð3Ò3Ð3°!Ò3Ð3Ð3Ð3Ð3Ð3Ø�6Š6•"‰:Œ:˜Š?ˆ?ˆ?ˆ?õ 	�•A•q�	˜A�qœv­ sÐ+Ð,Ñ-Ô-€AØ�FŠF�5‰MŒMÝ•8˜B ‘?”? Q¥s­1¡v¤v¨q¡y¡[Ñ0µ2°q±5Ñ8¸1¸a¹4Ñ?Ñ@Ô@òAð Að Að Aõ 	�
�
�
˜Q ¥8¨B°¡?¤?Ð3Ð4Ñ5Ô5€AØ�6Š6�!‰9Œ9��X c¨1Ñ-Ô-µ°U±´¸A±Ñ=Ñ>Ô>Ò>Ð>Ð>Ð>Ø�6Š6�"‰:Œ:�œÐÐÐÐØ�6Š6�+ÑÔ¥$ s¡)¤)¨A¡+Ò-Ð-Ð-Ð-õ
 	��A�˜˜A˜ÐÑ Ô €AÝ��A�˜˜Q˜Ð Ñ!Ô!€AÝ�•Q�B��!˜Q˜Ð Ñ!Ô!€AÝ��A�˜˜B˜Ð Ñ!Ô!€AØ	
ˆAˆq�!ˆ€AÝ�7 Ð&Ñ&Ô&€Eàð ð ˆå�Q‰xŒx�}Š}˜UÑ#Ô#¥q¤vÐ-Ð-Ð-Ð-àð 	"ð 	"ˆAØð "ð "�Ø—v’v˜e‘}”} q§v¢v¨e¡}¤}Ñ4Ø˜‘U—L’L Ñ'Ô'ñ(�à˜qš˜˜˜˜ð"ð
 �Q˜˜1�ð 	ð 	ˆAÝ˜E !™GŸ>š>¨%Ñ0Ô0Ý˜‘J”J §¢¨¡¤Ñ.ñ/ñ 0ô 0ˆCà˜!’8�8�8�8�8ð	õ 	��1�q�‘s‘7˜BÐÑ Ô €AÝ•”˜�!™˜QÐÑ Ô €AÝˆ|ˆ|ˆ|ÑÔ€AÝ��1•aˆyÑÔ€AÝ•˜‘”�h q¨#Ñ.Ô.°Ð2Ñ3Ô3€AØ	
ˆAˆq�!�Qˆ€AÝ�7 Ð&Ñ&Ô&€Eà�Q˜˜B¥¤
­AÔ,>ÅÐCð  ñ  ˆà�1Š9ˆ9Ý˜)˜)˜)Ñ$Ô$×)Ò)¨%Ñ0Ô0µA´FÐ:Ð:Ð:Ð:à�AŠ:ˆ:Øð 8ð 8�Øð 8ð 8�AØŸ6š6 %™=œ=¨1¯6ª6°%©=¬=Ñ8Ø˜Q™Ÿš UÑ+Ô+ñ,�Cå# C¨1¢HÑ-Ô-µ´Ð7Ð7Ð7Ð7Ð7ð8ð
 �Q˜˜2˜r¥1¤:­qÔ/AÐBÐBÐBØð  ð  �Ý  a¡Ÿ~š~¨eÑ4Ô4Ý˜‘Z”Z !§&¢&¨¡-¤-Ñ/ñ 1ñ 2ô 2�à˜a’x�x�x�x�xùõ 	ˆq�!Ð2Ð2Ð2Ñ3Ô3€AØ�6Š6�!‰9Œ9˜Š?ˆ?ˆ?ˆ?ˆ?ˆ?rm   c                  ó^  ‡‡— t          dd¬¦  «        Št          d¦  «        } d| d<   t          dd¦  «        | d<   |                      ¦   «         d	k    sJ ‚‰| d
<   |                      ¦   «         t	          dt          ‰¦  «        ¦  «        t          t          dd¦  «        t          ‰¦  «        ¦  «        z  k    sJ ‚t          t          ‰¦  «        t          ‰¦  «        gt          ‰¦  «         t          ‰¦  «        gg¦  «        }|                     ¦   «         Št          ˆˆfd„t          dd¦  «        t          j        t          dd¦  «        t          dz  t          t          t          dd¦  «        z  fD ¦   «         ¦  «        sJ ‚t          g ¦  «                             ¦   «         dk    sJ ‚d S )Nr^   Trê  rƒ   rÍ   r¼   r¡   ©r„   r„   rÞ   rÉ   c              3   ó¨   •K  — | ]L}t          d ¦  «                             ‰                     ‰|¦  «                             ¦   «         ¦  «        V — ŒMdS )ç      ð?N)r	   Ú
epsilon_eqr  rw  )rˆ   ÚvalÚMcr^   s     €€rn   r‰   z(test_condition_number.<locals>.<genexpr>ž  sg   øè è € ð Qð QÀ�u�R‰yŒy×#Ò# B§G¢G¨A¨s¡O¤O×$9Ò$9Ñ$;Ô$;Ñ<Ô<ð Qð Qð Qð Qð Qð Qrm   r¹   r„   rº   r¦   r   )r   r5   r   Úcondition_numberr   r   r   r1   r   r   r�   r   r  r   )rò   rÄ   rÔ  r^   s     @@rn   Útest_condition_numberrÖ  ’  sŸ  øø€ Ýˆs˜ÐÑÔ€AÝˆA‰Œ€AØ€A€d�GÝ�q˜"‰oŒo€A€d�GØ×ÒÑÔ 3Ò&Ð&Ð&Ð&à€A€d�GØ×ÒÑÔ¥3 r­3¨q©6¬6¡?¤?µS½À!ÀR¹¼Í#ÈaÉ&Ì&Ñ5QÔ5QÑ#QÒQÐQÐQÐQå•�Q‘”�˜Q™œÐ ¥C¨¡F¤F 7­C°©F¬FÐ"3Ð4Ñ5Ô5€AØ	
×	Ò	Ñ	Ô	€BÝð Qð Qð Qð Qð QÝ	�!�Q‰Œ�œ¥¨!¨R¡¤µ"°Q±$½½B½xÈÈ1¹~¼~Ñ<MÐOðQñ Qô Qñ Qô Qð Qð Qð Qõ �"‰:Œ:×&Ò&Ñ(Ô(¨AÒ-Ð-Ð-Ð-Ð-Ð-rm   c                  ó.  — t          d¦  «        } t          d¦  «        }| | d d …d d …f         k    sJ ‚| | d d …d d …f         k    rJ ‚| |k    rJ ‚| |k    sJ ‚| dk    sJ ‚| dk    rJ ‚t          d¦  «        }t          d¦  «        }||k    sJ ‚||k    rJ ‚d S )N)r¥   rO  ©rº   r½   r·   ))r·   r½   rº   )r§   r¹   r¦   )rƒ   r„   r¡   rÍ   )r:  rë   rì   )r1   r2   )rò   r—  r0  r6  s       rn   Útest_equalityrÙ  ¥  sÉ   € ÝÐ0Ñ1Ô1€AÝÐ0Ñ1Ô1€AØ��!�!�!�Q�Q�Q�$”Š<ˆ<ˆ<ˆ<Ø�A�a�a�a˜˜˜�d”GŠ|ˆ|ˆ|ÐØ�AŠvˆvˆvˆ:Ø�Š6ˆ6ˆ6ˆ6Ø�Š7ˆ7ˆ7ˆ7Ø�BŠwˆwˆwˆ;õ 	Ð6Ñ7Ô7€AÝÐ0Ñ1Ô1€AØ�Š6ˆ6ˆ6ˆ6Ø�AŠvˆvˆvˆ:ˆvˆvrm   c                  ó¨   — t          d¦  «                             t          g d¢g¦  «        ¦  «        t          g d¢g d¢g d¢g d¢g¦  «        k    sJ ‚d S )Nrƒ   )rº   rº   rº   r:  rë   rì   )r5   rK  r1   rl   rm   rn   Útest_col_joinrÛ  ¶  sp   € Ýˆq‰6Œ6�?Š?�6 9 9 9 +Ñ.Ô.Ñ/Ô/Ý�	�	�	Ø�	�	Ø�	�	Ø�	�	ðñ 	ô 	òð ð ð ð ð rm   c                  ó:  — t          g d¢g¦  «        } t          dd¦  «        D ]w}g d¢}|                     |d¦  «         t          t	          d¦  «                             || ¦  «                             d¦  «                             ¦   «         ¦  «        |k    sJ ‚Œxd S )N©r¦   r¦   r¦   rB  r¹   r:  r¦   rƒ   r   )r1   rÂ   ÚinsertrJ   r5   rM  rJ  r§  )Úr4rw   r  s      rn   Útest_row_insertrà  ¾  s    € Ý	����Ñ	Ô	€BÝ�2�q‰\Œ\ð Fð FˆØˆIˆIˆØ	�Š��A‰ŒˆÝ•s˜1‘v”v×(Ò(¨¨BÑ/Ô/×3Ò3°AÑ6Ô6×=Ò=Ñ?Ô?Ñ@Ô@ÀAÒEÐEÐEÐEÐEðFð Frm   c                  ó8  — t          g d¢¦  «        } t          dd¦  «        D ]w}g d¢}|                     |d¦  «         t          t	          d¦  «                             || ¦  «                             d¦  «                             ¦   «         ¦  «        |k    sJ ‚Œxd S )NrÝ  rB  r¹   rÀ   r¦   rƒ   r   )r1   rÂ   rÞ  rJ   r>   rP  rI  r§  )Úc4rw   r  s      rn   Útest_col_insertrã  Æ  sž   € Ý	�	�	�	Ñ	Ô	€BÝ�2�q‰\Œ\ð Hð HˆØˆIˆIˆØ	�Š��A‰ŒˆÝ•u˜Q‘x”x×*Ò*¨1¨bÑ1Ô1×5Ò5°aÑ8Ô8×?Ò?ÑAÔAÑBÔBÀaÒGÐGÐGÐGÐGðHð Hrm   c                  ó˜  — t          ddg¦  «                             ¦   «         t          t          dd¦  «        t          dd¦  «        g¦  «        k    sJ ‚t          g d¢¦  «                             ¦   «         t          g d¢¦  «        k    sJ ‚t          g d¢¦  «        } |                      d„ ¬¦  «        t          g d¢¦  «        k    sJ ‚d S )Nrƒ   r¦   r¹   rÀ   )r   r   g0Žä.ÿ++c                 ó0   —  | j         dd¬¦  «        j        S )NrÍ   T)r|   Úchop)rw  Úis_zeror/  s    rn   ry   z!test_normalized.<locals>.<lambda>Ø  s   € ˜˜œ 2¨DÐ1Ñ1Ô1Ô9€ rm   rx  )r1   re  r   rè   s    rn   Útest_normalizedrè  Î  sâ   € Ý�1�a�&‰>Œ>×$Ò$Ñ&Ô&Ý•˜˜A‘”¥¨¨A¡¤Ð/Ñ0Ô0ò1ð 1ð 1ð 1õ �)�)�)ÑÔ×'Ò'Ñ)Ô)­V°I°I°IÑ->Ô->Ò>Ð>Ð>Ð>õ 	ˆ}ˆ}ˆ}ÑÔ€AØ�<Š<Ø9Ð9ð ñ ô å	�	�	�	Ñ	Ô	òð ð ð ð ð rm   c                  ó^   — t          d„ ¦  «        dk    sJ ‚t          d„ ¦  «        dk    sJ ‚d S )Nc                  óD   — t          d¦  «                             ¦   «         S r×  ©r5   Úprint_nonzerorl   rm   rn   ry   z$test_print_nonzero.<locals>.<lambda>Ý  s   € �3˜q™6œ6×/Ò/Ñ1Ô1€ rm   z[X  ]
[ X ]
[  X]
c                  óF   — t          d¦  «                             d¦  «        S )Nrƒ   ú.rë  rl   rm   rn   ry   z$test_print_nonzero.<locals>.<lambda>ß  s   € �3˜q™6œ6×/Ò/°Ñ4Ô4€ rm   z[.  ]
[ . ]
[  .]
)rK   rl   rm   rn   Útest_print_nonzerorï  Ü  sX   € ÝÐ1Ð1Ñ2Ô2Øò ð  ð  ð  åÐ4Ð4Ñ5Ô5Øò ð  ð  ð  ð  ð  rm   c                  ó€  — t          j        d¦  «        t          d¦  «        k    sJ ‚t          j        d¦  «        t          d¦  «        k    sJ ‚t          dd¦  «        t          dddgdz  ¦  «        k    sJ ‚t          ddgddgg¦  «        } t          ddgddgg¦  «        }t          D ]”}|                     d¦  «        }| |k    sJ ‚| t          d|¬¦  «        k    sJ ‚t          |¦  «        |k    sJ ‚|                     d¦  «        }||k    sJ ‚|t          d|¬¦  «        k    sJ ‚t          |¦  «        |k    sJ ‚Œ•d S )Nrƒ   r¦   r¡   rÜ   r   r„   r#  )r1   r5   r>   r8   r‹   r†   )rw   r`   r•   r–   s       rn   Útest_zeros_eyerñ  ã  sQ  € ÝŒ:�a‰=Œ=�C ™FœFÒ"Ð"Ð"Ð"ÝŒ<˜‰?Œ?�e A™hœhÒ&Ð&Ð&Ð&Ý��1‰:Œ:�  1 q c¨"¡fÑ-Ô-Ò-Ð-Ð-Ð-å��A�˜˜A˜ÐÑ Ô €AÝ��A�˜˜A˜ÐÑ Ô €AÝð ð ˆØ�GŠG�A‰JŒJˆØ�AŠvˆvˆvˆvØ•C˜˜s�O‘O”OÒ#Ð#Ð#Ð#Ý�A‰wŒw˜#Š~ˆ~ˆ~ˆ~Ø�IŠI�a‰LŒLˆØ�AŠvˆvˆvˆvØ•E˜! Ð%Ñ%Ô%Ò%Ð%Ð%Ð%Ý�A‰wŒw˜#Š~ˆ~ˆ~ˆ~ˆ~ðð rm   c                  ó–  — t          ¦   «         j        sJ ‚t          ddgddgg¦  «        j        sJ ‚t          dd¦  «        j        sJ ‚t          d¦  «        j        rJ ‚t          t          dgddgg¦  «        j        d k    sJ ‚t          t          dgddgg¦  «        j        d k    sJ ‚t          t          dgddgg¦  «        j        d k    sJ ‚t          t          dgddgg¦  «        j        d k    sJ ‚t          t          dgddgg¦  «        j        dk    sJ ‚t          dd¬¦  «        } t          | dgddgg¦  «        j        dk    sJ ‚d S )	Nr   rƒ   r¦   r¡   FrZ   T)Únonzero)	r1   Úis_zero_matrixr>   r5   r^   r2   r/   r0   r   r|  s    rn   Útest_is_zerorõ  õ  ss  € Ý‰8Œ8Ô"Ð"Ð"Ð"Ý�A�q�6˜A˜q˜6Ð"Ñ#Ô#Ô2Ð2Ð2Ð2Ý��A‰;Œ;Ô%Ð%Ð%Ð%Ý�1‰vŒvÔ$Ð$Ð$Ð$Ý•A�q�6˜A˜q˜6Ð"Ñ#Ô#Ô2°dÒ:Ð:Ð:Ð:Ý�!˜Q˜ ! Q Ð(Ñ)Ô)Ô8¸DÒ@Ð@Ð@Ð@Ý�Q ˜F Q¨ FÐ+Ñ,Ô,Ô;¸tÒCÐCÐCÐCÝ ¥1 a &¨1¨a¨&Ð!1Ñ2Ô2ÔAÀTÒIÐIÐIÐIÝ•A�q�6˜A˜q˜6Ð"Ñ#Ô#Ô2°eÒ;Ð;Ð;Ð;Ýˆs˜DÐ!Ñ!Ô!€AÝ�A�q�6˜A˜q˜6Ð"Ñ#Ô#Ô2°eÒ;Ð;Ð;Ð;Ð;Ð;rm   c                  ó˜  — t           dz  } t          | ¦  «        }t          |  ¦  «        }t          | ¦  «        }t          |  ¦  «        }t          | ¦  «        }t          |  ¦  «        }||z  t	          d¦  «        z  t	          d¦  «        k    sJ ‚||z  t	          d¦  «        z  t	          d¦  «        k    sJ ‚||z  t	          d¦  «        z  t	          d¦  «        k    sJ ‚|                     ¦   «         ddt          | ¦  «        z  z   k    sJ ‚|                     ¦   «         ddt          | ¦  «        z  z   k    sJ ‚|                     ¦   «         ddt          | ¦  «        z  z   k    sJ ‚t          d¦  «        t	          d¦  «        k    sJ ‚t          d¦  «        t	          d¦  «        k    sJ ‚t          d¦  «        t	          d¦  «        k    sJ ‚t          j        g d¢t           dz  ¦  «        }t          j        g d¢t           dz  ¦  «        }t          j        g d¢t           dz  ¦  «        }	t          t            dz  ¦  «        | 	                    ¦   «         k    sJ ‚t          t            dz  ¦  «        | 	                    ¦   «         k    sJ ‚t          t            dz  ¦  «        |	 	                    ¦   «         k    sJ ‚t          t           
 dz  ¦  «        | 	                    ¦   «         k    sJ ‚t          t           
 dz  ¦  «        | 	                    ¦   «         k    sJ ‚t          t           
 dz  ¦  «        |	 	                    ¦   «         k    sJ ‚d S )Nrƒ   r¡   r„   r   r:  rë   rì   )r   r<   r;   r:   r5   r=  r   rY   Úfrom_axis_angleÚto_rotation_matrixrC   rD   rE   )
ÚthetaÚr3_plusÚr3_minusÚr2_plusÚr2_minusÚr1_plusÚr1_minusÚq1Úq2Úq3s
             rn   Útest_rotation_matricesr  	  sÿ  € åˆq‰D€EÝ˜ÑÔ€GÝ˜%˜Ñ Ô €HÝ˜ÑÔ€GÝ˜%˜Ñ Ô €HÝ˜ÑÔ€GÝ˜%˜Ñ Ô €HØ�GÑ�C ™FœFÑ"¥c¨!¡f¤fÒ,Ð,Ð,Ð,Ø�GÑ�C ™FœFÑ"¥c¨!¡f¤fÒ,Ð,Ð,Ð,Ø�GÑ�C ™FœFÑ"¥c¨!¡f¤fÒ,Ð,Ð,Ð,ð �=Š=‰?Œ?˜a !¥C¨¡J¤J¡,Ñ.Ò.Ð.Ð.Ð.Ø�=Š=‰?Œ?˜a !¥C¨¡J¤J¡,Ñ.Ò.Ð.Ð.Ð.Ø�=Š=‰?Œ?˜a !¥C¨¡J¤J¡,Ñ.Ò.Ð.Ð.Ð.õ �Q‰<Œ<�3˜q™6œ6Ò!Ð!Ð!Ð!Ý�Q‰<Œ<�3˜q™6œ6Ò!Ð!Ð!Ð!Ý�Q‰<Œ<�3˜q™6œ6Ò!Ð!Ð!Ð!õ 
Ô	# I I I­r°A©vÑ	6Ô	6€BÝ	Ô	# I I I­r°A©vÑ	6Ô	6€BÝ	Ô	# I I I­r°A©vÑ	6Ô	6€BÝ•r�T˜A‘XÑÔ "×"7Ò"7Ñ"9Ô"9Ò9Ð9Ð9Ð9Ý•r�T˜A‘XÑÔ "×"7Ò"7Ñ"9Ô"9Ò9Ð9Ð9Ð9Ý•r�T˜A‘XÑÔ "×"7Ò"7Ñ"9Ô"9Ò9Ð9Ð9Ð9å�2˜ ™Ñ"Ô" b×&;Ò&;Ñ&=Ô&=Ò=Ð=Ð=Ð=Ý�2˜ ™Ñ"Ô" b×&;Ò&;Ñ&=Ô&=Ò=Ð=Ð=Ð=Ý�2˜ ™Ñ"Ô" b×&;Ò&;Ñ&=Ô&=Ò=Ð=Ð=Ð=Ð=Ð=rm   c                  óh  — t          t          d¦  «        d         ¦  «        dk    sJ ‚t          t          d¦  «        ¦  «        t          d¦  «        k    sJ ‚t          t          d„ ¦  «         t          t          d¦  «        ¦  «        dk    sJ ‚t          t          d¦  «        ¦  «        dk    sJ ‚d S )NÚvectorr¦   z	vector[4]r]   c                  ó,   — t          d¦  «        d         S )Nr]   rä   r*   rl   rm   rn   ry   z%test_DeferredVector.<locals>.<lambda>+	  s   € �~¨cÑ2Ô2°2Ô6€ rm   ÚtestzDeferredVector('test'))Ústrr+   r   rN   r¦  Úreprrl   rm   rn   Útest_DeferredVectorr
  (	  s®   € Ý�~˜hÑ'Ô'¨Ô*Ñ+Ô+¨{Ò:Ð:Ð:Ð:Ý•> #Ñ&Ô&Ñ'Ô'­>¸#Ñ+>Ô+>Ò>Ð>Ð>Ð>Ý
�:Ð6Ð6Ñ7Ô7Ð7Ý�~˜cÑ"Ô"Ñ#Ô# sÒ*Ð*Ð*Ð*Ý•˜vÑ&Ô&Ñ'Ô'Ð+CÒCÐCÐCÐCÐCÐCrm   c                  óB   — t          t          d¦  «        ¦  «        rJ ‚d S )Nr›  )rL   r+   rl   rm   rn   Ú test_DeferredVector_not_iterabler  /	  s$   € Ý� sÑ+Ô+Ñ,Ô,Ð,Ð,Ð,Ð,Ð,rm   c                  ó2   — t          t          d„ ¦  «         d S )Nc                  ó:   — t          t          d¦  «        ¦  «        S )Nr…  )r1   r+   rl   rm   rn   ry   z,test_DeferredVector_Matrix.<locals>.<lambda>3	  s   € �f¥^°CÑ%8Ô%8Ñ9Ô9€ rm   )rN   r­  rl   rm   rn   Útest_DeferredVector_Matrixr  2	  s   € Ý
�9Ð9Ð9Ñ:Ô:Ð:Ð:Ð:rm   c            
      ó~  — t           } t          ddddg¦  «        }t          ddddg¦  «        }t          ||g¦  «        t          ddddg¦  «        t          dd | d¦  «        dz   | d¦  «        dz  g¦  «        gk    sJ ‚t          |j        |j        g¦  «        t          ddddg¦  «        t          dd | d¦  «        dz   | d¦  «        dz  g¦  «        gk    sJ ‚t          t          ddg¦  «        t          ddg¦  «        gd¦  «        t          dt	          d¦  «        z  dz  t	          d¦  «        dz  g¦  «        t          t	          d¦  «         dz  dt	          d¦  «        z  dz  g¦  «        gk    sJ ‚t          t          dg¦  «        ¦  «        }t          |¦  «        t          dgg¦  «        gk    sJ ‚d S )Nr¡   r„   rƒ   r¹   rä   TrÍ   )r   r1   r.   r¨  r   r#   )r  rÇ  rÈ  r  s       rn   Útest_GramSchmidtr  5	  sÙ  € Ý€AÝ	��1�q˜!�fÑ	Ô	€BÝ	��1�q˜!�fÑ	Ô	€BÝ˜˜B�xÑ Ô Ý	��1�q˜!�fÑ	Ô	�v a¨¨Q¨Q¨q©T¬T°!©V°Q°Q°r±U´U¸1±WÐ,=Ñ>Ô>Ð?ò@ð @ð @ð @å˜œ˜bœd�|Ñ$Ô$Ý	��1�q˜!�fÑ	Ô	�v a¨¨Q¨Q¨q©T¬T°!©V°Q°Q°r±U´U¸1±WÐ,=Ñ>Ô>Ð?ò@ð @ð @ð @õ �  1˜v™œ­°°1¨v©¬Ð7¸Ñ>Ô>Ý�•$�r‘(”(‘
˜2‘�t B™xœx¨™{Ð+Ñ,Ô,Ý•�b‘”�	˜"‘˜a¥ R¡¤™j¨™mÐ,Ñ-Ô-ðC/ò /ð /ð /ð /õ 	•&˜!˜‘+”+ÑÔ€AÝ�q‰>Œ>�f q c U™mœm˜_Ò,Ð,Ð,Ð,Ð,Ð,rm   c                  ój   — t          g d¢d¦  «        dk    sJ ‚t          g d¢dd¬¦  «        dk    sJ ‚d S )NrÍ  r¡   r   F)Úzero)r3   rl   rm   rn   Útest_casoratianr  F	  sK   € Ý�l�l�l AÑ&Ô&¨!Ò+Ð+Ð+Ð+Ý�l�l�l A¨EÐ2Ñ2Ô2°aÒ7Ð7Ð7Ð7Ð7Ð7rm   c                  ó*  — t          ¦   «         t          dd¦  «        z  j        dk    sJ ‚t          dd¦  «        t          dd¦  «        z  t          dd¦  «        k    sJ ‚t          dd¦  «        t          dd¦  «        z  t          ¦   «         k    sJ ‚d S )Nr   rƒ   )r   rƒ   )r1   r>   rŒ   rl   rm   rn   Útest_zero_dimension_multiplyr  K	  s…   € Ý‰HŒH•U˜1˜a‘[”[Ñ Ô'¨6Ò1Ð1Ð1Ð1Ý��A‰;Œ;•u˜Q ‘{”{Ñ"¥e¨A¨q¡k¤kÒ1Ð1Ð1Ð1Ý��A‰;Œ;•u˜Q ‘{”{Ñ"¥f¡h¤hÒ.Ð.Ð.Ð.Ð.Ð.rm   c                  óÈ  ‡ — t          ddt          d¦  «        ¦  «        Š ‰ dd d …f         t          ddgg¦  «        k    sJ ‚‰ dd d …f         t          ddgg¦  «        k    sJ ‚‰ d d …df         t          ddgg¦  «        j        k    sJ ‚‰ d d …df         t          ddgg¦  «        j        k    sJ ‚t          t          ˆ fd„¦  «         t          t          ˆ fd„¦  «         d S )Nr„   r¦   r¡   rƒ   rä   c                  ó   •— ‰ dd d …f         S rå  rl   rè   s   €rn   ry   z'test_slice_issue_2884.<locals>.<lambda>W	  s   ø€ ˜q  A A A œw€ rm   c                  ó   •— ‰ d         S )NrÏ  rl   rè   s   €rn   ry   z'test_slice_issue_2884.<locals>.<lambda>X	  s   ø€ ˜q œw€ rm   )r1   rÂ   r¨  rN   r¦  rè   s   @rn   Útest_slice_issue_2884r  Q	  sþ   ø€ Ýˆq�!•U˜1‘X”XÑÔ€AØˆQ���ˆTŒ7•f˜q !˜f˜XÑ&Ô&Ò&Ð&Ð&Ð&ØˆR���ˆUŒ8•v  1˜v˜hÑ'Ô'Ò'Ð'Ð'Ð'ØˆQˆQˆQ�ˆTŒ7•f˜q !˜f˜XÑ&Ô&Ô(Ò(Ð(Ð(Ð(ØˆQˆQˆQ�ˆUŒ8•v  1˜v˜hÑ'Ô'Ô)Ò)Ð)Ð)Ð)Ý
�:����Ñ'Ô'Ð'Ý
�:����Ñ'Ô'Ð'Ð'Ð'rm   c                  ó®   — t          dd¦  «        d d …df         j        dk    sJ ‚t          dd¦  «        dd d …f         t          ddg ¦  «        k    sJ ‚d S )Nr   rƒ   rä   r¾   r¡   )r>   rŒ   r1   rl   rm   rn   Útest_slice_issue_3401r  [	  sc   € Ý��A‰;Œ;�q�q�q˜"�uÔÔ# vÒ-Ð-Ð-Ð-Ý��A‰;Œ;�q˜!˜!˜!�tÔ¥ q¨!¨RÑ 0Ô 0Ò0Ð0Ð0Ð0Ð0Ð0rm   c                  ó`  — t          dd¦  «        } d| d<   | d d …df         t          g d¢¦  «        k    sJ ‚| d         dk    sJ ‚| dd…         dgk    sJ ‚d| d<   | d         dk    sJ ‚| ddd …f         t          ddgg¦  «        k    sJ ‚t          dd	gg¦  «        | ddd …f<   | dd d …f         t          g d
¢g¦  «        k    sJ ‚ddgg| ddd …f<   | dd d …f         t          g d¢g¦  «        k    sJ ‚d| d<   | d d …d d…f         t          g d¢¦  «        k    sJ ‚g d¢| d<   | d d …df         t          g d¢¦  «        k    sJ ‚t          g d¢¦  «        | d<   | d d …df         t          g d¢¦  «        k    sJ ‚t          g d¢¦  «        | d<   | d d …df         t          g d¢¦  «        k    sJ ‚d S )Nrƒ   r¡   r   rë   r¦   rF  rÉ   r¹   r§   )r¡   r¹   r§   é+   )r¡   rF  r  é   r¼   )r  r¡   r   rS  )r>   r1   r2   )r  s    rn   Útest_copyinr   `	  s(  € Ýˆa�‰Œ€AØ€A€a�DØˆQˆQˆQ�ˆTŒ7•f˜Y˜Y˜YÑ'Ô'Ò'Ð'Ð'Ð'ØˆQŒ4�1Š9ˆ9ˆ9ˆ9ØˆQ�ˆTŒ7�q�cŠ>ˆ>ˆ>ˆ>Ø€A€d�GØˆTŒ7�bŠ=ˆ=ˆ=ˆ=ØˆQ���ˆUŒ8•v  A˜w˜iÑ(Ô(Ò(Ð(Ð(Ð(Ý˜˜1�v�hÑÔ€A€aˆˆˆ€e�HØˆQ���ˆTŒ7•f˜i˜i˜i˜[Ñ)Ô)Ò)Ð)Ð)Ð)Ø�R�ˆz€A€aˆˆˆ€e�HØˆQ���ˆTŒ7•f˜k˜k˜k˜]Ñ+Ô+Ò+Ð+Ð+Ð+Ø€A€d�GØˆQˆQˆQ���ˆUŒ8•v˜j˜j˜jÑ)Ô)Ò)Ð)Ð)Ð)Øˆiˆi€A€d�GØˆQˆQˆQ�ˆTŒ7•f˜Y˜Y˜YÑ'Ô'Ò'Ð'Ð'Ð'Ý�Y�Y�YÑÔ€A€d�GØˆQˆQˆQ�ˆTŒ7•f˜Y˜Y˜YÑ'Ô'Ò'Ð'Ð'Ð'Ý˜9˜9˜9Ñ%Ô%€A€d�GØˆQˆQˆQ�ˆTŒ7•f˜Y˜Y˜YÑ'Ô'Ò'Ð'Ð'Ð'Ð'Ð'rm   c                  ó¶  ‡ — t          ddgddgg¦  «                             ¦   «         t          ddgddgg¦  «        dfk    sJ ‚t          t          d„ ¦  «         t          g d¢t          ddgdt          dgg¦  «        Š t          ‰                      ¦   «         d         ¦  «        ‰ j        k    sJ ‚‰                      ¦   «         d         t          d¦  «        k    sJ ‚‰                      t          ¬	¦  «        d         t          d¦  «        k    sJ ‚t          t          ˆ fd
„¦  «         t          t          ˆ fd„¦  «         t          t          ˆ fd„¦  «         d S )Nr¡   r„   r   )r   c                  óP   — t          ddgddgg¦  «                             ¦   «         S r    rG  rl   rm   rn   ry   z'test_invertible_check.<locals>.<lambda>{	  s'   € �v¨¨1 v°°1¨vÐ&6Ñ7Ô7×;Ò;Ñ=Ô=€ rm   )rä   rä   r   rä   rƒ   rà  c                  ó0   •— ‰                       d¬¦  «        S )Nr�  rv  ©r  rè   s   €rn   ry   z'test_invertible_check.<locals>.<lambda>†	  s   ø€ ˜qŸušu¨E˜uÑ2Ô2€ rm   c                  ó0   •— ‰                       d¬¦  «        S )Nru  rv  r$  rè   s   €rn   ry   z'test_invertible_check.<locals>.<lambda>‡	  ó   ø€ ˜qŸušu¨D˜uÑ1Ô1€ rm   c                  ó0   •— ‰                       d¬¦  «        S )Nr~  rv  r$  rè   s   €rn   ry   z'test_invertible_check.<locals>.<lambda>ˆ	  r&  rm   )	r1   rF  rN   r  r^   r7  rŽ   r5   r$   rè   s   @rn   Útest_invertible_checkr(  w	  s^  ø€ õ �A�q�6˜A˜q˜6Ð"Ñ#Ô#×(Ò(Ñ*Ô*­v¸¸1°vÀÀ1¸vÐ6FÑ/GÔ/GÈÐ.NÒNÐNÐNÐNÝ
�:Ð=Ð=Ñ>Ô>Ð>ÝØˆˆÝ
ˆa�!ˆØ
�a�ˆðñ 	ô 	€Aõ
 ˆq�vŠv‰xŒx˜Œ{ÑÔ˜qœvÒ%Ð%Ð%Ð%ð �6Š6‰8Œ8�AŒ;�#˜a™&œ&Ò Ð Ð Ð Ø�6Š6�8ˆ6Ñ$Ô$ QÔ'­3¨q©6¬6Ò1Ð1Ð1Ð1Ý
�:Ð2Ð2Ð2Ð2Ñ3Ô3Ð3Ý
�:Ð1Ð1Ð1Ð1Ñ2Ô2Ð2Ý
�:Ð1Ð1Ð1Ð1Ñ2Ô2Ð2Ð2Ð2rm   c                  ó®   — t          d¦  «        \  } }| |z  }|                     | t          g d¢¦  «        ¦  «        t          g d¢¦  «        |z  k    sJ ‚d S )Nzx, y)rƒ   r¹   rƒ   )r   r  r1   )r^   r_   rÌ  s      rn   Útest_issue_3959r*  ‹	  s\   € Ý�6‰?Œ?�D€A€qØ	ˆ!‰€AØ�6Š6�!•V˜I˜I˜IÑ&Ô&Ñ'Ô'­6°)°)°)Ñ+<Ô+<¸QÑ+>Ò>Ð>Ð>Ð>Ð>Ð>rm   c                  óV   — t          t          ddgddgg¦  «        ¦  «        dk    sJ ‚d S )Nr¡   r„   rƒ   r¦   zMatrix([[1, 2], [3, 4]]))r  r1   rl   rm   rn   Útest_issue_5964r,  ‘	  s7   € Ý�v˜˜1�v  1˜vÐ&Ñ'Ô'Ñ(Ô(Ð,FÒFÐFÐFÐFÐFÐFrm   c                  óŒ   — t          d¦  «        \  } }t          t          | d|z  g|dz  | dz   gg¦  «        ¦  «        dk    sJ ‚d S )Núx yr„   rƒ   z'Matrix([
[   x,   2*y],
[y**2, x + 3]]))r   r"   r1   )r^   r_   s     rn   Útest_issue_7604r/  •	  s^   € Ý�5‰>Œ>�D€A€qÝ•˜˜A˜a™C˜ 1 a¡4¨¨Q© -Ð0Ñ1Ô1Ñ2Ô2Ø3ò4ð 4ð 4ð 4ð 4ð 4rm   c            
      ó   — t          d¦  «        j        sJ ‚t          d¦  «                             ¦   «         j        sJ ‚t          d¦  «        j        rJ ‚t	          d¦  «        j        rJ ‚t          g d¢g¦  «        j        rJ ‚t          ddddddœ¦  «        j        sJ ‚t          ddt          d¦  «        ¦  «        j        rJ ‚t          dddddœ¦  «        j        rJ ‚t          ddddddddœ¦  «        j        rJ ‚d S )	Nrƒ   r:  r¡   )r¼   rÉ   rÏ  r„   r§   )r¼   rÉ   )r¼   rÉ   rÏ  r¾   rT  )r5   Úis_Identityrª  r>   r8   r1   r2   rÂ   rl   rm   rn   Útest_is_Identityr2  ›	  s  € Ýˆq‰6Œ6ÔÐÐÐÝˆq‰6Œ6×ÒÑ Ô Ô,Ð,Ð,Ð,Ý�Q‰xŒxÔ#Ð#Ð#Ð#Ý�A‰wŒwÔ"Ð"Ð"Ð"å�y�y�y�kÑ"Ô"Ô.Ð.Ð.Ð.å˜˜! A¨Q°aÐ8Ð8Ñ9Ô9ÔEÐEÐEÐEÝ˜A˜a¥ q¡¤Ñ*Ô*Ô6Ð6Ð6Ð6Ý˜A˜a¨°Ð!3Ð!3Ñ4Ô4Ô@Ð@Ð@Ð@Ý˜A˜a¨°¸!À1ÈAÐ!NÐ!NÑOÔOÔ[Ð[Ð[Ð[Ð[Ð[rm   c                  óð  — t          dd¦  «                             t          dd¦  «        ¦  «        dk    sJ ‚t          dd¦  «                             g d¢¦  «        dk    sJ ‚t          g d¢¦  «                             t          g d¢¦  «        ¦  «        dk    sJ ‚t          dddt          z  g¦  «                             t          t          ddt          z  g¦  «        ¦  «        dt          z   k    sJ ‚t          dddt          z  g¦  «                             t          t          ddt          z  g¦  «        d¬	¦  «        dt          z   k    sJ ‚t          dddt          z  g¦  «                             t          t          ddt          z  g¦  «        d
¬	¦  «        dt          z   k    sJ ‚t          dddt          z  g¦  «                             t          t          ddt          z  g¦  «        d
d¬¦  «        dt          z
  k    sJ ‚t          dddt          z  g¦  «                             t          ddt          z  dg¦  «        d
d¬¦  «        ddt          z  z   k    sJ ‚t          dddt          z  g¦  «                             t          ddt          z  dg¦  «        d
d¬¦  «        ddt          z  z
  k    sJ ‚t          t          dt          z  g¦  «                             t          t          dt          z  g¦  «        dd¬¦  «        dk    sJ ‚t          t          dt          z  g¦  «                             t          t          dt          z  g¦  «        d¬¦  «        dk    sJ ‚t	          t
          d„ ¦  «         d S )Nr¡   rƒ   rS  r¥   rÅ  r„   rC  Frµ  TrÄ  Úphysics©r¶  Úconjugate_conventionr¦   r¹   r§   Úrightr½   Úleft)r6  c                  ón   — t          ddg¦  «                             t          ddg¦  «        dd¬¦  «        S )Nr¡   r„   rƒ   r¦   Tr  r5  r]  rl   rm   rn   ry   ztest_dot.<locals>.<lambda>µ	  s0   € �v q¨! f™~œ~×1Ò1µ&¸!¸Q¸±.´.ÈDÐgmÐ1ÑnÔn€ rm   )r8   r^  r1   r
   rN   r  rl   rm   rn   Útest_dotr:  ©	  s  € Ý��1‰:Œ:�>Š>�$˜q !™*œ*Ñ%Ô%¨Ò*Ð*Ð*Ð*Ý��1‰:Œ:�>Š>˜)˜)˜)Ñ$Ô$¨Ò)Ð)Ð)Ð)Ý�)�)�)ÑÔ× Ò ¥¨	¨	¨	Ñ!2Ô!2Ñ3Ô3°rÒ9Ð9Ð9Ð9Ý�1�a˜�1™�+ÑÔ×"Ò"¥6­1¨a°µ1±¨+Ñ#6Ô#6Ñ7Ô7¸2Å¹6ÒAÐAÐAÐAÝ�1�a˜�1™�+ÑÔ×"Ò"¥6­1¨a°µ1±¨+Ñ#6Ô#6À%Ð"ÑHÔHÈBÕQRÉFÒRÐRÐRÐRÝ�1�a˜�1™�+ÑÔ×"Ò"¥6­1¨a°µ1±¨+Ñ#6Ô#6À$Ð"ÑGÔGÈ2ÕPQÉ6ÒQÐQÐQÐQÝ�1�a˜�1™�+ÑÔ×"Ò"¥6­1¨a°µ1±¨+Ñ#6Ô#6À$Ð]fÐ"ÑgÔgÐkmÕpqÑkqÒqÐqÐqÐqÝ�1�a˜�1™�+ÑÔ×"Ò"¥6¨1¨aµ©c°1¨+Ñ#6Ô#6À$Ð]dÐ"ÑeÔeÐijÐmnÕopÑmpÑipÒpÐpÐpÐpÝ�1�a˜�1™�+ÑÔ×"Ò"¥6¨1¨aµ©c°1¨+Ñ#6Ô#6À$Ð]cÐ"ÑdÔdÐhiÐlmÕnoÑloÑhoÒoÐoÐoÐoÝ•1�a�‘c�(ÑÔ×Ò¥­¨1­Q©3 xÑ 0Ô 0¸EÐX^ÐÑ_Ô_ÐceÒeÐeÐeÐeÝ•1�a�‘c�(ÑÔ×Ò¥­¨1­Q©3 xÑ 0Ô 0ÀvÐÑNÔNÐRSÒSÐSÐSÐSÝ
�:ÐnÐnÑoÔoÐoÐoÐorm   c            	      ó*  — t          dd¬¦  «        \  } }}}}}t          d|||f| d|| f| | d| f| ||  dff¦  «        }t          d|  | | f| d|| f|| d|f||| dff¦  «        }|                     ¦   «                              |¦  «        sJ ‚t	          d¦  «                             ¦   «                              t          d¦  «        ¦  «        sJ ‚|                     ¦   «                              ¦   «                              | ¦  «        sJ ‚d S )NzB_x B_y B_z E_x E_y E_zTrê  r   rƒ   )r   r1   ÚdualÚequalsr5   r>   )ÚB_xÚB_yÚB_zÚE_xÚE_yÚE_zÚFÚFds           rn   Ú	test_dualrF  ¸	  sL  € Ý#*Ø!¨ð$.ñ $.ô $.Ñ €Cˆˆc�3˜˜SåØ��c˜CÐ Ø
ˆ�!�c˜C˜4Ð Ø
ˆ�ˆt˜˜CÐ Ø
ˆ��c�T˜aÐ ð	ñ 	ô 	€Aõ 
Øˆsˆd�S�D˜3˜$ÐØ	��S˜3˜$ÐØ	ˆsˆd�q˜3ÐØ	ˆs�S�D˜QÐð	ñ 
ô 
€Bð �6Š6‰8Œ8�?Š?˜2ÑÔÐÐÐÝˆq‰6Œ6�;Š;‰=Œ=×Ò¥ a¡¤Ñ)Ô)Ð)Ð)Ð)Ø�6Š6‰8Œ8�=Š=‰?Œ?×!Ò! 1 "Ñ%Ô%Ð%Ð%Ð%Ð%Ð%rm   c                  óœ  — t          ddg¦  «                             ¦   «         du sJ ‚t          dddt          dz  dt          z  z   dz   t          t          dz   dz   dt          t          z  t           t           t          z  dg	¦  «        } |                      ¦   «         du sJ ‚|                      d¬¦  «        �J ‚|                      d„ ¬¦  «        �J ‚| d	          | d	<   |                      ¦   «         �J ‚| d	          | d	<   |                      ¦   «         } |                      d¬¦  «        du sJ ‚d| d
<   |                      ¦   «         du sJ ‚d S )Nr¡   r„   Frƒ   r   Trà  c                 ó   — | S rt   rl   r/  s    rn   ry   z%test_anti_symmetric.<locals>.<lambda>Ñ	  s   € °!€ rm   rË   r¼   )r1   Úis_anti_symmetricr^   r_   r   rè   s    rn   Útest_anti_symmetricrJ  Ì	  s_  € Ý�1�a�&‰>Œ>×+Ò+Ñ-Ô-°Ð6Ð6Ð6Ð6Ýˆq�!�a�˜A™ ¥!¡™ a™­­a°!©e°a©Z¨K¸½A½a¹CÅ!ÀÅaÀRÍÁTÈ1ÐMÑNÔN€AØ×ÒÑ Ô  DÐ(Ð(Ð(Ð(Ø×Ò¨ÐÑ.Ô.Ð6Ð6Ð6Ø×Ò¨¨ÐÑ4Ô4Ð<Ð<Ð<ð �Œwˆh€A€d�GØ×ÒÑ Ô Ð(Ð(Ð(à�Œwˆh€A€d�Gà	�Š‰
Œ
€AØ×Ò¨ÐÑ.Ô.°$Ð6Ð6Ð6Ð6Ø€A€d�GØ×ÒÑ Ô  EÐ)Ð)Ð)Ð)Ð)Ð)rm   c                  ó–  — t          d¦  «        } |                      d¬¦  «        \  }}||j        z  |j        |z  cxk    rt          |j        ¦  «        k    sn J ‚|                      dd¬¦  «        \  }}||j        z  |j        |z  cxk    rt          |j        ¦  «        k    sn J ‚||z  |                     ¦   «         z  | k    sJ ‚d S )N)r°   rË   T)Ú	normalize)rL  Úsort)r1   rq  r¨  r5   r�   r  )rò   r  rU   s      rn   Ú#test_normalize_sort_diogonalizationrN  ß	  sÙ   € ÝÐÑ Ô €AØ�=Š= 4ˆ=Ñ(Ô(�D€A€qØˆQŒS‰5�A”C˜‘EÐ(Ð(Ò(Ð(�S ¤™[œ[Ò(Ð(Ð(Ð(Ð(Ð(Ø�=Š= 4¨dˆ=Ñ3Ô3�D€A€qØˆQŒS‰5�A”C˜‘EÐ(Ð(Ò(Ð(�S ¤™[œ[Ò(Ð(Ð(Ð(Ð(Ð(ØˆQ‰3ˆq�uŠu‰wŒw‰;˜!ÒÐÐÐÐÐrm   c                  ó2   — t          t          d„ ¦  «         d S )Nc                  óF   — t          g d¢t          ddg ¦  «        g¦  «        S )Nr¥   r   r¡   rÙ   rl   rm   rn   ry   z!test_issue_5321.<locals>.<lambda>é	  s#   € �v y y yµ&¸¸A¸rÑ2BÔ2BÐ&CÑDÔD€ rm   )rN   r  rl   rm   rn   Útest_issue_5321rQ  è	  s   € Ý
�:ÐDÐDÑEÔEÐEÐEÐErm   c            	      ó  — t          j        t          d¦  «        dt          d¦  «        z  ¦  «        t          g d¢g d¢g¦  «        k    sJ ‚t          j        t          d¦  «        dt          d¦  «        z  ¦  «        t          ddgddgddgddgg¦  «        k    sJ ‚t          } |                       | t          d¦  «        ¦  «         | dt          d¦  «        z  ¦  «        ¦  «        t          g d¢g d¢g¦  «        k    sJ ‚d S )Nr„   )r¡   r   r„   r   )r   r¡   r   r„   r¡   r   )r1   Úhstackr5   Úvstackr2   r#  s    rn   Útest_issue_5320rU  ì	  s+  € ÝŒ=�˜Q™œ ¥3 q¡6¤6¡Ñ*Ô*­fØˆˆØˆˆð6ñ /ô /ò ð ð ð õ Œ=�˜Q™œ ¥3 q¡6¤6¡Ñ*Ô*­fØ	
ˆAˆØ	
ˆAˆØ	
ˆAˆØ	
ˆAˆð	6ñ /ô /ò ð ð ð õ €CØ�:Š:�c�c�#˜a™&œ&‘k”k 3 3 q­¨Q©¬¡x¡=¤=Ñ1Ô1µVØˆˆØˆˆð=ñ 6ô 6ò ð ð ð ð ð rm   c                  óô   — t          dgg¦  «        } t          | ¦  «        }t          j        || ¦  «        t          ddgg¦  «        k    sJ ‚t          j        || ¦  «        t          dgdgg¦  «        k    sJ ‚d S rC  )r1   r   rS  rT  )rò   ÚAIms     rn   Útest_issue_11944rX  ý	  sz   € Ý��ˆu‰Œ€AÝ
�!‰*Œ*€CÝŒ=˜˜aÑ Ô ¥F¨Q°¨F¨8Ñ$4Ô$4Ò4Ð4Ð4Ð4ÝŒ=˜˜aÑ Ô ¥F¨Q¨C°!°¨:Ñ$6Ô$6Ò6Ð6Ð6Ð6Ð6Ð6rm   c                  óÞ  ‡— g d¢} g d¢}t          g d¢¦  «        }|j        }ˆfd„}t          D ]¨Š ‰| ¦  «        } ‰|¦  «        } ||                     |¦  «        |¦  «          ||                     |j        ¦  «        |¦  «          ||j                             |j        ¦  «        |¦  «          ||j                             |¦  «        |¦  «         Œ©t	          t
          d„ ¦  «         d S )Nr¥   r¸   )r  r¦   r  c                 óB   •— || k    sJ ‚t          | ¦  «        ‰k    sJ ‚d S rt   )r†   )rÄ   r  r•   s     €rn   r  ztest_cross.<locals>.test	
  s'   ø€ Ø�aŠxˆxˆxˆxÝ�A‰wŒw˜#Š~ˆ~ˆ~ˆ~ˆ~ˆ~rm   c                  óp   — t          ddddg¦  «                             t          ddddg¦  «        ¦  «        S r    rZ  rl   rm   rn   ry   ztest_cross.<locals>.<lambda>
  s8   € Ýˆq�!�a˜�VÑÔ×"Ò"¥6¨!¨Q°°A°Ñ#7Ô#7Ñ8Ô8ð rm   )r1   r¨  r‹   r[  rN   r'   )rZ   r[   rJ  rI  r  rò   r—  r•   s          @rn   Ú
test_crossr\  
  s  ø€ Øˆ	ˆ	€AØˆ	ˆ	€AÝ
���Ñ
Ô
€CØ
Œ%€Cðð ð ð ð õ ð  ð  ˆØˆC�‰FŒFˆØˆC�‰FŒFˆØˆˆQ�WŠW�Q‰ZŒZ˜ÑÔÐØˆˆQ�WŠW�Q”S‰\Œ\˜3ÑÔÐØˆˆQŒS�YŠY�q”s‰^Œ^˜SÑ!Ô!Ð!ØˆˆQŒS�YŠY�q‰\Œ\˜3ÑÔÐÐÝ
�:ð 9ð 9ñ :ô :ð :ð :ð :rm   c                  ó’  — t          t          t          t          g¦  «        } t          t          t
          t          g¦  «        }|                      ¦   «         |z  |                      |¦  «        k    sJ ‚|                      ¦   «          	                    ¦   «         sJ ‚|                      ¦   «          
                    ¦   «         | k    sJ ‚d S rt   )r1   r^   r_   r`   rZ   r[   r\   Úhatr[  rI  Úvee)Úv1Úv2s     rn   Útest_hat_veerb  
  s–   € Ý	••A•q�	Ñ	Ô	€BÝ	••A•q�	Ñ	Ô	€BØ�6Š6‰8Œ8�b‰=˜BŸHšH R™LœLÒ(Ð(Ð(Ð(Ø�6Š6‰8Œ8×%Ò%Ñ'Ô'Ð'Ð'Ð'Ø�6Š6‰8Œ8�<Š<‰>Œ>˜RÒÐÐÐÐÐrm   c                  óv  — t           dd …         D ]l} |                      d¦  «        |                      d¦  «        h}t          |¦  «        dk    r+|                     ¦   «         |                      d¦  «        k    sJ ‚Œmt           d d…         D ],} t	          |                      d¦  «        t
          ¦  «        rJ ‚Œ-d S )Nr  r¡   r„   )r‹   r5   r7  ÚpoprÒ   r   )r•   r  s     rn   Ú	test_hashre  
  s¯   € Ý�r�s�sŒ|ð 5ð 5ˆØ�WŠW�Q‰ZŒZ˜Ÿš ™œÐ$ˆÝ�1‰vŒv˜Š{ˆ{˜qŸušu™wœw¨#¯'ª'°!©*¬*Ò4Ð4Ð4Ð4Ð4å�r˜�rŒ{ð 4ð 4ˆÝ˜cŸgšg a™jœj­(Ñ3Ô3Ð3Ð3Ð3Ð3ð4ð 4rm   c                  óR   ‡ — t           d         Š t          t          ˆ fd„¦  «         d S )Nr   c                  óH   •— t          ‰                      d¦  «        ¦  «        S rC  )Úhashr5   r#  s   €rn   ry   z!test_issue_3979.<locals>.<lambda>+
  s   ø€ ¥4¨¯ª°©
¬
Ñ#3Ô#3€ rm   )r‹   rN   r7  r#  s   @rn   Útest_issue_3979ri  &
  s.   ø€ õ �!Œ*€CÝ
�>Ð3Ð3Ð3Ð3Ñ4Ô4Ð4Ð4Ð4rm   c                  ó°   — dt           gddgg} t          ddgt            dgg¦  «        }t          D ]%}| || ¦  «                             ¦   «         k    sJ ‚Œ&d S ©Nr   r¡   )r
   r1   r‹   Úadjoint)r®  r  r•   s      rn   Útest_adjointrm  .
  sq   € Ø�qˆ6�A�q�6Ð
€CÝ
�1�a�&�A˜2˜q˜'Ð"Ñ
#Ô
#€CÝð )ð )ˆØ�c�c˜#‘h”h×&Ò&Ñ(Ô(Ò(Ð(Ð(Ð(Ð(ð)ð )rm   c                  óÆ   — t          t          t          t          ¦  «        dz  t	          t          ¦  «        dz  z   gg¦  «        ¦  «        t          dgg¦  «        k    sJ ‚d S )Nr„   r¡   )r%   r/   r   r^   r   rl   rm   rn   Útest_simplify_immutablero  4
  sa   € Ý•O¥c­!¡f¤f¨a¡iµ#µa±&´&¸!±)Ñ&;Ð%<Ð$=Ñ>Ô>Ñ?Ô?Ý# a S EÑ*Ô*ò+ð +ð +ð +ð +ð +rm   c                  óÈ   ‡‡— t          dt          ¬¦  «        \  ŠŠt          ddˆfd„¦  «        } t          ddˆfd„¦  «        }|                     ‰‰¦  «        }|| k    sJ ‚d S )NzF, Gr#  r„   c                 ó    •—  ‰| |z   ¦  «        S rt   rl   )rw   rx   ÚGs     €rn   ry   ztest_replace.<locals>.<lambda>:
  ó   ø€  ! ! A a¡C¡&¤&€ rm   c                 ó    •—  ‰| |z   ¦  «        S rt   rl   )rw   rx   rD  s     €rn   ry   ztest_replace.<locals>.<lambda>;
  rs  rm   )r   r   r1   Úreplace)ÚKrÄ   ÚNrD  rr  s      @@rn   Útest_replacerx  8
  sr   øø€ Ý�6�xÐ(Ñ(Ô(�D€A€qÝˆq�!Ð(Ð(Ð(Ð(Ñ)Ô)€AÝˆq�!Ð(Ð(Ð(Ð(Ñ)Ô)€AØ	�	Š	�!�Q‰Œ€AØ�Š6ˆ6ˆ6ˆ6ˆ6ˆ6rm   c                  ó$  — t          ddgt          ddt          z  z
  gg¦  «        } |                      ¦   «         t          j        t          d¦  «        t          j        t          hk    sJ ‚|                      t          ¦  «        t          hk    sJ ‚d S r    )r1   r^   Úatomsr   rµ  ÚNegativeOner   rè   s    rn   Ú
test_atomsr|  @
  ss   € Ý��A��˜A ¥!¡™G˜Ð%Ñ&Ô&€AØ�7Š7‰9Œ9�œ�q ™tœt¥A¤Mµ1Ð5Ò5Ð5Ð5Ð5Ø�7Š7•6‰?Œ?�q˜cÒ!Ð!Ð!Ð!Ð!Ð!rm   c            	      óŒ  ‡	— t          t          t          gt          t          gg¦  «        } t          |                      d¬¦  «        ¦  «        t          |                      ¦   «         ¦  «        k    sJ ‚t          ddgddgddgg¦  «        t          g d	¢g d
¢g¦  «        t          t          t          g¦  «        g}|D ]l}|                     d¬¦  «        }||z  }||z  }t          ||z  ¦  «        |k    sJ ‚t          ||z  ¦  «        |k    sJ ‚|j        |k    sJ ‚|j        |k    sJ ‚Œm|D ]y}t          |                     d¬¦  «        ¦  «        }||z  }||z  }t          ||z  ¦  «        |k    sJ ‚t          ||z  ¦  «        |k    sJ ‚|j        |k    sJ ‚|j        |k    sJ ‚Œzddl	m
Š	 |                      d¬¦  «        }|                      ¦   «         }t          dt          dt          dt          di}t          ˆ	fd„t          |                     |¦  «        |                     |¦  «        ¦  «        D ¦   «         ¦  «        sJ ‚d S )NÚRDrv  rÄ  éh   i¤  rƒ   r¬   r¹   )r¡   rº   r·   )rÂ  r  é   ÚEDr   )Úcompi_àþÿib,  i¾Ø  ijô  c              3   ó~   •K  — | ]7\  }} ‰|                      ¦   «         |                      ¦   «         ¦  «        V — Œ8d S rt   r{   )rˆ   rw   rx   r‚  s      €rn   r‰   ztest_pinv.<locals>.<genexpr>m
  sW   øè è € ð 
ð 
áˆAˆqð 	ˆˆQ�SŠS‰UŒU�A—C’C‘E”EÑÔð
ð 
ð 
ð 
ð 
ð 
rm   )r1   rZ   r[   r\   r]   r%   Úpinvr  r2  Úsympy.core.numbersr‚  r�   Úzipr  )
ÚA1ÚAsrò   ÚA_pinvÚAApÚApAr  ÚwÚrepsr‚  s
            @rn   Ú	test_pinvrŽ  F
  s|  ø€ å	•!•Q��!�Q˜Ð Ñ	!Ô	!€BÝ�B—G’G 4�GÑ(Ô(Ñ)Ô)­X°b·f²f±h´hÑ-?Ô-?Ò?Ð?Ð?Ð?õ �2�s�)˜d A˜Y¨¨Q¨Ð0Ñ
1Ô
1Ý
�)�)�)˜\˜\˜\Ð*Ñ
+Ô
+Ý
•!•Q�‰.Œ.ð
€Bð ð ð ˆØ—’˜t�Ñ$Ô$ˆØ�&‰jˆØ�q‰jˆÝ˜˜a™Ñ Ô  AÒ%Ð%Ð%Ð%Ý˜˜f™Ñ%Ô%¨Ò/Ð/Ð/Ð/ØŒu˜Š|ˆ|ˆ|ˆ|ØŒu˜Š|ˆ|ˆ|ˆ|ˆ|ð ð ð ˆÝ˜!Ÿ&š&¨˜&Ñ-Ô-Ñ.Ô.ˆØ�&‰jˆØ�q‰jˆÝ˜˜a™Ñ Ô  AÒ%Ð%Ð%Ð%Ý˜˜f™Ñ%Ô%¨Ò/Ð/Ð/Ð/ØŒu˜Š|ˆ|ˆ|ˆ|ØŒu˜Š|ˆ|ˆ|ˆ|ˆ|ð (Ð'Ð'Ð'Ð'Ð'Ø
�Š�tˆÑÔ€AØ
�Š‰Œ€AÝˆv•q˜%¥ E­1¨eÐ4€DÝð 
ð 
ð 
ð 
å˜Ÿš˜t™œ a§f¢f¨T¡l¤lÑ3Ô3ð
ñ 
ô 
ñ 
ô 
ð 
ð 
ð 
ð 
ð 
rm   c            	      óÚ   — t          g d¢g d¢g d¢g d¢g d¢g d¢g¦  «        g} | D ]E}|                     d¬¦  «        }||z  }||z  }|j        |k    sJ ‚d	„ } ||j        |¦  «        sJ ‚ŒFd S )
N)é=   rþ   é7   r›  r  r   )é>   é`   éU   r”  rÓ  r   )éE   é8   r  r¦   é6   r   )rÍ   r—  é[   é)   r  r   )rº   r÷  rÍ   râ   éZ   r   )r   r   r   r   r   r   r�  rv  c                 óÔ   — |                       t          ¦  «        }d„ |D ¦   «         }| |z
                       |¦  «                             ¦   «         }t	          d„ |D ¦   «         ¦  «        S )Nc                 ó8   — i | ]}||                      ¦   «         “ŒS rl   rv  )rˆ   rD  s     rn   ú
<dictcomp>zYtest_pinv_rank_deficient_when_diagonalization_fails.<locals>.allclose.<locals>.<dictcomp>’
  s"   € Ð<Ð<Ð<¨q˜a §¢¡¤Ð<Ð<Ð<rm   c              3   ó<   K  — | ]}t          |¦  «        d k     V — ŒdS )g»½×Ùß|Û=N©r­   ©rˆ   rÌ  s     rn   r‰   zXtest_pinv_rank_deficient_when_diagonalization_fails.<locals>.allclose.<locals>.<genexpr>”
  s,   è è € Ð;Ð;¨!•s˜1‘v”v ’~Ð;Ð;Ð;Ð;Ð;Ð;rm   )rz  r!   r&  rw  r�   )ÚM1r¯  ÚrootofsÚrootofs_approxÚdiff_approxs        rn   ÚallclosezEtest_pinv_rank_deficient_when_diagonalization_fails.<locals>.allclose�
  sf   € Ø—h’h�vÑ&Ô&ˆGØ<Ð<°GÐ<Ñ<Ô<ˆNØ ™7×,Ò,¨^Ñ<Ô<×BÒBÑDÔDˆKÝÐ;Ð;¨{Ð;Ñ;Ô;Ñ;Ô;Ð;rm   )r1   r„  r2  )rˆ  rò   r‰  rŠ  r‹  r¥  s         rn   Ú3test_pinv_rank_deficient_when_diagonalization_failsr¦  s
  sÐ   € õ
 	Ø#Ð#Ð#Ø#Ð#Ð#Ø#Ð#Ð#Ø#Ð#Ð#Ø#Ð#Ð#ØÐÐð ñ 	!ô 	!ð
€Bð ð $ð $ˆØ—’˜t�Ñ$Ô$ˆØ�&‰jˆØ�q‰jˆØŒu˜Š|ˆ|ˆ|ˆ|ð	<ð 	<ð 	<ð ˆx˜œ˜sÑ#Ô#Ð#Ð#Ð#Ð#ð-$ð $rm   c                  óÞ   — t          dd¦  «        t          dd¦  «        z   t          ddg ¦  «        k    sJ ‚t          dd¦  «        t          dd¦  «        z   t          ddg ¦  «        k    sJ ‚d S rk  )r8   r1   rl   rm   rn   Útest_issue_7201r¨  ™
  sl   € Ý��1‰:Œ:�˜Q ™
œ
Ñ"¥f¨Q°°2Ñ&6Ô&6Ò6Ð6Ð6Ð6Ý��1‰:Œ:�˜Q ™
œ
Ñ"¥f¨Q°°2Ñ&6Ô&6Ò6Ð6Ð6Ð6Ð6Ð6rm   c                  óŠ   — t           t          t          t          fD ]'}  | t          gdgg¦  «        j        t          hk    sJ ‚Œ(d S r€   )r/   r0   r1   r2   r^   Úfree_symbolsr  s    rn   Útest_free_symbolsr«  �
  sN   € ÝÕ3µV½\ÐIð 1ð 1ˆØˆq•1�#˜�s�‰}Œ}Ô)­a¨SÒ0Ð0Ð0Ð0Ð0ð1ð 1rm   c                  ó¬  ‡ — 	 ddl mŠ  n# t          $ r t          d¦  «         Y nw xY wt	           ‰ g d¢¦  «        ¦  «        t	          g d¢¦  «        k    sJ ‚t	           ‰ g d¢g¦  «        ¦  «        t	          g d¢g¦  «        k    sJ ‚t	           ‰ g d¢g d¢g¦  «        ¦  «        t	          g d¢g d¢g¦  «        k    sJ ‚t	           ‰ t
          t          t          g¦  «        ¦  «        t	          t
          t          t          g¦  «        k    sJ ‚t          t          ˆ fd„¦  «         t	           ‰ ddg¦  «         ‰ d	d
g¦  «        g¦  «        t	          ddgd	d
gg¦  «        k    sJ ‚t	           ‰ ddg¦  «        d	d
gg¦  «        t	          ddgd	d
gg¦  «        k    sJ ‚t	           ‰ g ¦  «         ‰ g ¦  «        g¦  «        t	          g ¦  «        k    sJ ‚dS )zSee issue 7465.r   ©Úarrayú?NumPy must be available to test creating matrices from ndarraysr¥   rO  c                  óP   •— t           ‰ ddgddggddgddggg¦  «        ¦  «        S )	Nr¡   r„   rƒ   r¦   r¹   r§   rº   r½   rÙ   r­  s   €rn   ry   z#test_from_ndarray.<locals>.<lambda>®
  s8   ø€ •�u�u  1˜v¨¨1 vÐ.°!°Q°¸!¸Q¸Ð0@ÐAÑBÔBÑCÔC€ rm   r¡   r„   rƒ   r¦   N)
Únumpyr®  ÚImportErrorrQ   r1   r^   r_   r`   rN   ÚNotImplementedErrorr­  s   @rn   Útest_from_ndarrayr´  ¡
  s/  ø€ ðPØÐÐÐÐÐÐøÝð Pð Pð PÝÐNÑOÔOÐOÐOÐOðPøøøõ �%�%˜	˜	˜	Ñ"Ô"Ñ#Ô#¥v¨i¨i¨iÑ'8Ô'8Ò8Ð8Ð8Ð8Ý�%�%˜˜˜˜Ñ$Ô$Ñ%Ô%­°°°°Ñ)<Ô)<Ò<Ð<Ð<Ð<Ý�%�%˜˜˜ I I IÐ.Ñ/Ô/Ñ0Ô0Ý�	�	�	˜9˜9˜9Ð%Ñ&Ô&ò'ð 'ð 'ð 'å�%�%��A�q˜	Ñ"Ô"Ñ#Ô#¥v­qµ!µQ¨iÑ'8Ô'8Ò8Ð8Ð8Ð8Ý
ÕØCÐCÐCÐCñEô Eð Eå�5�5˜!˜Q˜‘=”= % %¨¨A¨¡-¤-Ð0Ñ1Ô1µV¸aÀ¸VÀaÈÀVÐ<LÑ5MÔ5MÒMÐMÐMÐMÝ�5�5˜!˜Q˜‘=”= 1 a &Ð)Ñ*Ô*­f°q¸!°f¸qÀ!¸fÐ5EÑ.FÔ.FÒFÐFÐFÐFÝ�5�5˜‘9”9˜e˜e B™iœiÐ(Ñ)Ô)­V°B©Z¬ZÒ7Ð7Ð7Ð7Ð7Ð7s   ƒ
 Š&¥&c                  ó¸  — ddl m}  	 ddlm}m} n# t
          $ r t          d¦  «         Y nw xY w |  |ddgddgg¦  «        ¦  «        }|d         dk    sJ ‚t          |¦  «        g d	¢k    sJ ‚t          t          ¦  «        5   |  |ddgddgg¦  «        ¦  «        }d d d ¦  «         n# 1 swxY w Y   |d         dk    sJ ‚t          |¦  «        g d	¢k    sJ ‚d S )
Nr   ©Ú
_matrixify)r®  ÚmatrixzPNumPy must be available to test indexing matrixified NumPy ndarrays and matricesr¡   r„   rƒ   r¦   rÍ  )
Úsympy.matrices.commonr·  r±  r®  r¸  r²  rQ   r‘   rM   ÚPendingDeprecationWarning)r·  r®  r¸  r–   s       rn   Útest_17522_numpyr»  ³
  sy  € Ø0Ð0Ð0Ð0Ð0Ð0ðaØ'Ð'Ð'Ð'Ð'Ð'Ð'Ð'Ð'øÝð að að aÝÐ_Ñ`Ô`Ð`Ð`Ð`ðaøøøð 	ˆ
�5�5˜1˜a˜& 1 a &Ð)Ñ*Ô*Ñ+Ô+€AØˆQŒ4�1Š9ˆ9ˆ9ˆ9Ý�‰7Œ7�l�l�lÒ"Ð"Ð"Ð"å	Õ2Ñ	3Ô	3ð 1ð 1ØˆJ�v�v  1˜v¨¨1 vÐ.Ñ/Ô/Ñ0Ô0ˆð1ð 1ð 1ñ 1ô 1ð 1ð 1ð 1ð 1ð 1ð 1øøøð 1ð 1ð 1ð 1àˆQŒ4�1Š9ˆ9ˆ9ˆ9Ý�‰7Œ7�l�l�lÒ"Ð"Ð"Ð"Ð"Ð"s   ˆ ‘-¬-ÂB*Â*B.Â1B.c                  óÞ   — ddl m}  	 ddlm} n# t          $ r t          d¦  «         Y nw xY w |  |ddgddgg¦  «        ¦  «        }|d         d	k    sJ ‚t          |¦  «        g d
¢k    sJ ‚d S )Nr   r¶  )r¸  zEmpmath must be available to test indexing matrixified mpmath matricesr¡   r„   rƒ   r¦   ç      @)rÑ  g       @rÖ  r½  )r¹  r·  Úmpmathr¸  r²  rQ   r‘   )r·  r¸  r–   s      rn   Útest_17522_mpmathr¿  Ã
  sÀ   € Ø0Ð0Ð0Ð0Ð0Ð0ðVØ!Ð!Ð!Ð!Ð!Ð!Ð!øÝð Vð Vð VÝÐTÑUÔUÐUÐUÐUðVøøøð 	ˆ
�6�6˜A˜q˜6 A q 6Ð*Ñ+Ô+Ñ,Ô,€AØˆQŒ4�3Š;ˆ;ˆ;ˆ;Ý�‰7Œ7Ð*Ð*Ð*Ò*Ð*Ð*Ð*Ð*Ð*ó   ˆ �+ª+c                  óÞ   — ddl m}  	 ddlm} n# t          $ r t          d¦  «         Y nw xY w |  |ddgddgg¦  «        ¦  «        }|d         dk    sJ ‚t          |¦  «        g d	¢k    sJ ‚d S )
Nr   r¶  )Ú
csr_matrixzJSciPy must be available to test indexing matrixified SciPy sparse matricesr¡   r„   rƒ   r¦   rÍ  )r¹  r·  Úscipy.sparserÂ  r²  rQ   r‘   )r·  rÂ  r–   s      rn   Útest_17522_scipyrÄ  Î
  s½   € Ø0Ð0Ð0Ð0Ð0Ð0ð[Ø+Ð+Ð+Ð+Ð+Ð+Ð+øÝð [ð [ð [ÝÐYÑZÔZÐZÐZÐZð[øøøð 	ˆ
�:�:  1˜v¨¨1 vÐ.Ñ/Ô/Ñ0Ô0€AØˆQŒ4�1Š9ˆ9ˆ9ˆ9Ý�‰7Œ7�l�l�lÒ"Ð"Ð"Ð"Ð"Ð"rÀ  c                  óê   — t          dt          gt           dgg¦  «        } | j        sJ ‚dt          z  | d<   | j        du sJ ‚t          | d<   | j        �J ‚| d         t          z  | d<   | j        du sJ ‚d S )Nr¡   r„   r¼   FrÈ   r¾   )r1   r
   Úis_hermitianr^   r|  s    rn   Útest_hermitianrÇ  Ù
  sŒ   € Ý�•A��!˜˜Q˜Ð Ñ!Ô!€AØŒ>ÐÐˆ>Ø•‰c€A€d�GØŒ>˜UÐ"Ð"Ð"Ð"Ý€A€d�GØŒ>Ð!Ð!Ð!Ø�Œg•a‰i€A€d�GØŒ>˜UÐ"Ð"Ð"Ð"Ð"Ð"rm   c                  óà   — t          t          t          t          d¬¦  «        gg¦  «        } | d         dt          z  k    sJ ‚ | j        ¦   «         t          dt          z  gg¦  «        k    sJ ‚d S )NFrŸ  r   r„   )r1   r   r^   r  r|  s    rn   Ú	test_doitrÉ  ã
  sf   € Ý••Q•q 5Ð)Ñ)Ô)Ð*Ð+Ñ,Ô,€AØˆQŒ4�1•Q‘3Š;ˆ;ˆ;ˆ;Øˆ1Œ6‰8Œ8•v ¥!¡˜u˜g‘”Ò&Ð&Ð&Ð&Ð&Ð&rm   c                  óf  ‡‡— t          g d¢g d¢g d¢g¦  «        } |                      d¦  «         | t          g d¢g d¢g¦  «        k    sJ ‚t          g d¢g d¢g d¢g¦  «        }|                     d¦  «         |t          g d¢g d¢g¦  «        k    sJ ‚t          g d¢g d¢g d¢g¦  «        }|                     d¦  «         |t          g d¢g d¢g¦  «        k    sJ ‚t          g d¢g d¢g d¢g¦  «        Št          t          ˆfd	„¦  «         t          g d¢g d¢g d¢g¦  «        Št          t          ˆfd
„¦  «         t          g d¢g d¢g d¢g¦  «        } |                      d¦  «         | t          ddgddgddgg¦  «        k    sJ ‚t          g d¢g d¢g d¢g¦  «        }|                     d¦  «         |t          ddgddgddgg¦  «        k    sJ ‚t          g d¢g d¢g d¢g¦  «        Št          t          ˆfd„¦  «         t          g d¢g d¢g d¢g¦  «        Št          t          ˆfd„¦  «         d S )Nr¥   r‚  r¸   r¡   r  )r¹   r§   rº   )r·   rÍ   rÂ  rä   c                  ó.   •— ‰                       d¦  «        S ræ   ©Úrow_del©r  s   €rn   ry   z+test_issue_9457_9467_9876.<locals>.<lambda>ô
  ó   ø€ ˜qŸyšy¨™}œ}€ rm   c                  ó$   •—  ‰ j         d¦  «        S ©Nrê   rÌ  rT   s   €rn   ry   z+test_issue_9457_9467_9876.<locals>.<lambda>ö
  ó   ø€ ˜y˜qœy¨™~œ~€ rm   rƒ   r„   r¦   r¹   c                  ó.   •— ‰                       d¦  «        S ræ   ©Úcol_delrÎ  s   €rn   ry   z+test_issue_9457_9467_9876.<locals>.<lambda>   rÏ  rm   c                  ó$   •—  ‰ j         d¦  «        S rÑ  rÔ  rT   s   €rn   ry   z+test_issue_9457_9467_9876.<locals>.<lambda>  rÒ  rm   )r1   rÍ  rN   r¦  rÕ  )rÄ   rw  ÚOr  rU   s      @@rn   Útest_issue_9457_9467_9876rØ  è
  s©  øø€ å�	�	�	˜9˜9˜9 i i iÐ0Ñ1Ô1€AØ‡I‚Iˆa�L„L€LØ•˜	˜	˜	 9 9 9Ð-Ñ.Ô.Ò.Ð.Ð.Ð.Ý�	�	�	˜9˜9˜9 i i iÐ0Ñ1Ô1€AØ‡I‚Iˆb�M„M€MØ•˜	˜	˜	 9 9 9Ð-Ñ.Ô.Ò.Ð.Ð.Ð.Ý�	�	�	˜9˜9˜9 k k kÐ2Ñ3Ô3€AØ‡I‚Iˆb�M„M€MØ•˜	˜	˜	 9 9 9Ð-Ñ.Ô.Ò.Ð.Ð.Ð.Ý�	�	�	˜9˜9˜9 i i iÐ0Ñ1Ô1€AÝ
�:Ð,Ð,Ð,Ð,Ñ-Ô-Ð-Ý�	�	�	˜9˜9˜9 i i iÐ0Ñ1Ô1€AÝ
�:Ð-Ð-Ð-Ð-Ñ.Ô.Ð.õ 	�	�	�	˜9˜9˜9 i i iÐ0Ñ1Ô1€AØ‡I‚Iˆa�L„L€LØ•˜˜A˜  A ¨¨A¨Ð/Ñ0Ô0Ò0Ð0Ð0Ð0Ý�	�	�	˜9˜9˜9 i i iÐ0Ñ1Ô1€AØ‡I‚Iˆb�M„M€MØ•˜˜A˜  A ¨¨A¨Ð/Ñ0Ô0Ò0Ð0Ð0Ð0Ý�	�	�	˜9˜9˜9 i i iÐ0Ñ1Ô1€AÝ
�:Ð,Ð,Ð,Ð,Ñ-Ô-Ð-Ý�	�	�	˜9˜9˜9 i i iÐ0Ñ1Ô1€AÝ
�:Ð-Ð-Ð-Ð-Ñ.Ô.Ð.Ð.Ð.rm   c                  óz  — t          dd¬¦  «        \  } }t          d¦  «        \  }}t          d¦  «        }t          dd| ||t          g¦  «        }|| z  |z  | |z  |z  k    sJ ‚||z  |z  ||z  |z  k    sJ ‚| |z  || z  k    sJ ‚||z  ||z  k    sJ ‚|| z  |z  t          || z  dgd|| z  gg¦  «        k    sJ ‚d S )Nr.  F)Úcommutativeza br„   r   )r   r5   r1   r`   )r^   r_   rZ   r[   rÄ   r¡  s         rn   Útest_issue_9422rÛ    së   € Ý�5 eÐ,Ñ,Ô,�D€A€qÝ�5‰>Œ>�D€A€qÝˆA‰Œ€AÝ	��1�q˜!˜Q¥�lÑ	#Ô	#€BØˆQ‰3ˆq‰5�A�a‘C˜‘EŠ>ˆ>ˆ>ˆ>ØˆQ‰3ˆq‰5�A�a‘C˜‘EŠ>ˆ>ˆ>ˆ>ØˆR‰4�2�a‘4Š<ˆ<ˆ<ˆ<ØˆR‰4�2�a‘4Š<ˆ<ˆ<ˆ<ØˆQ‰3ˆq‰5•F˜Q˜q™S !˜H q¨!¨A©# hÐ/Ñ0Ô0Ò0Ð0Ð0Ð0Ð0Ð0rm   c                  óh  — t          g ¦  «        } ddgt          g d¢¦  «        f}ddg|d         j        f}ddgt          ddgdd	gg¦  «        f}|||fD ]]\  }}|D ]U}t          | |¦  «        }d
|v r ||¦  «        n |d|¦  «        }||k    r t          |¦  «        t          |¦  «        k    sJ ‚ŒVŒ^d S )NrP  rI  )r·   r§   rƒ   rM  rK  r¡   r„   rƒ   r¦   ÚjoinrF  )r1   r¨  rŸ  Úid)	rÄ   rZ   r[   r\   Úopsr–   Úopr  Únews	            rn   Útest_issue_10770râ    sð   € Ýˆr‰
Œ
€AØ	�zÐ"¥F¨9¨9¨9Ñ$5Ô$5Ð5€AØ	�zÐ" A a¤D¤FÐ*€AØ	�|Ð$¥f¨q°!¨f°q¸!°fÐ-=Ñ&>Ô&>Ð>€AØ�a˜�)ð 1ð 1‰ˆˆQØð 	1ð 	1ˆBÝ˜˜2‘”ˆAØ  B˜,˜,�!�!�A‘$”$�$¨A¨A¨b°!©H¬HˆCØ˜!’8�8¥ 3¡¤­2¨a©5¬5Ò 0Ð 0Ð 0Ð0Ð 0ð	1ð1ð 1rm   c                  óì  — t          g d¢g d¢g d¢g¦  «        } |                      g d¢g d¢¦  «        t          ddgdd	gd
dgg¦  «        k    sJ ‚|                      g d¢g d¢¦  «        t          dgdgd
gg¦  «        k    sJ ‚|                      g d¢g d¢¦  «        t          g d¢g¦  «        k    sJ ‚|                      g d¢g d¢¦  «        t          g d¢g d¢g¦  «        k    sJ ‚|                      g d¢g d¢¦  «        t          ddg ¦  «        k    sJ ‚|                      g d¢g d¢¦  «        t          ddg ¦  «        k    sJ ‚|                      g d¢g d¢¦  «        t          dgdgg¦  «        k    sJ ‚d S )Nr¥   rO  rØ  r»   )TTFr¡   r„   r¦   r¹   rº   r½   )TFF)TFT)FFFrƒ   r   )FTF)r1   rÃ   rñ   s    rn   Útest_issue_10658rä    sê  € Ý�	�	�	˜9˜9˜9 i i iÐ0Ñ1Ô1€AØ�9Š9�Y�Y�YÐ 3Ð 3Ð 3Ñ4Ô4Ý��A�˜˜A˜  A Ð'Ñ(Ô(ò)ð )ð )ð )à�9Š9�Y�Y�YÐ 4Ð 4Ð 4Ñ5Ô5½À!ÀÀqÀcÈAÈ3ÀÑ9PÔ9PÒPÐPÐPÐPØ�9Š9Ð)Ð)Ð)¨9¨9¨9Ñ5Ô5½ÀÀÀÀÑ9LÔ9LÒLÐLÐLÐLØ�9Š9Ð(Ð(Ð(¨)¨)¨)Ñ4Ô4Ý�	�	�	˜9˜9˜9Ð%Ñ&Ô&ò'ð 'ð 'ð 'à�9Š9�Y�Y�YÐ 5Ð 5Ð 5Ñ6Ô6½&ÀÀAÀrÑ:JÔ:JÒJÐJÐJÐJØ�9Š9Ð*Ð*Ð*¨I¨I¨IÑ6Ô6½&ÀÀAÀrÑ:JÔ:JÒJÐJÐJÐJØ�9Š9Ð(Ð(Ð(Ð*>Ð*>Ð*>Ñ?Ô?Ý���a�SˆzÑÔòð ð ð ð ð rm   c                  óv  — t          ddt          d¦  «        z  z   dgdt          d¦  «        z  dz  dz   dt          d¦  «        z  dz  gg¦  «        } |                      ¦   «         dk    sJ ‚t          ddt          d¦  «        z  t          z  z   dgdddt          d¦  «        z  t          z  z   gg¦  «        } t	          |                      ¦   «         d	         t          ddddt          d¦  «        z  t          z  z   z  gd	d	gg¦  «        z
  ¦  «        t          dd¦  «        k    sJ ‚t          d
¦  «        \  }}}}}}}}}	}
}}t          ||||z  ||z  d	g||||z  ||z  d	g||||z  ||z  dg||||z  ||z  dg|	|
d|	z  |z  |	|z  z
  d|
z  |z  |
|z  z
  d	gg¦  «        } |                      ¦   «         dk    sJ ‚d S )NrC  r¹   r„   r¡   rƒ   rû  r¦   r¬   r   ú/a_x a_y b_x b_y c_x c_y d_x d_y e_x e_y t_0 t_1)r1   r   rŒ  r
   r%   rF  r>   r   )r–   ÚaxÚayÚbxÚbyÚcxÚcyÚdxÚdyÚexÚeyÚt0Út1s                rn   Ú!test_opportunistic_simplificationró  )  s*  € õ 	��a�˜Q™œ‘i‘ Ð$ r­$¨q©'¬'¡z°!¡|°aÑ'7¸½DÀ¹G¼G¹ÀA¹Ð&FÐGÑHÔH€AØ�6Š6‰8Œ8�qŠ=ˆ=ˆ=ˆ=õ 	��1•T˜!‘W”W‘9�Q‘;‘ Ð# Q r¨!­D°©G¬G©)µA©+¡~Ð$6Ð7Ñ8Ô8€AÝ�A—F’F‘H”H˜Q”K¥&¨1¨b°!°a½¸Q¹¼±iÅ±k±/Ñ.BÐ*CÀaÈÀVÐ)LÑ"MÔ"MÑMÑNÔNÕRWÐXYÐ[\ÑR]ÔR]Ò]Ð]Ð]Ð]õ +2Ð2cÑ*dÔ*dÑ'€B€rˆ"ˆR��2�b˜˜B˜r " RÝ��B�r˜"‘u˜R ™U 1Ð% r¨"¨R°©U°2°b±5¸Ð&;¸RÀÀ2ÀbÁ5ÈÈBÉÈqÐ<QÐSUÐVXÐY[Ð\^ÑY^Ð_aÐbdÑ_dÐefÐRgÐikÐlnÐopÐqsÑosÐtvÑovÐwyÐz|Ñw|Ño|Ð}~ð  @Bñ  ~Bð  CEñ  ~Eð  FHð  IKñ  FKñ  ~Kð  LMð  iNð  Oñ  	Pô  	P€AØ�6Š6‰8Œ8�qŠ=ˆ=ˆ=ˆ=ˆ=ˆ=rm   c                  ó  — t          g d¢g d¢g¦  «        } |                      ¦   «         d         t          g d¢g d¢g¦  «        z
                       ¦   «         dk     sJ ‚t          g d¢g d¢g d	¢g¦  «        }t          g d
¢g d¢g d¢g¦  «        }t          g d¢g d¢g d	¢g¦  «        }|                     ¦   «         |z
                       ¦   «         dk     sJ ‚|                     ¦   «         |z
                       ¦   «         dk     sJ ‚d S )N)gú~j¼t“h?gR¸…ë‘M@gö(\�Â•M@)gD‹lçû)@g…ëQ¸…Àg¤p=
×cG@r   )rÑ  r   rí   )r   rÑ  rÑ  çVçž¯Ò<)çqµô7K‘<rÑ  r¦   )ç      ð¿r   r½   rì   )rö  rÑ  r½  )r÷  ç        ç       @)rø  rø  rÑ  )r   r÷  rù  )rÑ  rö  g      À)r1   rF  rÅ  r  )ÚmmÚm_mixedÚm_floatÚm_invs       rn   Útest_partial_pivotingrþ  9  sf  € õ
 Ð$Ð$Ð$Ð&;Ð&;Ð&;Ð<Ñ=Ô=€BØ�GŠG‰IŒI�aŒL�6Ð#3Ð#3Ð#3Ø#3Ð#3Ð#3ð#5ñ 6ô 6ñ 6ß7;²t±v´vÀòFð Fð Fð Fõ �o�o�oØ%�o�oØ%�o�oð'ñ (ô (€Gõ Ð'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'ð)ñ *ô *€Gõ Ð(Ð(Ð(Ø(Ð(Ð(Ø(Ð(Ð(ð*ñ +ô +€Eð
 �KŠK‰MŒM˜EÑ!×'Ò'Ñ)Ô)¨EÒ1Ð1Ð1Ð1Ø�KŠK‰MŒM˜EÑ!×'Ò'Ñ)Ô)¨EÒ1Ð1Ð1Ð1Ð1Ð1rm   c                  óú   — t          g d¢g d¢g d¢g¦  «        } |                      d„ ¬¦  «        d         }t          g d¢g d¢g d	¢g¦  «        }||z
  }|                     ¦   «         d
k     sJ ‚|d         dk    sJ ‚dS )z‘ When doing numerical computations, all elements that pass
    the iszerofunc test should be set to numerically zero if they
    aren't already. )çÍÌÌÌÌÌì?çš™™™™™¹¿gš™™™™™É¿r   )çš™™™™™é¿r   gš™™™™™Ù¿r   )r  r  g333333ã?r   c                 ó(   — t          | ¦  «        dk     S )Ng [n‡û<rŸ  r/  s    rn   ry   z*test_iszero_substitution.<locals>.<lambda>X  s   € ­¨Q©¬°ª€ rm   rx  r   )rÑ  r   g¡4iÒ¤IÓ¿r   )r   rÑ  g¹lÙ²eËæ¿r   rË  rõ  rÏ  N)r1   rF  rÅ  )r–   Úm_rrefÚ	m_correctÚm_diffs       rn   Útest_iszero_substitutionr  Q  s°   € õ 	Ð$Ð$Ð$Ð%9Ð%9Ð%9Ð:NÐ:NÐ:NÐOÑPÔP€AØ�VŠVÐ5Ð5ˆVÑ6Ô6°qÔ9€FÝÐ9Ð9Ð9Ð:[Ð:[Ð:[Ð\}Ð\}Ð\}Ð~ÑÔ€IØ�iÑ€FØ�;Š;‰=Œ=˜5Ò Ð Ð Ð à�#Œ;˜!ÒÐÐÐÐÐrm   c            	      óø  — ddl m}  dt          t          t	          dd¦  «        z  ¦  «        z  t          t          t	          dd¦  «        z  ¦  «        t          d¦  «        z   z  }dt          d¦  «        z  t          t          t	          dd¦  «        z  ¦  «        dz  z  d	t          t          t	          dd¦  «        z  ¦  «        z  z   d
t          t          t	          dd¦  «        z  ¦  «        dz  z   z  } | dd¦  «        } | dt          d¦  «         ¦  «        } | ||¦  «        }t          |t          |¦  «        z
  |t          |¦  «        z
  g¦  «        }t          ||z
  ||z
  g¦  «        }t          t          ||z
  ¦  «        t          ||z
  ¦  «        g¦  «        }d„ }	|                     d|	¬¦  «        dk    sJ ‚|                     d|	¬¦  «        dk    sJ ‚|                     d|	¬¦  «        dk    sJ ‚d S )Nr   )ÚPointr½   rÄ  é-   rƒ   rü  r„   rá   r¬   r¡   c                 óB   — t           | j        ¦   «         ¦  «        dk     S )Ng#B’¡œÇ;)r­   r|   r/  s    rn   ry   z"test_issue_11238.<locals>.<lambda>m  s   € •#�c�a”c‘e”e‘*”*˜uÒ$€ rm   T)r%   r”  )	Úsympy.geometry.pointr	  r   r   r   r   r1   r%   rŒ  )
r	  ÚxxÚyyÚp1Úp2Úp0rÇ  rÈ  Úm3ÚZs
             rn   Útest_issue_11238r  _  sð  € Ø*Ð*Ð*Ð*Ð*Ð*Ø	
�3�r•(˜2˜rÑ"Ô"Ñ"Ñ#Ô#Ñ	#¥S­­H°R¸Ñ,<Ô,<Ñ)<Ñ%=Ô%=ÅÀQÁÄÑ%GÑ	H€BØ
�T�!‰WŒW‰*•S��H R¨Ñ,Ô,Ñ,Ñ-Ô-¨qÑ0Ñ
0°2µc½"½XÀbÈ"Ñ=MÔ=MÑ:MÑ6NÔ6NÑ3NÑ
NÐQSÕVYÕZ\Õ]eÐfhÐjlÑ]mÔ]mÑZmÑVnÔVnÐpqÑVqÑQqÑ	r€BØ	ˆˆq�!‰Œ€BØ	ˆˆq•4˜‘7”7�(Ñ	Ô	€BØ	ˆˆr�"‰Œ€BÝ	�•h˜r‘l”lÑ" B­°"©¬Ñ$5Ð6Ñ	7Ô	7€BÝ	��b‘˜"˜r™'Ð"Ñ	#Ô	#€BÝ	•˜"˜r™'Ñ"Ô"¥H¨R°"©WÑ$5Ô$5Ð6Ñ	7Ô	7€Bð
 	%Ð$€AØ�7Š7˜D¨Qˆ7Ñ/Ô/°1Ò4Ð4Ð4Ð4Ø�7Š7˜D¨Qˆ7Ñ/Ô/°1Ò4Ð4Ð4Ð4Ø�7Š7˜D¨Qˆ7Ñ/Ô/°1Ò4Ð4Ð4Ð4Ð4Ð4rm   c                  ó0  — t          ddg d¢¦  «        } | t          j        z  }| |z   }t          D ]f} ||¦  «                             ¦   «         \  }}t          |¦  «        t          | ¦  «        k    sJ ‚t          |¦  «        t          | ¦  «        k    sJ ‚Œgd S )Nr„   rÍ  )r1   r   ÚImaginaryUnitr‹   Úas_real_imagr‘   )rÇ  rÈ  r  ÚklsrZ   r[   s         rn   Útest_as_real_imagr  r  sŸ   € Ý	��!�I�I�IÑ	Ô	€BØ	�AŒOÑ	€BØ	ˆb‰€Båð #ð #ˆØˆc�"‰gŒg×"Ò"Ñ$Ô$‰ˆˆ!Ý�A‰wŒw�$˜r™(œ(Ò"Ð"Ð"Ð"Ý�A‰wŒw�$˜r™(œ(Ò"Ð"Ð"Ð"Ð"ð#ð #rm   c                  óÔ   — t          ddg d¢¦  «        } |                      ¦   «         \  }}|d         t          dddg¦  «        k    sJ ‚|d         t          ddg d¢¦  «        k    sJ ‚d S )Nrƒ   rù  r¡   r„   r   )r„   r¡   r   r„   )r1   Újordan_cells)r–   r  ÚJcellss      rn   Útest_deprecatedr  |  s}   € õ
 	ˆq�!Ð2Ð2Ð2Ñ3Ô3€AØ—’Ñ Ô �I€A€vØ�!Œ9�˜q ! a SÑ)Ô)Ò)Ð)Ð)Ð)Ø�!Œ9�˜q ! \ \ \Ñ2Ô2Ò2Ð2Ð2Ð2Ð2Ð2rm   c                  óÚ   — ddl m}  t          g d¢¦  «        }t          g d¢¦  «        } | |d¦  «        t          g d¢¦  «        k    sJ ‚ | |d¦  «        t          g d¢¦  «        k    sJ ‚d S )	Nr   )ÚMod)rä   r¡   r„   )rÍ   r›  rú  rƒ   )r„   r¡   r„   r¦   )r„   r   r¡   )Úsympy.core.modr  r1   )r  rò   r—  s      rn   Útest_issue_14489r!  ‡  sŠ   € Ø"Ð"Ð"Ð"Ð"Ð"ÝˆzˆzˆzÑÔ€AÝˆ}ˆ}ˆ}ÑÔ€Aàˆ3ˆq�!‰9Œ9�˜y˜y˜yÑ)Ô)Ò)Ð)Ð)Ð)Øˆ3ˆq�!‰9Œ9�˜y˜y˜yÑ)Ô)Ò)Ð)Ð)Ð)Ð)Ð)rm   c                  óÂ   — 	 ddl m}  n# t          $ r t          d¦  «         Y nw xY wt	          ddgddgg¦  «        } | |t
          ¬¦  «        j        j        d	k    sJ ‚d S )
Nr   r­  r¯  r¡   r„   rƒ   r¦   )ÚdtypeÚfloat64)r±  r®  r²  rQ   r1   Úfloatr#  Úname)r®  rÄ   s     rn   Útest_issue_14943r'  �  s˜   € ðPØÐÐÐÐÐÐøÝð Pð Pð PÝÐNÑOÔOÐOÐOÐOðPøøøõ 	��1�˜˜!�uˆ~ÑÔ€AØˆ5��%Ð Ñ Ô Ô&Ô+¨yÒ8Ð8Ð8Ð8Ð8Ð8s   ‚	 ‰%¤%c                  óˆ   — t          ddd¦  «        } t          d¦  «        }| d         dk    }t          |¦  «        dk    sJ ‚d S )Nr–   r¡   rZ   r¼   r   zm[0, 0] > 0)rA   r   r  )r–   rZ   s     rn   Útest_case_6913r)  ™  sH   € Ý�S˜!˜QÑÔ€AÝˆs‰Œ€AØ	ˆ$Œ�Š	€AÝˆq‰6Œ6�]Ò"Ð"Ð"Ð"Ð"Ð"rm   c                  ó€   — t          ddd¦  «        } t          d¦  «        }|                      |¦  «        || ik    sJ ‚d S )Nrò   rƒ   rZ   )rA   rH   Úmatch)rò   rZ   s     rn   Útest_issue_11948r,  Ÿ  sC   € Ý�S˜!˜QÑÔ€AÝˆS‰	Œ	€AØ�7Š7�1‰:Œ:˜!˜Q˜ÒÐÐÐÐÐrm   c                  ó¾  — t          dt          g¦  «        t          dt           g¦  «        g} t          j        | Ž t          dgt          gg¦  «        t          dgt           gg¦  «        gk    sJ ‚t          dt          dg¦  «        t          t          dt           g¦  «        g} t          j        | Ž t          dgt          gdgg¦  «        t          t          dz  gt          d¦  «        dz  gt           gg¦  «        gk    sJ ‚t          dt          gdt           gg¦  «        }|                     ¦   «         \  }}||j        z  t          j        d¦  «        k    sJ ‚d S )Nr¡   r   r„   )r1   r
   Úorthogonalizer   ÚQRdecompositionr2  r5   )Úvecsrœ   rU   r  s       rn   Útest_gramschmidt_conjugate_dotr1  ¤  sQ  € Ý�A•q�6‰NŒN�F A­ r 7™OœOÐ,€DÝÔ Ð&Ý	�!�•q�c�
Ñ	Ô	�V a S­A¨2¨$ KÑ0Ô0Ð1ò2ð 2ð 2ð 2õ �A•q˜!�9ÑÔ�v¥q¨!­a¨R jÑ1Ô1Ð2€DÝÔ Ð&Ý	�!�•q�c˜A˜3�Ñ	 Ô	 ¥&­1¨Q©3¨%µ!°A±$´$°q±&°½Q¸B¸4Ð)@Ñ"AÔ"AÐBòCð Cð Cð Cõ �1•a�&˜1�q˜b˜'Ð"Ñ
#Ô
#€CØ×ÒÑ Ô �D€A€qØˆqŒs‰7•f”j ‘m”mÒ#Ð#Ð#Ð#Ð#Ð#rm   c                  ó"  — t          t          ddd¦  «        ¦  «        } t          t          ddd¦  «        ¦  «        } | j        |¦  «        }t          || d         ¦  «        }t          || d         ¦  «        }||d         k    sJ ‚|dk    sJ ‚d S )NrZ   rƒ   r¡   r[   r¼   r   )r1   rA   r^  r   )rZ   r[   r\   r]   rÌ  s        rn   Útest_issue_8207r3  ±  s‹   € Ý�|˜C  AÑ&Ô&Ñ'Ô'€AÝ�|˜C  AÑ&Ô&Ñ'Ô'€AØˆŒˆa‰Œ€AÝˆQ��$”ÑÔ€AÝˆQ��$”ÑÔ€AØ��$”Š<ˆ<ˆ<ˆ<Ø�Š6ˆ6ˆ6ˆ6ˆ6ˆ6rm   c            	      óL  ‡— ddl m}  t          ddgddgg¦  «        Š‰                     t	          t
          t          z  ¦  «        t
          ¦  «        t          t	          t          ¦  «        t	          dt          z  ¦  «        t	          t          ¦  «        z
  gdt	          dt          z  ¦  «        gg¦  «        k    sJ ‚t          ddgddgg¦  «        Št          ‰z  dz                       t          t
          ¦  «        t
          ¦  «        t          t          d¦  «        dz  t          d¦  «         dz  gt          d¦  «         dz  t          d¦  «        dz  gg¦  «        k    sJ ‚t          t          d„ ¦  «         t          t          ˆfd	„¦  «         t          g d
¢g d
¢g d¢g d¢g¦  «        Š‰                     t          t
          ¦  «        t
          ¦  «        ‰                     ¦   «         k    sJ ‚t          t          ˆfd„¦  «         t          ddgddgg¦  «        Št          ‰                     t          t
          ¦  «        t
          ¦  «        dz  ¦  «        ‰k    sJ ‚t          g d¢g d¢g d¢g¦  «        Št          ‰                      | t
          d¦  «        t
          ¦  «        dz  ¦  «        ‰k    sJ ‚t          g d¢g d¢g d¢g d¢g¦  «        Š‰                     t          t
          ¦  «        t
          ¦  «        ‰                     ¦   «         k    sJ ‚t          g d¢g d¢g d¢g d¢g¦  «        Š‰                     t          t
          t          z  ¦  «        t
          ¦  «        t          t          ‰t          z                       ¦   «         ¦  «        ¦  «        k    sJ ‚d S )Nr   )Únthrootr¡   r„   rƒ   r§   r¦   c                  óv   — t          d¦  «                             t          t          ¦  «        t          ¦  «        S rÚ  )r>   Úanalytic_funcr   r^   rl   rm   rn   ry   ztest_func.<locals>.<lambda>Ä  s"   € ¥ a¡¤× 6Ò 6µs½1±v´v½qÑ AÔ A€ rm   c                  ón   •— ‰ t           z                       t          t           ¦  «        t           ¦  «        S rt   )r^   r7  r   rñ   s   €rn   ry   ztest_func.<locals>.<lambda>Å  s!   ø€  ¥1¡× 3Ò 3µC½±F´F½AÑ >Ô >€ rm   )r   rä   r  rƒ   )r   r¡   r   rä   )r   r   rä   r¡   c                  ó^   •— ‰                       t          t          ¦  «        t          ¦  «        S rt   )r7  r   r^   rñ   s   €rn   ry   ztest_func.<locals>.<lambda>É  s   ø€  §¢µµQ±´½Ñ ;Ô ;€ rm   r™  rÜ   é"   )rƒ   r—  r¦   )rä   r   r  )rä   r¹   rä   rÁ   )r¡   r„   r   r   )r   r¡   rƒ   r   )r   r   r¡   rƒ   )r   r„   r¡   r§   )r   r   r¡   r„   )r   r   r   rƒ   rË  )Úsympy.simplify.simplifyr5  r1   r7  r   r^   ra   r   r   r   rN   r  r   r%   r   )r5  rò   s    @rn   Ú	test_funcr<  º  s6  ø€ Ø/Ð/Ð/Ð/Ð/Ð/å��A�˜˜1�vˆÑÔ€AØ�?Š?�3�q¥™s™8œ8¥QÑ'Ô'­6µC½±F´F½CÀÅ!Á¹H¼HÅsÍ1ÁvÄvÑ<MÐ3NÐQRÕTWÐXYÕZ[ÑX[ÑT\ÔT\ÐP]Ð2^Ñ+_Ô+_Ò_Ð_Ð_Ð_å��A�˜˜1�vˆÑÔ€AÝ�‰F�Q‰J×%Ò%¥c­!¡f¤f­aÑ0Ô0µF½TÀ!¹W¼WÀQ¹YÍÈaÉÌÈÐQRÉ
Ð<SÕW[Ð\]ÑW^ÔW^ÐV^Ð_`ÑV`ÕbfÐghÑbiÔbiÐjkÑbkÐUlÐ;mÑ4nÔ4nÒnÐnÐnÐnõ �:ÐAÐAÑBÔBÐBÝ
�:Ð>Ð>Ð>Ð>Ñ?Ô?Ð?å���   °°°¸}¸}¸}ÐMÑNÔN€AØ�?Š?�3�q™6œ6¥1Ñ%Ô%¨¯ª©¬Ò0Ð0Ð0Ð0Ý
�:Ð;Ð;Ð;Ð;Ñ<Ô<Ð<å��R�˜"˜b˜Ð"Ñ#Ô#€AÝ�A—O’O¥D­¡G¤G­QÑ/Ô/°Ñ2Ñ3Ô3°qÒ8Ð8Ð8Ð8å���˜[˜[˜[¨+¨+¨+Ð6Ñ7Ô7€AÝ�A—O’O G G­A¨q¡M¤Mµ1Ñ5Ô5°qÑ8Ñ9Ô9¸QÒ>Ð>Ð>Ð>å���˜l˜l˜l¨L¨L¨L¸,¸,¸,ÐGÑHÔH€AØ�?Š?�3�q™6œ6¥1Ñ%Ô%¨¯ª©¬Ò0Ð0Ð0Ð0å���˜l˜l˜l¨L¨L¨L¸,¸,¸,ÐGÑHÔH€AØ�?Š?�3�q¥™s™8œ8¥QÑ'Ô'­6µ(¸A½a¹C¿9º9¹;¼;Ñ2GÔ2GÑ+HÔ+HÒHÐHÐHÐHÐHÐHrm   z$Cannot create threads under pyodide.c                  ó   — d„ } t          d¦  «        5  t          j                             ¦   «         5 }|                     | ¦  «        }|                     ¦   «         sJ ‚	 d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )Nc                  óV   — t           j        d k    sJ ‚t          dgg¦  «        } | | z  } dS r  )rF   Ústater1   rè   s    rn   r  ztest_issue_19809.<locals>.fÛ  s3   € Ý!Ô'¨4Ò/Ð/Ð/Ð/Ý�Q�C�5‰MŒMˆØ�‰EˆØˆtrm   T)rB   Ú
concurrentÚfuturesÚThreadPoolExecutorÚsubmitÚresult)r  ÚexecutorÚfutures      rn   Útest_issue_19809rG  Ø  s  € ðð ð õ 
�TÑ	Ô	ð #ð #ÝÔ×2Ò2Ñ4Ô4ð 	#¸Ø—_’_ QÑ'Ô'ˆFØ—=’=‘?”?Ð"Ð"�?Ð"ð	#ð 	#ð 	#ñ 	#ô 	#ð 	#ð 	#ð 	#ð 	#ð 	#ð 	#øøøð 	#ð 	#ð 	#ð 	#ð#ð #ð #ñ #ô #ð #ð #ð #ð #ð #ð #ð #øøøð #ð #ð #ð #ð #ð #s4   “B²,A+ÁBÁ+A/	Á/BÁ2A/	Á3BÂBÂ
Bc                  óÔ   — t          t          t          g¦  «        } t          | t          ddft          ddf¦  «        t          t          j        gt          j        gg¦  «        k    sJ ‚d S rk  )r1   r^   r_   r   r   r  r  s    rn   Útest_issue_23276rI  ç  si   € Ý••1ˆv‰Œ€AÝ�Q�˜A˜q˜	¥A q¨! 9Ñ-Ô-µÝ	
ŒˆÝ	
Œˆð9ñ 2ô 2ò ð ð ð ð ð rm   c                  ó�  — t          g d¢g d¢g d¢g d¢g¦  «        } |                      ¦   «         }|d         t          g d¢¦  «        k    sJ ‚|d         t          g d¢¦  «        k    sJ ‚|d	         t          g d
¢¦  «        k    sJ ‚t          |¦  «        dk    sJ ‚t          j        | g|¢R Ž                      ¦   «         |k    sJ ‚d S )N©r¡   r„   r   r„   r¹   ©r  rC  r¡   rä   rü  ©r   r¬   rƒ   r¦   r¡   ©rƒ   r§   r   re  r„   r   )r¡   r  r   rƒ   r¡   )r„   rC  r¬   r§   r„   )r„   rä   r¦   re  rƒ   )rg   ra  r1   r7  rS  ©r–   Úbasiss     rn   Útest_columnspace_onerQ  ï  sô   € ÝÐ0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ñ 	3ô 	3€Að
 �MŠM‰OŒO€EØ�Œ8•v˜m˜m˜mÑ,Ô,Ò,Ð,Ð,Ð,Ø�Œ8•v˜n˜n˜nÑ-Ô-Ò-Ð-Ð-Ð-Ø�Œ8•v˜n˜n˜nÑ-Ô-Ò-Ð-Ð-Ð-åˆu‰:Œ:˜Š?ˆ?ˆ?ˆ?ÝŒ=˜Ð#˜UÐ#Ð#Ð#×/Ò/Ñ1Ô1°UÒ:Ð:Ð:Ð:Ð:Ð:rm   c                  óB  — t          g d¢g d¢g d¢g d¢g¦  «        } |                      ¦   «         }|d         t          g d¢g¦  «        k    sJ ‚|d         t          g d¢g¦  «        k    sJ ‚|d         t          g d	¢g¦  «        k    sJ ‚t          |¦  «        d
k    sJ ‚d S )NrK  rL  rM  rN  r   r¡   )r   rä   r¡   rƒ   r„   r„   )r   r   r   r¹   r¹   rƒ   )rg   r^  r1   r7  rO  s     rn   Útest_rowspacerS  þ  sÏ   € ÝÐ0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ñ 	3ô 	3€Að
 �JŠJ‰LŒL€EØ�Œ8•v˜˜˜Ð/Ñ0Ô0Ò0Ð0Ð0Ð0Ø�Œ8•vÐ/Ð/Ð/Ð0Ñ1Ô1Ò1Ð1Ð1Ð1Ø�Œ8•v˜˜˜Ð/Ñ0Ô0Ò0Ð0Ð0Ð0åˆu‰:Œ:˜Š?ˆ?ˆ?ˆ?ˆ?ˆ?rm   c                  óh  — t          g d¢g d¢g d¢g d¢g¦  «        } |                      ¦   «         }|d         t          g d¢¦  «        k    sJ ‚|d         t          g d¢¦  «        k    sJ ‚t          d	„ | |d         z  D ¦   «         ¦  «        sJ ‚t          d
„ | |d         z  D ¦   «         ¦  «        sJ ‚d S )NrK  rL  rM  rN  r   )r  r¡   r¡   r   r   r¡   )rä   rä   r   rä   r¡   c              3   ó$   K  — | ]}|j         V — Œd S rt   ©rç  r   s     rn   r‰   z%test_nullspace_one.<locals>.<genexpr>  ó$   è è € Ð-Ð-˜QˆqŒyÐ-Ð-Ð-Ð-Ð-Ð-rm   c              3   ó$   K  — | ]}|j         V — Œd S rt   rV  r   s     rn   r‰   z%test_nullspace_one.<locals>.<genexpr>  rW  rm   )rg   rf  r1   r�   rO  s     rn   Útest_nullspace_onerY    sí   € ÝÐ0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ñ 	3ô 	3€Að
 �KŠK‰MŒM€EØ�Œ8•vÐ.Ð.Ð.Ñ/Ô/Ò/Ð/Ð/Ð/Ø�Œ8•vÐ0Ð0Ð0Ñ1Ô1Ò1Ð1Ð1Ð1åÐ-Ð- ! E¨!¤H¡*Ð-Ñ-Ô-Ñ-Ô-Ð-Ð-Ð-ÝÐ-Ð- ! E¨!¤H¡*Ð-Ñ-Ô-Ñ-Ô-Ð-Ð-Ð-Ð-Ð-rm   c                  óÒ  ‡— t          d¦  «        Št          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd	„¦  «         t          t          ˆfd
„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         ‰                     ddd¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚‰                     ddd¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚‰                     ddd¬¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚‰                     ddd¬¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚‰                     ddd¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚‰                     ddd¬¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚‰                     ddd¬¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚‰                     dddd¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚‰                     dddd¬¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚‰                     dddd¬ ¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚t          d!ddgd"z  ¦  «        }  | j        ddd¦  «        t	          d!ddgd"z  ¦  «        k    sJ ‚ | j        ddd¦  «        t	          d!ddgd"z  ¦  «        k    sJ ‚ | j        dddd¦  «        t	          d!ddgd"z  ¦  «        k    sJ ‚d S )#Nrƒ   c                  ó.   •— ‰                       d¦  «        S ©NÚabc©Úelementary_row_op©rÌ  s   €rn   ry   ztest_row_op.<locals>.<lambda>  ó   ø€ ˜q×2Ò2°5Ñ9Ô9€ rm   c                  ó,   •— ‰                       ¦   «         S rt   r^  r`  s   €rn   ry   ztest_row_op.<locals>.<lambda>  ó   ø€ ˜q×2Ò2Ñ4Ô4€ rm   c                  ó4   •— ‰                       ddd¬¦  «        S )Nún->knr¹   ©rI  r¤  r^  r`  s   €rn   ry   ztest_row_op.<locals>.<lambda>   ó   ø€ ˜q×2Ò2°7ÀÀQÐ2ÑGÔG€ rm   c                  ó4   •— ‰                       ddd¬¦  «        S )Nre  rC  r¹   rf  r^  r`  s   €rn   ry   ztest_row_op.<locals>.<lambda>!  ó   ø€ ˜q×2Ò2°7ÀÀaÐ2ÑHÔH€ rm   c                  ó4   •— ‰                       ddd¬¦  «        S )Nún<->mr¡   r¹   ©Úrow1Úrow2r^  r`  s   €rn   ry   ztest_row_op.<locals>.<lambda>"  ó   ø€ ˜q×2Ò2°7ÀÈÐ2ÑKÔK€ rm   c                  ó4   •— ‰                       ddd¬¦  «        S )Nrk  r¹   r¡   rl  r^  r`  s   €rn   ry   ztest_row_op.<locals>.<lambda>#  ro  rm   c                  ó4   •— ‰                       ddd¬¦  «        S )Nrk  rC  r¡   rl  r^  r`  s   €rn   ry   ztest_row_op.<locals>.<lambda>$  ó   ø€ ˜q×2Ò2°7ÀÈ!Ð2ÑLÔL€ rm   c                  ó4   •— ‰                       ddd¬¦  «        S )Nrk  r¡   rC  rl  r^  r`  s   €rn   ry   ztest_row_op.<locals>.<lambda>%  ó   ø€ ˜q×2Ò2°7ÀÈÐ2ÑLÔL€ rm   c                  ó6   •— ‰                       dddd¬¦  «        S ©Nún->n+kmr¡   r¹   ©rm  rn  r¤  r^  r`  s   €rn   ry   ztest_row_op.<locals>.<lambda>&  ó   ø€ ˜q×2Ò2°9À1È1ÐPQÐ2ÑRÔR€ rm   c                  ó6   •— ‰                       dddd¬¦  «        S )Nrw  r¹   r¡   rx  r^  r`  s   €rn   ry   ztest_row_op.<locals>.<lambda>'  ry  rm   c                  ó6   •— ‰                       dddd¬¦  «        S )Nrw  rC  r¡   r¹   rx  r^  r`  s   €rn   ry   ztest_row_op.<locals>.<lambda>(  ó   ø€ ˜q×2Ò2°9À2ÈAÐQRÐ2ÑSÔS€ rm   c                  ó6   •— ‰                       dddd¬¦  «        S )Nrw  r¡   rC  r¹   rx  r^  r`  s   €rn   ry   ztest_row_op.<locals>.<lambda>)  ó   ø€ ˜q×2Ò2°9À1È2ÐQRÐ2ÑSÔS€ rm   c                  ó6   •— ‰                       dddd¬¦  «        S rv  r^  r`  s   €rn   ry   ztest_row_op.<locals>.<lambda>*  ry  rm   re  r   r¹   râ  rë   rì   r¡   r:  r;  rf  )rm  r¤  rk  rl  )rI  rn  rw  )r¡   r¹   r   )rI  r¤  rn  )rm  r¤  rn  r„   r§   )r}   rN   r  r_  r1   rq   ©rZ   rÌ  s    @rn   Útest_row_opr�    óÀ  ø€ Ý�qÑÔ€Aå
�:Ð9Ð9Ð9Ð9Ñ:Ô:Ð:Ý
�:Ð4Ð4Ð4Ð4Ñ5Ô5Ð5Ý
�:ÐGÐGÐGÐGÑHÔHÐHÝ
�:ÐHÐHÐHÐHÑIÔIÐIÝ
�:ÐKÐKÐKÐKÑLÔLÐLÝ
�:ÐKÐKÐKÐKÑLÔLÐLÝ
�:ÐLÐLÐLÐLÑMÔMÐMÝ
�:ÐLÐLÐLÐLÑMÔMÐMÝ
�:ÐRÐRÐRÐRÑSÔSÐSÝ
�:ÐRÐRÐRÐRÑSÔSÐSÝ
�:ÐSÐSÐSÐSÑTÔTÐTÝ
�:ÐSÐSÐSÐSÑTÔTÐTÝ
�:ÐRÐRÐRÐRÑSÔSÐSð ×Ò˜w¨¨1Ñ-Ô-µ¸¸¸ÀIÀIÀIÈyÈyÈyÐ8YÑ1ZÔ1ZÒZÐZÐZÐZØ×Ò˜w¨¨1Ñ-Ô-µ¸¸¸ÀIÀIÀIÈyÈyÈyÐ8YÑ1ZÔ1ZÒZÐZÐZÐZØ×Ò˜w¨A°ÐÑ3Ô3µv¸y¸y¸yÈ)È)È)ÐU^ÐU^ÐU^Ð>_Ñ7`Ô7`Ò`Ð`Ð`Ð`Ø×Ò˜w¨Q°!ÐÑ4Ô4½À	À	À	È9È9È9ÐV_ÐV_ÐV_Ð?`Ñ8aÔ8aÒaÐaÐaÐaØ×Ò˜w¨¨1Ñ-Ô-µ¸¸¸ÀIÀIÀIÈyÈyÈyÐ8YÑ1ZÔ1ZÒZÐZÐZÐZØ×Ò˜w¨Q°QÐÑ7Ô7½6À9À9À9ÈiÈiÈiÐYbÐYbÐYbÐBcÑ;dÔ;dÒdÐdÐdÐdØ×Ò˜w¨A°AÐÑ6Ô6½&À)À)À)ÈYÈYÈYÐXaÐXaÐXaÐAbÑ:cÔ:cÒcÐcÐcÐcØ×Ò˜y¨!¨Q°Ñ2Ô2µf¸i¸i¸iÈÈÈÐT]ÐT]ÐT]Ð=^Ñ6_Ô6_Ò_Ð_Ð_Ð_Ø×Ò˜y¨a°1¸1ÐÑ=Ô=ÅÈÈÈÐT]ÐT]ÐT]Ð_hÐ_hÐ_hÐHiÑAjÔAjÒjÐjÐjÐjØ×Ò˜y¨q°A¸AÐÑ>Ô>Å&È)È)È)ÐU^ÐU^ÐU^Ð`iÐ`iÐ`iÐIjÑBkÔBkÒkÐkÐkÐkõ 	˜Q  A 3 q¡5Ñ)Ô)€AØˆ1Ô˜w¨¨1Ñ-Ô-µ¸¸1¸q¸cÀ!¹eÑ1DÔ1DÒDÐDÐDÐDØˆ1Ô˜w¨¨1Ñ-Ô-µ¸¸1¸q¸cÀ!¹eÑ1DÔ1DÒDÐDÐDÐDØˆ1Ô˜y¨!¨Q°Ñ2Ô2µf¸QÀÀAÀ3ÀqÁ5Ñ6IÔ6IÒIÐIÐIÐIÐIÐIrm   c                  óÒ  ‡— t          d¦  «        Št          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd	„¦  «         t          t          ˆfd
„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         ‰                     ddd¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚‰                     ddd¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚‰                     ddd¬¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚‰                     ddd¬¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚‰                     ddd¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚‰                     ddd¬¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚‰                     ddd¬¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚‰                     dddd¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚‰                     dddd¬¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚‰                     dddd¬ ¦  «        t	          g d¢g d¢g d¢g¦  «        k    sJ ‚t          d!ddgd"z  ¦  «        }  | j        ddd¦  «        t	          d!ddgd"z  ¦  «        k    sJ ‚ | j        ddd¦  «        t	          d!ddgd"z  ¦  «        k    sJ ‚ | j        dddd¦  «        t	          d!ddgd"z  ¦  «        k    sJ ‚d S )#Nrƒ   c                  ó.   •— ‰                       d¦  «        S r\  ©Úelementary_col_opr`  s   €rn   ry   ztest_col_op.<locals>.<lambda>B  ra  rm   c                  ó,   •— ‰                       ¦   «         S rt   r…  r`  s   €rn   ry   ztest_col_op.<locals>.<lambda>C  rc  rm   c                  ó4   •— ‰                       ddd¬¦  «        S )Nre  r¹   ©rJ  r¤  r…  r`  s   €rn   ry   ztest_col_op.<locals>.<lambda>D  rg  rm   c                  ó4   •— ‰                       ddd¬¦  «        S )Nre  rC  r¹   r‰  r…  r`  s   €rn   ry   ztest_col_op.<locals>.<lambda>E  ri  rm   c                  ó4   •— ‰                       ddd¬¦  «        S )Nrk  r¡   r¹   ©Úcol1Úcol2r…  r`  s   €rn   ry   ztest_col_op.<locals>.<lambda>F  ro  rm   c                  ó4   •— ‰                       ddd¬¦  «        S )Nrk  r¹   r¡   rŒ  r…  r`  s   €rn   ry   ztest_col_op.<locals>.<lambda>G  ro  rm   c                  ó4   •— ‰                       ddd¬¦  «        S )Nrk  rC  r¡   rŒ  r…  r`  s   €rn   ry   ztest_col_op.<locals>.<lambda>H  rr  rm   c                  ó4   •— ‰                       ddd¬¦  «        S )Nrk  r¡   rC  rŒ  r…  r`  s   €rn   ry   ztest_col_op.<locals>.<lambda>I  rt  rm   c                  ó6   •— ‰                       dddd¬¦  «        S ©Nrw  r¡   r¹   ©r�  rŽ  r¤  r…  r`  s   €rn   ry   ztest_col_op.<locals>.<lambda>J  ry  rm   c                  ó6   •— ‰                       dddd¬¦  «        S )Nrw  r¹   r¡   r”  r…  r`  s   €rn   ry   ztest_col_op.<locals>.<lambda>K  ry  rm   c                  ó6   •— ‰                       dddd¬¦  «        S )Nrw  rC  r¡   r¹   r”  r…  r`  s   €rn   ry   ztest_col_op.<locals>.<lambda>L  r|  rm   c                  ó6   •— ‰                       dddd¬¦  «        S )Nrw  r¡   rC  r¹   r”  r…  r`  s   €rn   ry   ztest_col_op.<locals>.<lambda>M  r~  rm   c                  ó6   •— ‰                       dddd¬¦  «        S r“  r…  r`  s   €rn   ry   ztest_col_op.<locals>.<lambda>N  ry  rm   re  r   r¹   râ  rë   rì   r¡   r:  r;  r‰  )r�  r¤  rk  rŒ  )rJ  rŽ  rw  )r¹   r¡   r   )rJ  r¤  rŽ  )r�  r¤  rŽ  r„   r§   )r}   rN   r  r†  r1   rq   r€  s    @rn   Útest_col_opr™  ?  r‚  rm   c                  óÔ  — t          d¦  «        } t          d¦  «        }| j        sJ ‚|j        sJ ‚t          ddg ¦  «        }|j        sJ ‚t          ddg d¢¦  «        }|j        sJ ‚t          ddg d¢¦  «        }|j        rJ ‚t	          d¦  «        }t          dd|ddg¦  «        }|j        sJ ‚t          dd||dg¦  «        }|j        rJ ‚t          ddg d¢¦  «        }|j        rJ ‚d S )	Nrƒ   r   r„   )rƒ   r„   r¡   r   r   r§   )r   r   r§   rƒ   r„   r¡   r^   r¡   ©	r   r   r   r¡   r„   rƒ   r   r   r   )r�   r}   Ú
is_echelonrq   r   )ÚzroÚidentrZ   r^   s       rn   Útest_is_echelonrŸ  c  s!  € Ý
˜1Ñ
Ô
€CÝ˜1ÑÔ€EàŒ>ÐÐˆ>ØÔÐÐÐå˜Q  2Ñ&Ô&€AØŒ<ÐÐˆ<å˜Q Ð#5Ð#5Ð#5Ñ6Ô6€AØŒ<ÐÐˆ<å˜Q Ð#5Ð#5Ð#5Ñ6Ô6€AØŒ|ÐÐÐåˆs‰Œ€AÝ˜Q  A q¨! 9Ñ-Ô-€AØŒ<ÐÐˆ<å˜Q  A q¨! 9Ñ-Ô-€AØŒ|ÐÐÐå˜Q Ð#>Ð#>Ð#>Ñ?Ô?€AØŒ|ÐÐÐÐÐrm   c                  óÐ  ‡‡— t          d¦  «        Št          d¦  «        }  ‰j        ¦   «         ‰k    sJ ‚|                      ¦   «         | k    sJ ‚t          ddg ¦  «        Š ‰j        ¦   «         ‰k    sJ ‚t          dddg¦  «        Š ‰j        ¦   «         ‰k    sJ ‚ˆfd„}t          ddg d¢¦  «        Št	          dgdgdgg¦  «        g}ˆfd„t          ‰j        ¦  «        D ¦   «         } ‰j        ¦   «         Š‰j        sJ ‚ |‰||¦  «         t          ddg d	¢¦  «        Šg }ˆfd
„t          ‰j        ¦  «        D ¦   «         } ‰j        ¦   «         Š‰j        sJ ‚ |‰||¦  «         t          ddg d¢¦  «        Št	          t          dd¦  «        gdgdgg¦  «        t	          t          dd¦  «        gdgdgg¦  «        g}ˆfd„t          ‰j        ¦  «        D ¦   «         } ‰j        ¦   «         Š‰j        sJ ‚ |‰||¦  «         t          ddg d¢¦  «        Št	          dgdgdgg¦  «        g}ˆfd„t          ‰j        ¦  «        D ¦   «         } ‰j        ¦   «         Š‰j        sJ ‚ |‰||¦  «         t          ddg d¢¦  «        Št	          dgdgdgg¦  «        t	          dgdgdgg¦  «        g}ˆfd„t          ‰j        ¦  «        D ¦   «         } ‰j        ¦   «         Š‰j        sJ ‚ |‰||¦  «         t          ddg d¢¦  «        Št	          dgdgdgg¦  «        g}ˆfd„t          ‰j        ¦  «        D ¦   «         } ‰j        ¦   «         Š‰j        sJ ‚ |‰||¦  «         d S )Nrƒ   r   r¡   r¹   c                 óê   •— |D ] }t          d„ ‰|z  D ¦   «         ¦  «        sJ ‚Œ!|D ]K}t          d„ |D ¦   «         ¦  «        s0t          d„ ‰|                     ¦   «         z  D ¦   «         ¦  «        rJ ‚ŒLd S )Nc              3   ó$   K  — | ]}|j         V — Œd S rt   rV  ©rˆ   ra   s     rn   r‰   zCtest_echelon_form.<locals>.verify_row_null_space.<locals>.<genexpr>”  s$   è è € Ð6Ð6 Q�q”yÐ6Ð6Ð6Ð6Ð6Ð6rm   c              3   ó$   K  — | ]}|j         V — Œd S rt   rV  r£  s     rn   r‰   zCtest_echelon_form.<locals>.verify_row_null_space.<locals>.<genexpr>–  s$   è è € Ð,Ð, Q�q”yÐ,Ð,Ð,Ð,Ð,Ð,rm   c              3   ó$   K  — | ]}|j         V — Œd S rt   rV  r£  s     rn   r‰   zCtest_echelon_form.<locals>.verify_row_null_space.<locals>.<genexpr>—  s$   è è € ÐJÐJ¨Q˜qœyÐJÐJÐJÐJÐJÐJrm   )r�   r-  )rœ   rŽ   Únullsr¢   Ú	a_echelons       €rn   Úverify_row_null_spacez0test_echelon_form.<locals>.verify_row_null_space’  sª   ø€ Øð 	7ð 	7ˆAÝÐ6Ð6¨)°A©+Ð6Ñ6Ô6Ñ6Ô6Ð6Ð6Ð6Ð6Øð 	Kð 	KˆAÝÐ,Ð,¨!Ð,Ñ,Ô,Ñ,Ô,ð KÝÐJÐJ°)¸A¿KºK¹M¼MÑ2IÐJÑJÔJÑJÔJÐJÐJÐJøð	Kð 	Krm   rž  r  c                 ó(   •— g | ]}‰|d d …f         ‘ŒS rt   rl   rx  s     €rn   r0  z%test_echelon_form.<locals>.<listcomp>ž  ó%   ø€ Ð+Ð+Ð+˜ˆAˆa���ˆdŒGÐ+Ð+Ð+rm   )	r¡   r„   rƒ   r¦   r¹   r§   rº   r½   r½   c                 ó(   •— g | ]}‰|d d …f         ‘ŒS rt   rl   rx  s     €rn   r0  z%test_echelon_form.<locals>.<listcomp>¦  rª  rm   )	r„   r¡   rƒ   r   r   r   r„   r¡   rƒ   rä   r„   r¬   c                 ó(   •— g | ]}‰|d d …f         ‘ŒS rt   rl   rx  s     €rn   r0  z%test_echelon_form.<locals>.<listcomp>´  rª  rm   )	r„   r¡   rƒ   r   r   r   r¡   r¡   rƒ   c                 ó(   •— g | ]}‰|d d …f         ‘ŒS rt   rl   rx  s     €rn   r0  z%test_echelon_form.<locals>.<listcomp>¿  rª  rm   )	r   rƒ   rƒ   r   r„   r„   r   r¡   r¡   c                 ó(   •— g | ]}‰|d d …f         ‘ŒS rt   rl   rx  s     €rn   r0  z%test_echelon_form.<locals>.<listcomp>Í  rª  rm   )r„   r„   rƒ   rƒ   rƒ   r   c                 ó(   •— g | ]}‰|d d …f         ‘ŒS rt   rl   rx  s     €rn   r0  z%test_echelon_form.<locals>.<listcomp>×  rª  rm   )	r�   r}   r[  rq   r1   rÂ   rŽ   rœ  r   )rÌ  r¨  r¦  rŽ   rZ   r§  s       @@rn   Útest_echelon_formr°  ~  s“  øø€ õ
 	˜ÑÔ€AÝ�qÑÔ€Að ˆ1Œ>ÑÔ˜qÒ Ð Ð Ð Ø�>Š>ÑÔ˜qÒ Ð Ð Ð å˜Q  2Ñ&Ô&€AØˆ1Œ>ÑÔ˜qÒ Ð Ð Ð å˜Q  A 3Ñ'Ô'€AØˆ1Œ>ÑÔ˜qÒ Ð Ð Ð ðKð Kð Kð Kð Kõ 	˜Q Ð#>Ð#>Ð#>Ñ?Ô?€AÝØ�TØ�TØ�Tðñ ô ð €Eð ,Ð+Ð+Ð+�U 1¤6™]œ]Ð+Ñ+Ô+€DØ�”Ñ Ô €IØÔÐÐÐØÐ˜!˜T 5Ñ)Ô)Ð)õ 	˜Q Ð#>Ð#>Ð#>Ñ?Ô?€AØ€EØ+Ð+Ð+Ð+�U 1¤6™]œ]Ð+Ñ+Ô+€DØ�”Ñ Ô €IØÔÐÐÐØÐ˜!˜T 5Ñ)Ô)Ð)å˜Q Ð#>Ð#>Ð#>Ñ?Ô?€AÝÝ�r˜1‰oŒoÐØˆVØˆVðñ ô õ Ý�r˜1‰oŒoÐØˆVØˆVðñ ô ð	€Eð ,Ð+Ð+Ð+�U 1¤6™]œ]Ð+Ñ+Ô+€DØ�”Ñ Ô €IØÔÐÐÐØÐ˜!˜T 5Ñ)Ô)Ð)õ 	˜Q Ð#>Ð#>Ð#>Ñ?Ô?€AÝØˆVØˆVØˆVðñ ô ð €Eð ,Ð+Ð+Ð+�U 1¤6™]œ]Ð+Ñ+Ô+€DØ�”Ñ Ô €IØÔÐÐÐØÐ˜!˜T 5Ñ)Ô)Ð)å˜Q Ð#>Ð#>Ð#>Ñ?Ô?€AÝØˆSØˆSØˆSðñ ô õ ØˆTØˆTØˆTðñ ô ð	€Eð ,Ð+Ð+Ð+�U 1¤6™]œ]Ð+Ñ+Ô+€DØ�”Ñ Ô €IØÔÐÐÐØÐ˜!˜T 5Ñ)Ô)Ð)å˜Q Ð#5Ð#5Ð#5Ñ6Ô6€AÝØˆTØˆSØˆSðñ ô ð €Eð ,Ð+Ð+Ð+�U 1¤6™]œ]Ð+Ñ+Ô+€DØ�”Ñ Ô €IØÔÐÐÐØÐ˜!˜T 5Ñ)Ô)Ð)Ð)Ð)rm   c                  ó¾  — t          ddg ¦  «        } |                      d¬¦  «        | k    sJ ‚t          dddg¦  «        } t          dddg¦  «        }|                      d¬¦  «         |j        d¬¦  «        cxk    r| k    sn J ‚t          ddg d¢¦  «        } |j        d¬¦  «        t          dgdgdgg¦  «        k    sJ ‚t          ddg d¢¦  «        } |j        d¬¦  «        t          g d¢g¦  «        k    sJ ‚t          ddg d¢¦  «        } |j        d¬¦  «        t          g d	¢g d
¢g d¢g¦  «        k    sJ ‚t          ddg d¢¦  «        }t          ddg d¢¦  «        }t          ddg d¢¦  «        }t          ddg d¢¦  «        } |j        d¬¦  «         |j        d¬¦  «        cxk    r2 |j        d¬¦  «        cxk    r |j        d¬¦  «        cxk    r|k    sn J ‚t          d¦  «        } t	          d¦  «        }|                      d¬¦  «        | k    sJ ‚ |j        d¬¦  «        |k    sJ ‚t          g d¢g d¢g d¢g d¢g¦  «        } |j        ¦   «         \  }}|t          g d¢g d¢g d¢g d¢g¦  «        k    sJ ‚|dk    sJ ‚t          t          dd¦  «        t          dd¦  «        ddgg d¢g d¢g d¢g¦  «        } |j        d¬¦  «        t          dddt          dd¦  «        gdddt          d d¦  «        gdddt          d!d¦  «        gg d"¢g¦  «        k    sJ ‚t          d#¦  «        }t          dd|ddt          |¦  «        |dg¦  «        }t           |j        d¬¦  «        ddt          |¦  «        | dz   z  |t          dd¦  «        z   |z   z  dddt          |¦  «        |z   dz   z  g¦  «        D ]\  }	}
t          |	|
z
  ¦  «        j
        sJ ‚Œd S )$Nr   F)Úpivotsr¡   r¹   rƒ   r¥   rž  )r¡   r   rä   r»   rÀ   )	r¡   r„   rƒ   r¡   r„   rƒ   r¡   r„   rƒ   )	r¡   r„   rƒ   r   r   r   r   r   r   r›  )	r   r   r   r   r   r   r¡   r„   rƒ   )r   r   r¡   r„   r„   rC  rƒ   )rä   r¹   r„   r„   r¡   re  r¹   )r   r   r  r¬   r¬   r½   rC  )rä   r¹   r   rä   r  r¡   r   )r¡   rC  r   r   r¡   r¡   rä   )r   r   r¡   r   r   rä   r¡   )r   r   r   r¡   r¡   r  r¡   )r   r   r   r   r   r   r   )r   r„   rƒ   r€  r„   rÀ  rÁ  rÃ  i´ÿÿÿé�   rC  éî   rË  r^   )rq   rF  r1   r}   r�   r   r   r   r†  r%   rç  )rÌ  rZ   r[   r\   r]   r`   rœ   Úpivot_offsetsr^   rw   rx   s              rn   Ú	test_rrefr¶  Ý  sA  € Ý˜Q  2Ñ&Ô&€AØ�6Š6˜ˆ6ÑÔ 1Ò$Ð$Ð$Ð$å˜Q  A 3Ñ'Ô'€AÝ˜Q  A 3Ñ'Ô'€AØ�6Š6˜ˆ6ÑÔ 6 1¤6°Ð#7Ñ#7Ô#7Ð<Ð<Ò<Ð<¸1Ò<Ð<Ð<Ð<Ð<Ð<å˜Q  9 9 9Ñ-Ô-€AØˆ1Œ6˜ÐÑÔ¥6¨A¨3°°°a°S¨/Ñ#:Ô#:Ò:Ð:Ð:Ð:å˜Q  9 9 9Ñ-Ô-€AØˆ1Œ6˜ÐÑÔ¥6¨9¨9¨9¨+Ñ#6Ô#6Ò6Ð6Ð6Ð6å˜Q Ð#>Ð#>Ð#>Ñ?Ô?€AØˆ1Œ6˜ÐÑÔ¥6Ø%/ Z ZØ%/ Z ZØ%/ Z Zð+1ñ $2ô $2ò 2ð 2ð 2ð 2õ
 	˜Q Ð#>Ð#>Ð#>Ñ?Ô?€AÝ˜Q Ð#>Ð#>Ð#>Ñ?Ô?€AÝ˜Q Ð#>Ð#>Ð#>Ñ?Ô?€AÝ˜Q Ð#>Ð#>Ð#>Ñ?Ô?€AØˆ1Œ6˜ÐÑÔØˆAŒF˜%Ð Ñ Ô ð&ð &ò &ð &àˆAŒF˜%Ð Ñ Ô ð&ð &ò &ð &ð ˆAŒF˜%Ð Ñ Ô ð&ð &ò &ð &ð %&ò&ð &ð &ð &ð &ð &õ
 	�qÑÔ€AÝ˜ÑÔ€AØ�6Š6˜ˆ6ÑÔ 1Ò$Ð$Ð$Ð$Øˆ1Œ6˜ÐÑÔ 1Ò$Ð$Ð$Ð$åØ'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'ð	)ñ 	*ô 	*€Að
  ˜œ™œÑ€CˆØ•&Ø-Ð-Ð-Ø-Ð-Ð-Ø-Ð-Ð-Ø-Ð-Ð-ð	/ñ 0ô 0ò 0ð 0ð 0ð 0ð
 ˜IÒ%Ð%Ð%Ð%å�x¨¨2™œµ¸!¸Q±´ÀAÈ!ÐLØ0Ð0Ð0Ø0Ð0Ð0Ø0Ð0Ð0ð2ñ 	3ô 	3€Að ˆ1Œ6˜ÐÑÔ¥6Ø*+¨Q°µ8¸CÀÑ3EÔ3EÐ)FØ*+¨Q°µH¸RÀÑ4EÔ4EÐ)FØ*+¨Q°µ8¸CÀÑ3EÔ3EÐ)FØ);Ð);Ð);ð	+=ñ $>ô $>ò >ð >ð >ð >õ 	ˆs‰Œ€AÝ˜Q  A q¨!­T°!©W¬W°a¸Ð#;Ñ<Ô<€AÝ�F�A”F %Ð(Ñ(Ô(Ø�•4˜‘7”7˜Q˜B ™FÑ# a­°!°Q©¬Ñ&7Ð%7¸!Ñ%;Ñ<Ø�1�a�˜a™œ 1™ q™Ñ)ð+ñ,ô ,ð 'ð '‰ˆˆ1õ ˜˜A™‰ŒÔ&Ð&Ð&Ð&Ð&ð'ð 'rm   c                  óD  — t          d¦  «        \  } }}}t          ddgddgddgddgg¦  «        }t          | |||g¦  «        }|                     |¦  «        t          ddgddgddgddgg¦  «        t          d|z  |z   gd|z  dz  |dz  z
  g| g|gg¦  «        fk    sJ ‚d S )Nrñ  r   r¡   r„   rƒ   r¦   r  )r   r1   Úrref_rhs)rZ   r[   r\   r]   rò   r—  s         rn   Útest_rref_rhsr¹    sï   € Ý˜Ñ#Ô#�J€A€qˆ!ˆQÝ��A�˜˜A˜  A ¨¨A¨Ð/Ñ0Ô0€AÝ��1�a˜ˆ|ÑÔ€AØ�:Š:�a‰=Œ=�VØˆ€FØˆ€FØˆ€FØˆ€Fð	%ñ ô õ Ø
ˆ1‰ˆq‰€MØ€q�Sˆ�UˆQˆq‰S�[€MØ€MØ€Mð	ñ ô ð	ò ð ð ð ð ð rm   c            	      ó8  ‡— t          g d¢g d¢g d¢g d¢g d¢g d¢g¦  «        Š‰                     ddd	¬
¦  «        } ‰                     dd	dd¬¦  «        }‰                     dd	d¬¦  «        }| d	d d …f         t          g d¢g¦  «        k    sJ ‚|d	d d …f         t          g d¢g¦  «        k    sJ ‚|d	d d …f         t          g d¢g¦  «        k    sJ ‚t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         t          t          ˆfd„¦  «         d S )N)rƒ   r¦   rä   r¡   )r·   rÜ   r¬   rƒ   )r   r„   r¡   rƒ   )r„   rƒ   r   r  )r   rƒ   rƒ   rC  )r½   rÎ   r   r§   rk  r„   r¹   rl  rw  rƒ   rB  rx  re  rf  )r   rƒ   r   rÅ  )rÓ  r÷  r   rÜ   c                  ó4   •— ‰                       ddd¬¦  «        S )Nrk  r„   r§   rl  r^  ©r0  s   €rn   ry   z"test_issue_17827.<locals>.<lambda>>  ro  rm   c                  ó4   •— ‰                       ddd¬¦  «        S )Nre  rº   r„   rf  r^  r¼  s   €rn   ry   z"test_issue_17827.<locals>.<lambda>?  rg  rm   c                  ó6   •— ‰                       dddd¬¦  «        S )Nrw  rä   r¹   r„   rx  r^  r¼  s   €rn   ry   z"test_issue_17827.<locals>.<lambda>@  r|  rm   )r1   r_  rN   r  )r6  r   rD  r0  s      @rn   Útest_issue_17827r¿  -  si  ø€ ÝØˆˆØˆˆØˆˆØˆˆØˆˆØˆˆðñ 	ô 	€Að 	
×Ò˜G¨!°!ÐÑ4Ô4€AØ	×Ò˜I¨A°A¸ÐÑ<Ô<€AØ	×Ò˜G¨¨aÐÑ0Ô0€AØˆQ���ˆTŒ7•f˜l˜l˜l˜^Ñ,Ô,Ò,Ð,Ð,Ð,ØˆQ���ˆTŒ7•f˜m˜m˜m˜_Ñ-Ô-Ò-Ð-Ð-Ð-ØˆQ���ˆTŒ7•f˜o˜o˜oÐ.Ñ/Ô/Ò/Ð/Ð/Ð/å
�:ÐKÐKÐKÐKÑLÔLÐLÝ
�:ÐGÐGÐGÐGÑHÔHÐHÝ
�:ÐSÐSÐSÐSÑTÔTÐTÐTÐTrm   c                  óH  — t          ddgt          ddt          z  z
  gg¦  «        } |                      ¦   «         dk    sJ ‚t          ddt          dd¦  «        ¦  «        }|                     ¦   «         dk    sJ ‚t	          d¦  «        }|                     ¦   «         dk    sJ ‚d S )Nr¡   r„   rƒ   rÍ   r   )r1   r^   rŒ  rÂ   r>   )r–   r|   r  s      rn   Ú	test_rankrÁ  B  s‹   € Ý��A��˜A ¥!¡™G˜Ð%Ñ&Ô&€AØ�6Š6‰8Œ8�qŠ=ˆ=ˆ=ˆ=Ýˆq�!•U˜1˜b‘\”\Ñ"Ô"€AØ�6Š6‰8Œ8�qŠ=ˆ=ˆ=ˆ=Ýˆa‰Œ€AØ�6Š6‰8Œ8�qŠ=ˆ=ˆ=ˆ=ˆ=ˆ=rm   c                  ó,  — t          d¦  «        \  } }}}}}}}}}	}
}t          | || |
z  ||
z  dg||||
z  ||
z  dg||||
z  ||
z  dg||||
z  ||
z  dg||	d|z  |z  ||
z  z
  d|	z  |z  |	|
z  z
  dgg¦  «        }|                     ¦   «         dk    sJ ‚d S )Nræ  r   r¡   r„   r¦   )r   r1   rŒ  )rç  rè  ré  rê  rë  rì  rí  rî  rï  rð  rñ  rò  rÄ   s                rn   Útest_issue_11434rÃ  J  sá   € åÐAÑBÔBñ 3€BˆˆB��B˜˜B  B¨¨B°å��R˜˜B™  2¡ qÐ)Ø�R˜˜B™  2¡ qÐ)Ø�R˜˜B™  2¡ qÐ)Ø�R˜˜B™  2¡ qÐ)Ø�R˜˜2™˜b™ 2 b¡5™¨!¨B©$¨r©'°B°r±E©/¸1Ð=ð	?ñ 	@ô 	@€Að
 �6Š6‰8Œ8�qŠ=ˆ=ˆ=ˆ=ˆ=ˆ=rm   c            
      ó®  — t          d¦  «        \  } }t          d| z  dddgd| z  d| z  dz
  ddgdd| z  d| z  |z
  dz
  dgdd| |z   dgg¦  «        }t          dddd| dz  | | z
  z  z  gdddd| | | z
  z  z  gdddd| | z
  z  gg d	¢g¦  «        }d
}|                     ¦   «         \  }}t          ||z
  ¦  «        t	          |j        Ž k    sJ ‚||k    sJ ‚d S )Nz
nu, lambdar¬   r¡   r   rƒ   r  r„   rä   rË  r»   )r   r1   rF  r%   r>   rŒ   )ÚnuÚlambrò   Úexpected_reducedÚexpected_pivotsÚreducedr²  s          rn   Útest_rank_regression_from_sorÊ  T  sD  € õ �|Ñ$Ô$�H€BˆÝ��B‘ °A¸Ð:Ø�B‘$˜˜2™ ™	°A¸Ð:Ø˜Q˜r™T B r¡E¨T¡>°AÑ#5¸Ð:Ø ¨B°©I°rÐ:ð<ñ 	=ô 	=€Aõ   1 a¨¨B°©E°D°5¸2±:Ñ,>Ñ)?Ð@Ø ! 1 a¨A¨r°D°5¸2±:©Ñ,?Ð@Ø ! 1 a°°T°E¸B±J±Ð@Ø@Ð@Ð@ðBñ Cô CÐð  €Oà—f’f‘h”h�O€GˆVåÐ$ wÑ.Ñ/Ô/µ5¸!¼'°?ÒBÐBÐBÐBØ�_Ò$Ð$Ð$Ð$Ð$Ð$rm   c                  ó"  — t          g d¢g d¢g d¢g d¢g¦  «        } | t          j        d¦  «        t          z  z
  }|                     ¦   «         dk    sJ ‚|dz                       ¦   «         dk    sJ ‚|dz                       ¦   «         dk    sJ ‚d S )Nro  r  r  r  r¦   rƒ   r„   )r1   r5   r
   rŒ  )rò   r—  s     rn   Útest_issue_15872rÌ  h  s”   € Ý���˜o˜o˜o¨~¨~¨~¸|¸|¸|ÐLÑMÔM€AØ	�FŒJ�q‰MŒM�AÑÑ€AØ�6Š6‰8Œ8�qŠ=ˆ=ˆ=ˆ=Øˆq‰D�;Š;‰=Œ=˜AÒÐÐÐØˆq‰D�;Š;‰=Œ=˜AÒÐÐÐÐÐrm   (Q  rû  Úconcurrent.futuresr@  Úcollections.abcr   Úsympy.core.addr   Úsympy.core.functionr   r   r   r…  r   r	   r
   r   r   r   r   r   Úsympy.core.powerr   Úsympy.core.singletonr   Úsympy.core.symbolr   r   Úsympy.core.sympifyr   Ú$sympy.functions.elementary.complexesr   Ú&sympy.functions.elementary.exponentialr   r   Ú(sympy.functions.elementary.miscellaneousr   r   r   Ú(sympy.functions.elementary.trigonometricr   r   r   Úsympy.integrals.integralsr   Úsympy.polys.polytoolsr   r    Úsympy.polys.rootoftoolsr!   Úsympy.printing.strr"   Úsympy.sets.setsr#   r;  r$   r%   Úsympy.simplify.trigsimpr&   Úsympy.matrices.exceptionsr'   r(   r)   Úsympy.matrices.matrixbaser+   Úsympy.matrices.determinantr,   Úsympy.matrices.utilitiesr-   Úsympy.matricesr.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   Ú
sympy.corerG   rH   Ú(sympy.functions.special.tensor_functionsrI   Úsympy.utilities.iterablesrJ   rK   rL   Úsympy.utilities.exceptionsrM   Úsympy.testing.pytestrN   rO   rP   rQ   rR   rS   Úsympy.assumptionsrU   Úsympy.tensor.arrayrV   Ú$sympy.tensor.array.array_derivativesrW   Úsympy.matrices.expressionsrX   Úsympy.algebrasrY   r  rZ   r[   r\   r]   r^   r_   r`   ra   r‹   r¹  rb   rc   Úsympy.matrices.matricesrd   re   rg   rq   r}   r�   r—   rž   r£   rª   r®   rµ   rÅ   rÕ   r  r  r  r  r!  r,  r6  r;  r?  rG  rK  rO  rS  rY  r\  r_  rb  rg  rj  rm  rr  rz  r  r‚  r†  r‰  r�  r�  r“  r•  r˜  r°  r³  r¸  r»  rÉ  rÔ  rÜ  râ  rè  rí  rð  r   r  r  r   r$  r'  r+  r.  r3  r8  r>  r@  rM  rQ  rV  r_  ra  rs  r}  r€  rƒ  r†  r‰  rŒ  rŽ  r‘  r–  r�  rŸ  r¥  r®  r³  rÀ  rÄ  rÉ  rË  rÎ  rÝ  rå  ró  rö  r  r	  r  r  r  r  r"  r&  r)  r1  r5  r8  r‡  r‹  r�  r�  r’  r›  r   r¤  r¿  rÍ  rÖ  rÙ  rÛ  rà  rã  rè  rï  rñ  rõ  r  r
  r  r  r  r  r  r  r  r   r(  r*  r,  r/  r2  r:  rF  rJ  rN  rQ  rU  rX  r\  rb  re  ri  rm  ro  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,  r1  r3  r<  rG  rI  rQ  rS  rY  r�  r™  rŸ  r°  r¶  r¹  r¿  rÁ  rÃ  rÊ  rÌ  rl   rm   rn   ú<module>rï     s—  ðð €€€Ø Ð Ð Ð Ø $Ð $Ð $Ð $Ð $Ð $à Ð Ð Ð Ð Ð Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ð 6Ø LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LÐ LØ  Ð  Ð  Ð  Ð  Ð  Ø "Ð "Ð "Ð "Ð "Ð "Ø /Ð /Ð /Ð /Ð /Ð /Ð /Ð /Ø &Ð &Ð &Ð &Ð &Ð &Ø 4Ð 4Ð 4Ð 4Ð 4Ð 4Ø =Ð =Ð =Ð =Ð =Ð =Ð =Ð =Ø EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EØ DÐ DÐ DÐ DÐ DÐ DÐ DÐ DÐ DÐ DØ /Ð /Ð /Ð /Ð /Ð /Ø 2Ð 2Ð 2Ð 2Ð 2Ð 2Ð 2Ð 2Ø *Ð *Ð *Ð *Ð *Ð *Ø #Ð #Ð #Ð #Ð #Ð #Ø %Ð %Ð %Ð %Ð %Ð %Ø 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ð 8Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,ðð ð ð ð ð ð ð ð ð à 4Ð 4Ð 4Ð 4Ð 4Ð 4Ø CÐ CÐ CÐ CÐ CÐ CØ .Ð .Ð .Ð .Ð .Ð .ðLð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð 8Ð 7Ð 7Ð 7Ð 7Ð 7Ø "Ð "Ð "Ð "Ð "Ð "Ð "Ð "Ø CÐ CÐ CÐ CÐ CÐ CØ @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ð @Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6ð:ð :ð :ð :ð :ð :ð :ð :ð :ð :ð :ð :ð :ð :ð :ð :à Ð Ð Ð Ð Ð Ø $Ð $Ð $Ð $Ð $Ð $Ø @Ð @Ð @Ð @Ð @Ð @Ø -Ð -Ð -Ð -Ð -Ð -Ø %Ð %Ð %Ð %Ð %Ð %à ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,Ð ,ð �< Ð2GÐ
H€ð BÐ AÐ AÐ AÐ AÐ AÐ AÐ AØ EÐ EÐ EÐ EÐ EÐ EÐ EÐ Eð ÐÑÔð ð ðð ð ð ð ˜^¨_¸oñ ô ð ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð
 ÐÑÔð ð ðð ð ð ð ˜~¨Ð@Pñ ô ð ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð
@ð @ð @ð6ð 6ð 6ð
+ð 
+ð 
+ð
!ð 
!ð 
!ð+ð +ð +ð
&ð &ð &ðð ð ð
9ð 9ð 9ð)ð )ð )ðXJ6ð J6ð J6ðZ^Jð ^Jð ^JðB?ð ?ð ?ðð ð ð_ð _ð _ð*Jð *Jð *JðX_ð _ð _ð
%ð %ð %ð
'ð 'ð 'ð
 ð  ð  ð
6ð 6ð 6ð%ð %ð %ð
;ð ;ð ;ð
5ð 5ð 5ð
ð ð ð8Gð Gð GðPð Pð Pð
yð yð yð
	8ð 	8ð 	8ð$ð $ð $ð
)ð )ð )ð&ð &ð &ð$<ð <ð <ð<ð <ð <ð<ð <ð <ð<ð <ð <ð<ð <ð <ðð ð ðKð Kð Kð&dð dð dðð ð ð&Kð Kð Kð0L2ð L2ð L2ð^ð ð ðð ð ðFð Fð FðDð Dð Dð+ð +ð +ð84ð 4ð 4ðPð Pð Pð1ð 1ð 1ðð ð ð$
:ð 
:ð 
:ðð ð ð<7Mð 7Mð 7Mðt ð  ð  ð8!ð !ð !ð"Að Að AðGð Gð Gð2ð 2ð 2ð" ð  ð  ð"$ð $ð $ð$-ð -ð -ðð ð ðð ð ðð ð ð:ð ð ðð ð ð&ð &ð &ðð ð ðð ð ð>9ð 9ð 9ð$ð $ð $ð"ð ð ðð ð ðð ð ðð ð ð*ð ð ð)ð )ð )ð  ð  ð  ð
.ð 
.ð 
.ð	ð 	ð 	ð*ð *ð *ðFð Fð Fð!ð !ð !ð@ð @ð @ð.6ð 6ð 6ð&ð &ð &ð8ð 8ð 8ðGð Gð Gð$1ð 1ð 1ð&3ð 3ð 3ð@E!ð E!ð E!ðP
1ð 
1ð 
1ðH%ð H%ð H%ðV&ð &ð &ð&'ð 'ð 'ð"ð ð ð$4ð 4ð 4ð.ð ð ðLð Lð Lð)ð )ð )ð2ð ð ð
ð 
ð 
ðð ð ð!ð !ð !ð$;6ð ;6ð ;6ðz"ð "ð "ðIð Ið IðGð Gð Gð
Oð Oð Oð*4(ð 4(ð 4(ðnPð Pð Pð!ð !ð !ð%Ið %Ið %IðPZð Zð Zðz.ð .ð .ð&ð ñ ð"ð ñ ðFð Fñ FðHð Hñ Hðð ñ ð ð  ñ  ðð ñ ð$<ð <ñ <ð">ð ">ñ ">ðJDð Dñ Dð-ð -ñ -ð;ð ;ñ ;ð-ð -ñ -ð"8ð 8ñ 8ð
/ð /ñ /ð(ð (ñ (ð1ð 1ñ 1ð
(ð (ñ (ð.3ð 3ñ 3ð(?ð ?ñ ?ðGð Gñ Gð4ð 4ñ 4ð\ð \ñ \ðpð pñ pð&ð &ñ &ð(*ð *ñ *ð&ð ñ ðFð Fñ Fðð ñ ð"7ð 7ñ 7ð:ð :ñ :ð& ð  ñ  ð4ð 4ñ 4ð ð5ð 5ñ „ñ5ð)ð )ñ )ð+ð +ñ +ðð ñ ð"ð "ñ "ð*
ð *
ñ *
ðZ ð"$ð "$ñ „ñ"$ðJ7ð 7ñ 7ð1ð 1ñ 1ð8ð 8ñ 8ð$#ð #ñ #ð 	+ð 	+ñ 	+ð	#ð 	#ñ 	#ð#ð #ñ #ð'ð 'ñ 'ð
/ð /ñ /ð8	1ð 	1ñ 	1ð	1ð 	1ñ 	1ðð ñ ðð ñ ð 2ð 2ñ 2ð0ð ñ ð5ð 5ñ 5ð&#ð #ñ #ð3ð 3ñ 3ð*ð *ñ *ð9ð 9ñ 9ð#ð #ñ #ð ð  ñ  ð
$ð $ñ $ðð ñ ðIð Iñ Ið< ÐÐ:Ñ;Ô;ð#ð #ñ <Ô;ñ#ðð ñ ð;ð ;ñ ;ðð ñ ð.ð .ñ .ð!Jð !Jñ !JðH!Jð !Jñ !JðHð ñ ð6\*ð \*ñ \*ð~>'ð >'ñ >'ðBð ñ ðUð Uñ Uð*ð ñ ðð ñ ð%ð %ñ %ð(ð ñ ð ð s$   Å3FÆFÆFÆ%GÇGÇ	G