Ë
    ÏÍ:jw	 ã                   ó   — d dl Z d dlZd dlZd dlZd dlZd dlmZmZm	Z	m
Z
mZmZ d dlZd dlmZ d dlmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z. d dl/m0Z0 d dl1m2Z2 d dl3m4Z4 d dl5m6Z6 d d	lm7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZI d d
lJmKZK d dlLmMZM d dlNmOZO d dlPmQZQ d dlRmSZS d dlTmUZU ddlVmWZW ej                  dk(  xs  ej°                  «       dv ZYdeZfd„Z[ej|                  ej¸                  gZ]ej~                  ej¼                  gZ_e]e_z   Z`d„ Za G d„ d«      Zb G d„ d«      Zc G d„ d«      Zd G d„ d«      Ze G d„ d «      Zf G d!„ d"«      Zg G d#„ d$eg«      ZhejÒ                  jÕ                  eYd%¬&«      ejÒ                  j×                  d'«      ejÒ                  jÙ                  d(«      ejÒ                  jÛ                  d)«      ejÒ                  jÕ                  eQd*¬&«      d+„ «       «       «       «       «       Znd,„ Zo G d-„ d.«      Zp G d/„ d0«      Zq G d1„ d2«      Zr G d3„ d4«      Zs G d5„ d6«      Zt G d7„ d8«      ZudxZvZweUd9   d:   d;   ZveUd9   d:   d<   Zw G d=„ d>«      Zx G d?„ d@«      Zy G dA„ dB«      Zz G dC„ dD«      Z{dE„ Z|ejÒ                  jÕ                   ej°                  «       dFk(  dG¬&«      dH„ «       Z}dI„ Z~dJ„ ZejÒ                  �j                  ddK¬L«      dM„ «       Z� G dN„ dO«      Z‚d\dP„ZƒejÒ                  �j                  ejÒ                  jÕ                   e�j
                  e�j                  «      �j                  dQk  dR¬&«      dS„ «       «       ZˆdT„ Z‰ejÒ                  �j                  dUe‹eZej|                  eŒej~                  g«      dV„ «       Z� G dW„ dX«      ZŽdY„ Z� G dZ„ d[«      Z�y)]é    N)Úassert_equalÚassert_almost_equalÚassert_array_almost_equalÚassert_array_equalÚassert_Úassert_allclose)Úraises)ÚeigÚeigvalsÚluÚsvdÚsvdvalsÚcholeskyÚqrÚschurÚrsf2csfÚlu_solveÚ	lu_factorÚsolveÚdiagsvdÚ
hessenbergÚrqÚ
eig_bandedÚeigvals_bandedÚeighÚeigvalshÚqr_multiplyÚqzÚorthÚordqzÚsubspace_anglesÚhadamardÚeigvalsh_tridiagonalÚeigh_tridiagonalÚ
null_spaceÚcdf2rdfÚLinAlgError)Úget_lapack_funcs)Únorm)Ú_select_function)Úortho_group)ÚarrayÚdiagÚfullÚlinalgÚargsortÚzerosÚarangeÚfloat32Ú	complex64ÚravelÚsqrtÚ	iscomplexÚshapeÚsortÚsignÚasarrayÚisfiniteÚndarrayÚeye)Úassert_no_overwrite)Úmatrix)Úcheck_free_memory)Ú	HAS_ILP64)Úskip_xp_invalid_arg)ÚCONFIGé   )Úparametrize_overwrite_argÚ
emscripten)Úwasm32Úwasm64Fc                 ó´  — |t         v ret        j                  j                  | | «      t        j                  j                  | | «      dz  z   }||j	                  «       j
                  z   dz  }n2t        j                  j                  | | «      }||j
                  z   dz  }|r'|t        d| z  «      t        j                  | «      z  z  }|j                  |«      S )z7Generate random sym/hermitian array of the given size nù              ð?é   )	ÚCOMPLEX_DTYPESÚnpÚrandomÚrandÚconjÚTr6   r>   Úastype)ÚnÚposdefÚdtypeÚAs       ús/home/mcse/projects/srt_converter/srt-converter-venv/lib/python3.12/site-packages/scipy/linalg/tests/test_decomp.pyÚ_random_hermitian_matrixrY   +   s¦   € ð ”ÑÜ�I‰I�N‰N˜1˜aÓ ¤2§9¡9§>¡>°!°QÓ#7¸Ñ#<Ñ<ˆØ�—‘“—‘‰^˜QÑ‰ä�I‰I�N‰N˜1˜aÓ ˆØ�—‘‰W�a‰KˆáØ	ŒT�!�A‘#‹Y”r—v‘v˜a“yÑ Ñ ˆà�8‰8�E‹?Ðó    c                 ó„  — t        | t        «      r| }|j                  |«      dz  dz
  }nEt        | t        «      r*t	        | j
                  «      dk(  r| j
                  d   }| }nt        d«      ‚t        j                  |«      }|j                  j                  «       t        |«      z  |z  }d|j                  |z   z  }|S )a  Return a random symmetric (Hermitian) matrix.

    If 'dim_or_eigv' is an integer N, return a NxN matrix, with eigenvalues
        uniformly distributed on (-1,1).

    If 'dim_or_eigv' is  1-D real array 'a', return a matrix whose
                      eigenvalues are 'a'.
    rL   rE   r   zinput type not supported.ç      à?)Ú
isinstanceÚintrO   r=   Úlenr8   Ú	TypeErrorr+   ÚrvsrR   rQ   r-   )Údim_or_eigvÚrngÚdimÚdÚvÚhs         rX   Úsymrandrh   B   s©   € ô �+œsÔ#ØˆØ�J‰J�s‹O˜AÑ Ñ!‰Ü
�[¤'Ô
*Ü
ˆk×ÑÓ
  AÒ
%Ø×Ñ Ñ"ˆØ‰äÐ3Ó4Ð4ä�‰˜Ó€AØ	�‰�‰‹
”T˜!“WÑ˜qÑ €AàˆQ�S‰S�‰U‰€AØ€HrZ   c                   ór   — e Zd Zd„ Zd„ Zd„ Zd„ Zej                  j                  de
eeeeg«      d„ «       Zy)ÚTestEigValsc                 óŽ   — g d¢g d¢g d¢g}t        |«      }dt        d«      z   dz  ddt        d«      z
  dz  g}t        ||«       y )N©rE   rL   é   ©rL   é   é   é	   é]   rL   r   ©r   r6   r   ©ÚselfÚaÚwÚexact_ws       rX   Útest_simplezTestEigVals.test_simple^   sE   € Úš	¢9Ð-ˆÜ�A‹JˆØ”d˜2“h‘J ‘> 1 q¬¨b«¡z°1¡nÐ5ˆÜ! ! WÕ-rZ   c                 óî   — t        g d¢g d¢g d¢gd«      j                  }|j                  «       }|j                  }t        |«      }dt	        d«      z   dz  ddt	        d«      z
  dz  g}t        ||«       y )Nrl   rn   re   rq   rr   rL   r   )r,   rR   Úcopyr   r6   r   rt   s       rX   Útest_simple_trzTestEigVals.test_simple_trd   sf   € Ü’9šiªÐ3°SÓ9×;Ñ;ˆØ�F‰F‹HˆØ�C‰CˆÜ�A‹JˆØ”d˜2“h‘J ‘> 1 q¬¨b«¡z°1¡nÐ5ˆÜ! ! WÕ-rZ   c                 óŽ   — g d¢g d¢g d¢g}t        |«      }dt        d«      z   dz  ddt        d«      z
  dz  g}t        ||«       y )Nrl   ©rL   ro   y      @      ð?y      "@      ð?y      W@      @rL   r   rs   rt   s       rX   Útest_simple_complexzTestEigVals.test_simple_complexl   sO   € Úš	¢<Ð0ˆÜ�A‹JˆØœ˜e›Ñ$ aÑ'ØØœ˜e›Ñ$ aÑ'ð)ˆô 	" ! WÕ-rZ   c                 ó’   — g d¢g d¢g d¢g}t        |d¬«      }dt        d«      z   dz  ddt        d«      z
  dz  g}t        ||«       y )	Nrl   rn   F©Úcheck_finiterq   rr   rL   r   rs   rt   s       rX   Útest_finitezTestEigVals.test_finitet   sH   € Úš	¢9Ð-ˆÜ�A EÔ*ˆØ”d˜2“h‘J ‘> 1 q¬¨b«¡z°1¡nÐ5ˆÜ! ! WÕ-rZ   Údtc                 óŠ  — t        j                  d|¬«      }t        |«      }|j                  dk(  sJ ‚|j                  t        t        j
                  d|¬«      «      j                  k(  sJ ‚t        |d¬«      }|j                  dk(  sJ ‚|j                  t        t        j
                  d|¬«      «      j                  k(  sJ ‚y )N©r   r   ©rV   ©r   rL   T©Úhomogeneous_eigvals©rL   r   )rN   Úemptyr   r8   rV   r>   )ru   r„   rv   rw   s       rX   Ú
test_emptyzTestEigVals.test_emptyz   s™   € ä�H‰H�V 2Ô&ˆÜ�A‹JˆØ�w‰w˜$ŠÐˆØ�w‰wœ'¤"§&¡&¨°"Ô"5Ó6×<Ñ<Ò<Ð<Ð<ä�A¨4Ô0ˆØ�w‰w˜&Ò Ð Ð Ø�w‰wœ'¤"§&¡&¨°"Ô"5Ó6×<Ñ<Ò<Ð<Ñ<rZ   N)Ú__name__Ú
__module__Ú__qualname__ry   r|   r   rƒ   ÚpytestÚmarkÚparametrizer^   Úfloatr3   Úcomplexr4   r�   © rZ   rX   rj   rj   \   sG   „ ò.ò.ò.ò.ð ‡[�[×Ñ˜T C¨°¸À)Ð#LÓMñ=ó Nñ=rZ   rj   c                   ó„  — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	 	 d,d„Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zej&                  j)                  deeej0                  eej4                  g«      d„ «       Zej&                  j)                  dddg«      ej&                  j)                  dddg«      ej&                  j)                  dddg«      ej&                  j)                  dddg«      ej&                  j)                  dej0                  ej8                  g«      d„ «       «       «       «       «       Zej&                  j)                  deeeg«      ej&                  j)                  dddg«      ej&                  j)                  ddd g«      ej&                  j)                  d!ddg«      d"„ «       «       «       «       Zej&                  j)                  d#eeeg«      ej&                  j)                  d$eeeg«      ej&                  j)                  d%ddg«      ej&                  j)                  d&ddg«      ej&                  j)                  d'dd g«      ej&                  j)                  d(dd g«      ej&                  j)                  d!ddg«      ej&                  j)                  d)ddg«      d*„ «       «       «       «       «       «       «       «       Zy+)-ÚTestEigc                 ób  — t        g d¢g d¢g d¢g«      }t        |«      \  }}dt        d«      z   dz  ddt        d«      z
  dz  g}t        dddt        d«      dz  z   dz  g«      }t        g d	¢«      }t        dddt        d«      dz  z
  dz  g«      }|t        |«      z  }|t        |«      z  }|t        |«      z  }t	        ||«       t	        ||d d …df   t        |d
   «      z  «       t	        ||d d …df   t        |d   «      z  «       t	        ||d d …df   t        |d   «      z  «       t        d«      D ]%  }t	        ||d d …|f   z  ||   |d d …|f   z  «       Œ' t        |dd¬«      \  }}t        d«      D ]/  }t	        |j                  |d d …|f   z  ||   |d d …|f   z  «       Œ1 y )Nrl   rn   rq   rr   rL   r   rE   rm   ©ç      @r   éÿÿÿÿr†   ©r   rE   ©r   rL   ©ÚleftÚright)r,   r
   r6   r)   r   r:   ÚrangerR   ©	ru   rv   rw   rf   rx   Úv0Úv1Úv2Úis	            rX   ry   zTestEig.test_simpleˆ   s®  € Ü’9šiªÐ3Ó4ˆÜ�1‹v‰ˆˆ1Ø”d˜2“h‘J ‘> 1 q¬¨b«¡z°1¡nÐ5ˆÜ�A�q˜1œT "›X a™Z™<¨Ñ*Ð+Ó,ˆÜ’;ÓˆÜ�A�q˜1œT "›X a™Z™<¨Ñ*Ð+Ó,ˆØ”$�r“(‰]ˆØ”$�r“(‰]ˆØ”$�r“(‰]ˆÜ! ! WÔ-Ü! " aª¨1¨¡g¬d°1°T±7«mÑ&;Ô<Ü! " aª¨1¨¡g¬d°1°T±7«mÑ&;Ô<Ü! " aª¨1¨¡g¬d°1°T±7«mÑ&;Ô<Ü�q“ò 	AˆAÜ% a¨!ªA¨q¨D©'¡k°1°Q±4¸º!¸Q¸$¹±<Õ@ð	Aô �1˜1 AÔ&‰ˆˆ1Ü�q“ò 	CˆAÜ% a§c¡c¨Aªa°¨d©G¡m°Q°q±T¸!ºA¸q¸D¹'±\ÕBñ	CrZ   c                 ó¨  — t        j                  g d¢g d¢g d¢g«      }t        |dd¬«      \  }}}|j                  t         j                  k(  sJ ‚|j
                  dk(  j                  «       sJ ‚|j                  t         j                  k(  sJ ‚|j                  t         j                  k(  sJ ‚t        j                  g d¢«      }t        ||dd¬«      \  }}}|j                  t         j                  k(  sJ ‚|j
                  dk(  j                  «       sJ ‚|j                  t         j                  k(  sJ ‚|j                  t         j                  k(  sJ ‚y )Nrl   rn   TrŸ   r   )rm   rL   rE   ç        )	rN   r,   r
   rV   Ú
complex128ÚimagÚallÚfloat64r-   )ru   rv   rw   ÚvlÚvrÚbs         rX   Útest_simple_dtypezTestEig.test_simple_dtype�   s  € ô �H‰H’i¢ªIÐ6Ó7ˆÜ˜ ¨DÔ1‰	ˆˆ2ˆrØ�w‰wœ"Ÿ-™-Ò'Ð'Ð'Ø—‘˜!‘× Ñ Ô"Ð"Ð"Ø�x‰xœ2Ÿ:™:Ò%Ð%Ð%Ø�x‰xœ2Ÿ:™:Ò%Ð%Ð%ô �G‰G’IÓˆÜ˜˜1 4¨tÔ4‰	ˆˆ2ˆrØ�w‰wœ"Ÿ-™-Ò'Ð'Ð'Ø—‘˜"‘×!Ñ!Ô#Ð#Ð#Ø�x‰xœ2Ÿ:™:Ò%Ð%Ð%Ø�x‰xœ2Ÿ:™:Ò%Ð%Ñ%rZ   c                 ó�  — t        ddgddgg«      }t        |dd¬«      \  }}}t        |t        ddg«      «       t        d«      D ]%  }t        ||d d …|f   z  ||   |d d …|f   z  «       Œ' t        d«      D ]K  }t        |j	                  «       j
                  |d d …|f   z  ||   j	                  «       |d d …|f   z  «       ŒM y )NrE   rL   éþÿÿÿrŸ   ù      ð?       @y      ð?       À)r,   r
   r   r¢   rQ   rR   ©ru   rv   rw   r®   r¯   r§   s         rX   Útest_simple_complex_eigzTestEig.test_simple_complex_eig²   sÉ   € Ü�A�q�6˜B ˜7Ð#Ó$ˆÜ˜ ¨Ô+‰	ˆˆ2ˆrÜ! !¤U¨D°$¨<Ó%8Ô9Ü�q“ò 	CˆAÜ% a¨"ªQ°¨T©(¡l°A°a±D¸ºA¸q¸D¹±MÕBð	Cä�q“ò 	<ˆAÜ% a§f¡f£h§j¡j°2²a¸°d±8Ñ&;Ø&'¨¡d§i¡i£k°"²Q¸°T±(Ñ&:õ<ñ	<rZ   c                 ó  — t        j                  ddgddgg«      }t        |dd¬«      \  }}}|j                  t         j                  k(  sJ ‚|j                  t         j                  k(  sJ ‚|j                  t         j                  k(  sJ ‚y )NrE   rL   r³   TrŸ   )rN   r;   r
   rV   rª   )ru   rv   rw   r®   r¯   s        rX   Útest_simple_complex_eig_dtypez%TestEig.test_simple_complex_eig_dtype¼   su   € ô
 �J‰J˜˜A˜  Q Ð(Ó)ˆÜ˜ ¨DÔ1‰	ˆˆ2ˆrØ�w‰wœ"Ÿ-™-Ò'Ð'Ð'Ø�x‰xœ2Ÿ=™=Ò(Ð(Ð(Ø�x‰xœ2Ÿ=™=Ò(Ð(Ñ(rZ   c                 óh  — t        g d¢g d¢g d¢g«      }t        |dd¬«      \  }}}t        d«      D ]%  }t        ||d d …|f   z  ||   |d d …|f   z  «       Œ' t        d«      D ]K  }t        |j	                  «       j
                  |d d …|f   z  ||   j	                  «       |d d …|f   z  «       ŒM y )Nrl   r~   rE   rŸ   rm   )r,   r
   r¢   r   rQ   rR   rµ   s         rX   r   zTestEig.test_simple_complexÈ   s°   € Ü’9šiªÐ6Ó7ˆÜ˜ ¨Ô+‰	ˆˆ2ˆrÜ�q“ò 	CˆAÜ% a¨"ªQ°¨T©(¡l°A°a±D¸ºA¸q¸D¹±MÕBð	Cä�q“ò 	<ˆAÜ% a§f¡f£h§j¡j°2²a¸°d±8Ñ&;Ø&'¨¡d§i¡i£k°"²Q¸°T±(Ñ&:õ<ñ	<rZ   c                 óø   — dgg}dgg}t        ||d¬«      \  }}t        |d   d«       t        |d   dk7  «       t        |d«       t        ||«      \  }}t        |t        j
                  «       t        |d«       y )NrE   r   Tr‰   ©rE   r   r†   )r
   r   r   r   rN   Úinf)ru   rv   r°   rw   r¯   s        rX   Útest_gh_3054zTestEig.test_gh_3054Ñ   su   € ØˆSˆEˆØˆSˆEˆÜ�A�q¨dÔ3‰ˆˆ2Ü˜˜$™ Ô#Ü��$‘˜1‘ÔÜ˜˜AÔä�A�q“	‰ˆˆ2Ü�QœŸ™ÔÜ˜˜AÕrZ   c           	      óT  — |�t        |«      t        |«      }}|}n)t        |«      }|}t        j                  |j                  Ž }d|›d|›�}t	        ||d¬«      \  }	}
t        ||d¬«      }||
z  |	dd d …f   z  }||
z  |	dd d …f   z  }t        |j                  d   «      D ]   }t        |d d …|f   |d d …|f   |||¬«       Œ" |€&t        |	dd d …f   d«       t        |dd d …f   d«       t        j                  |	«      }t        j                  |«      }t        |	d d …|f   |d d …|f   dd|¬«       t        j                  t        |
«      «      }t        t        |
«      «      D ]  }t        |
d d …|f   «      ||<   Œ t        |t        j                  |j                  «      |dd¬	«       |	dd d …f   dk7  }|	d|f   |	d|f   z  }t	        ||«      \  }	}
t        ||«      }||
z  }||
z  |	z  }||z
  }t        |j                  d   «      D ]?  }t        j                  t        |d d …|f   «      «      sŒ)t        |d d …|f   d|||¬«       ŒA |	t        |	«         }|t        |«         }d
t        j                   d|z  d¬«      z  }d
t        j                   d|z  d¬«      z  }t#        t%        |«      |j&                  z   «      }t#        t%        |«      |j&                  z   «      }t        ||   ||   dd|¬«       t        j                  t        |
«      «      }t        t        |
«      «      D ]  }t        |
d d …|f   «      ||<   Œ t        |t        j                  |j                  «      |¬«       t        t)        |«      t)        |	t        j                  |	«         «      «       y )Nú
Tr‰   rE   r   ©ÚrtolÚatolÚerr_msggH¯¼šò×z>)rÂ   rÁ   rÃ   )rÃ   rÂ   rÁ   y       €      ð¿rK   g»½×Ùß|Û=)Útol©rÃ   )r;   rN   r>   r8   r
   r   r¢   r   ÚlexsortrŒ   r_   r)   ÚonesÚsizer¬   r<   Úreal_if_closer0   Úabsr«   r9   )ru   rW   ÚBÚ
atol_homogÚ
rtol_homogrÂ   rÁ   ÚB0Úmsgrw   r¯   ÚwtÚval1Úval2r§   ÚpermÚpermtÚlengthÚbeta_nonzeroÚwhÚresÚw_finÚwt_fins                          rX   Ú_check_gen_eigzTestEig._check_gen_eigÝ   s  € àˆ=Ü˜1“:œw q›zˆqˆAØ‰Bä˜“
ˆAØˆBÜ—‘˜Ÿ™Ð ˆAØ�1�%�r˜!˜Ðˆô �A�r¨tÔ4‰ˆˆ2Ü�Q˜°Ô5ˆØ�2‰v˜˜!šQ˜$™ÑˆØ�2‰v˜˜!šQ˜$™ÑˆÜ�t—z‘z !‘}Ó%ò 	KˆAÜ˜D¢ A ™J¨ªQ°¨T©
Ø!+°*ÀcöKð	Kð ˆ:Ü˜A˜a¢˜d™G QÔ'Ü˜B˜q¢!˜t™H aÔ(ä�z‰z˜!‹}ˆÜ—
‘
˜2“ˆÜ˜š!˜T˜'™
 B¢q¨% x¡L°tÀ$Ø #õ	%ô —‘œ#˜b›'Ó"ˆä”s˜2“w“ò 	'ˆAÜ˜R¢ 1 ™X›ˆF�1ŠIð	'ô 	˜¤§¡¨¯©Ó 4¸cØ!¨õ	.ð ˜!šQ˜$™ 1™ˆØˆq�,ˆÑ ! A | OÑ"4Ñ4ˆô �A�r“
‰ˆˆ2Ü�Q˜‹^ˆØ�2‰vˆØ�2‰v˜‰zˆØ�T‰kˆÜ�s—y‘y ‘|Ó$ò 	CˆAÜ�v‰v”h˜s¢1 a 4™yÓ)Õ*Ü ¢A q D¡	¨1Ø%)°¸cöCð	Cð ”(˜1“+‘ˆØ”H˜R“LÑ!ˆð ”b×&Ñ& r¨%¡x°UÔ;Ñ;ˆØ”r×'Ñ'¨¨6©	°uÔ=Ñ=ˆä”s˜5“z E§J¡JÑ.Ó/ˆÜœ˜F› f§k¡kÑ1Ó2ˆä˜˜d™ V¨E¡]Ø!¨°cõ	;ô —‘œ#˜b›'Ó"ˆÜ”s˜2“w“ò 	'ˆAÜ˜R¢ 1 ™X›ˆF�1ŠIð	'ä˜¤§¡¨¯©Ó 4¸cÕBô 	œ˜R›¤$ q¬¯©°Q«Ñ'8Ó"9Õ:rZ   c                 óì   — t        g d¢g d¢g d¢g d¢g d¢g«      }t        g d¢g d¢g d¢g d	¢g d
¢g«      }t        j                  d¬«      5  | j                  ||dd¬«       d d d «       y # 1 sw Y   y xY w)N)é   é"   é   rß   é   )é-   rá   é*   é   é   )é'   é/   é1   é   rÞ   )é   rß   rè   é   é   )é&   é,   rí   é   é   )é   rè   é   rà   rî   )rß   é.   é(   rè   é%   )rè   ró   rã   rñ   rñ   )é   rñ   ré   é   é   )rî   é#   é   rê   rÝ   Úignore©r¬   gê-�™—a=)rÌ   rÂ   )r,   rN   ÚerrstaterÛ   ©ru   rW   rË   s      rX   Útest_singularzTestEig.test_singular'  s€   € ô Ò'Ú'Ú'Ú'Ú'ð	)ó *ˆô
 Ò'Ú'Ú'Ú'Ú'ð	)ó *ˆô �[‰[˜XÔ&ñ 	DØ×Ñ  1°¸UÐÔC÷	D÷ 	Dñ 	Dús   ÁA*Á*A3c                 ó”  — t        t        g d¢«      «      }t        g d¢g d¢g d¢f«      }t        g d¢g d¢g d¢f«      }t        d«      }t        d	«      }t	        j
                  ||g|| gg«      }t	        j
                  ||g||gg«      }t	        j                  d
¬«      5  | j                  ||«       d d d «       y # 1 sw Y   y xY w)N)rE   r   rm   )rL   rœ   rœ   )rœ   rL   rœ   )rœ   rœ   rL   )rE   rœ   r   )rœ   rE   r   ©r   r   r   ©rm   rm   rm   rú   rû   )r-   r,   r1   r>   rN   Úblockrü   rÛ   )ru   ÚMÚKÚDÚZÚI3rW   rË   s           rX   Útest_falkerzTestEig.test_falker8  s®   € ä”’yÓ!Ó"ˆÜ’;¢ª[Ð9Ó:ˆÜ’:šzª9Ð5Ó6ˆÜ�&‹MˆÜ�‹VˆÜ�H‰H�r˜1�g  A 2˜wÐ'Ó(ˆÜ�H‰H�q˜"�g  1˜vÐ&Ó'ˆä�[‰[˜XÔ&ñ 	&Ø×Ñ  1Ô%÷	&÷ 	&ñ 	&ús   Â"B>Â>Cc                 óÊ   — d„ }t        j                  d¬«      5  t        d«      D ]&  } ||dz  dz  ¬«      \  }}| j                  ||«       Œ( 	 d d d «       y # 1 sw Y   y xY w)Nc                 ón   — d| dz  z   }d| z  }g d¢g d¢dd|dgddd|gg}g d¢g d¢ddd| gdd|dgg}||fS )	Né÷ÿÿÿrL   )rE   r   r   r   )r   rE   r   r   r   )r   r   rE   r   )r   r   r   rE   rE   r–   )ÚomegaÚc1Úc2rW   rË   s        rX   Úmatricesz)TestEig.test_bad_geneig.<locals>.matricesH  sm   € Ø�e˜Q‘h‘ˆBØ�5‘ˆBÚÚØ�Q˜˜A�Ø�Q˜˜2�ð ˆAò ÚØ�Q˜˜B˜3�Ø�Q˜˜A�ð ˆAð �a�4ˆKrZ   rú   rû   éd   ç      @)r  )rN   rü   r¢   rÛ   )ru   r  ÚkrW   rË   s        rX   Útest_bad_geneigzTestEig.test_bad_geneigE  sc   € ò	ô �[‰[˜XÔ&ñ 	*Ü˜3“Zò *�Ù a¨¡d¨3¡hÔ/‘��1Ø×#Ñ# A qÕ)ñ*÷	*÷ 	*ñ 	*ús   š5AÁA"c                 óš  — t         j                  j                  d«      }t        d|«      }| j	                  |d «       t        d|«      }| j	                  ||«       |j                  d«      d|j                  d«      z  z   }| j	                  |d «       |j                  d«      d|j                  d«      z  z   }| j	                  ||«       y )NéÒ  rm   r  rK   )rN   rO   ÚRandomStaterh   rÛ   )ru   rc   rW   rË   s       rX   Útest_make_eigvalszTestEig.test_make_eigvals\  s°   € ô �i‰i×#Ñ# DÓ)ˆÜ�A�s‹OˆØ×Ñ˜A˜tÔ$Ü�A�s‹OˆØ×Ñ˜A˜qÔ!à�J‰J�vÓ  C§J¡J¨vÓ$6Ñ!6Ñ6ˆØ×Ñ˜A˜tÔ$Ø�J‰J�vÓ  C§J¡J¨vÓ$6Ñ!6Ñ6ˆØ×Ñ˜A˜qÕ!rZ   c                 ó¸  — g d¢g d¢g d¢g}t        |d¬«      \  }}dt        d«      z   dz  ddt        d«      z
  dz  g}t        d	d	d	t        d«      d
z  z   dz  g«      }t        g d¢«      }t        d	d	d	t        d«      d
z  z
  dz  g«      }|t        |«      z  }|t        |«      z  }|t        |«      z  }t	        ||«       t	        ||d d …df   t        |d   «      z  «       t	        ||d d …d	f   t        |d   «      z  «       t	        ||d d …df   t        |d   «      z  «       t        d
«      D ]%  }t	        ||d d …|f   z  ||   |d d …|f   z  «       Œ' y )Nrl   rn   Fr�   rq   rr   rL   r   rE   rm   rš   r†   r�   rž   )r
   r6   r,   r)   r   r:   r¢   r£   s	            rX   Útest_check_finitezTestEig.test_check_finitej  sY  € Úš	¢9Ð-ˆÜ�1 5Ô)‰ˆˆ1Ø”d˜2“h‘J ‘> 1 q¬¨b«¡z°1¡nÐ5ˆÜ�A�q˜1œT "›X a™Z™<¨Ñ*Ð+Ó,ˆÜ’;ÓˆÜ�A�q˜1œT "›X a™Z™<¨Ñ*Ð+Ó,ˆØ”$�r“(‰]ˆØ”$�r“(‰]ˆØ”$�r“(‰]ˆÜ! ! WÔ-Ü! " aª¨1¨¡g¬d°1°T±7«mÑ&;Ô<Ü! " aª¨1¨¡g¬d°1°T±7«mÑ&;Ô<Ü! " aª¨1¨¡g¬d°1°T±7«mÑ&;Ô<Ü�q“ò 	AˆAÜ% a¨!ªA¨q¨D©'¡k°1°Q±4¸º!¸Q¸$¹±<Õ@ñ	ArZ   c                 óx   — t        j                  d«      j                  dd«      }t        t        t
        |«       y)z:Check that passing a non-square array raises a ValueError.rp   rm   rL   N)rN   r2   ÚreshapeÚassert_raisesÚ
ValueErrorr
   )ru   rW   s     rX   Útest_not_square_errorzTestEig.test_not_square_error{  s(   € ä�I‰I�a‹L× Ñ   AÓ&ˆÜ”j¤# qÕ)rZ   c                 ó¼   — t        d«      }t        j                  d«      j                  dd«      }t	        t
        t        ||«       t	        t
        t        ||«       y)zOCheck that passing arrays of with different shapes
        raises a ValueError.rL   ç      "@rm   N)r>   rN   r2   r  r  r  r
   rý   s      rX   Útest_shape_mismatchzTestEig.test_shape_mismatch€  sC   € ô �‹FˆÜ�I‰I�c‹N×"Ñ" 1 aÓ(ˆÜ”j¤# q¨!Ô,Ü”j¤# q¨!Õ,rZ   c                 óØ  — t        j                  g d¢g d¢g d¢g d¢gd¬«      }t        j                  g d¢g d¢g d	¢g d
¢gd¬«      }t        ||«      \  }}t        j                  «       5  t        j
                  ddt        «       t        j                  |dd¬«      j                  «       sJ ‚t        j                  |dd¬«      j                  «       sJ ‚	 d d d «       y # 1 sw Y   y xY w)N)g      (@ç      <@g      S@g     €k@)g      0@g      @@g      T@g      l@)g      8@ç      D@g      V@g      m@)r$  g      L@g      Z@g      o@r­   r‡   )ç       @ç      @ç      $@r#  )r›   r  ç      &@g      =@)r  ç      @g      *@g      ?@)r   r(  g      1@g     €A@rú   z%invalid value encountered in multiplyr&  ç›+¡†›„=©rÂ   ç       @)	rN   r,   r
   ÚwarningsÚcatch_warningsÚfilterwarningsÚRuntimeWarningÚiscloseÚany)ru   rW   rË   r  ÚVs        rX   Útest_gh_11577zTestEig.test_gh_11577ˆ  sÛ   € ô �H‰HÒ/Ú/Ú/Ú0ð2ð :CôDˆô �H‰HÒ,Ú,Ú,Ú-ð/ð 7@ôAˆô
 �1�a‹y‰ˆˆ1ô ×$Ñ$Ó&ñ 	8ä×#Ñ#ØÐAÄ>ôSä—:‘:˜a ¨5Ô1×5Ñ5Ô7Ð7Ð7Ü—:‘:˜a ¨5Ô1×5Ñ5Ô7Ð7Ñ7÷	8÷ 	8ñ 	8ús   Á*A,C Ã C)r„   c                 óR  — t        j                  d|¬«      }t        |«      \  }}t        t        j                  d|¬«      «      \  }}|j                  dk(  sJ ‚|j
                  |j
                  k(  sJ ‚t        |t        j                  d«      «       |j                  dk(  sJ ‚|j
                  |j
                  k(  sJ ‚t        |d¬«      \  }}|j                  dk(  sJ ‚|j
                  |j
                  k(  sJ ‚|j                  dk(  sJ ‚|j
                  |j
                  k(  sJ ‚y )Nr†   r‡   rL   rˆ   Tr‰   r‹   )rN   rŒ   r
   r>   r8   rV   r   )ru   r„   rv   rw   r¯   Úw_nÚvr_ns          rX   r�   zTestEig.test_empty¥  sù   € ä�H‰H�V 2Ô&ˆÜ�A“‰ˆˆ2äœŸ™˜q¨Ô+Ó,‰	ˆˆTà�w‰w˜$ŠÐˆØ�w‰w˜#Ÿ)™)Ò#Ð#Ð#ä˜œBŸH™H VÓ,Ô-Ø�x‰x˜6Ò!Ð!Ð!Ø�x‰x˜4Ÿ:™:Ò%Ð%Ð%ä�A¨4Ô0‰ˆˆ2Ø�w‰w˜&Ò Ð Ð Ø�w‰w˜#Ÿ)™)Ò#Ð#Ð#à�x‰x˜6Ò!Ð!Ð!Ø�x‰x˜4Ÿ:™:Ò%Ð%Ñ%rZ   Ú	include_BFTr    r¡   rŠ   rV   c                 óf  — d}d}t         j                  j                  d«      }|j                  ||z   «      j                  |«      }	|j                  ||z   «      j                  |«      }
t	        ||¬«      }|rt        |	f|
|dœ|¤Ž}nt        |	fd|i|¤Ž}t        |d   «      D ]Š  }t        |d   «      D ]w  }|rt        |	||f   f|
||f   |dœ|¤Ž}nt        |	||f   fd|i|¤Ž}|s|r1t        t        |«      «      D ]  }t        ||   ||f   ||   «       Œ Œgt        |||f   |«       Œy ŒŒ y )	N©rm   rL   )é   r;  l   ›F)QÒ)r¡   rŠ   )r°   r    r    r   rE   )	rN   rO   Údefault_rngrS   Údictr
   r¢   r_   r   )ru   r8  r    r¡   rŠ   rV   Úbatch_shapeÚ
core_shaperc   rW   rË   ÚkwargsrØ   r§   ÚjÚrefr  s                    rX   Útest_nd_inputzTestEig.test_nd_inputº  sW  € ð ˆØˆ
Ü�i‰i×#Ñ# MÓ2ˆØ�J‰J�{ ZÑ/Ó0×7Ñ7¸Ó>ˆØ�J‰J�{ ZÑ/Ó0×7Ñ7¸Ó>ˆÜ˜EÐ7JÔKˆáÜ�aÐ2˜1 4Ñ2¨6Ñ2‰Cä�aÑ-˜dÐ- fÑ-ˆCä�{ 1‘~Ó&ò 	4ˆAÜ˜; q™>Ó*ò 
4�ÙÜ˜a  1 ™gÐF¨¨1¨a¨4©°tÑF¸vÑF‘Cä˜a  1 ™gÑ;¨DÐ;°FÑ;�Cá™5Ü"¤3 s£8›_ò >˜Ü'¨¨A©¨q°!¨t©°c¸!±fÕ=ñ>ô $ C¨¨1¨¡I¨sÕ3ñ
4ñ	4rZ   ÚdtypÚorderÚCÚFÚndimrL   rm   Úoverwrite_ac                 óž  — d}t        j                  ||z  «      j                  ||«      }|j                  ||¬«      }|dk(  rt        j                  |d|z  g«      }|j                  «       }t        ||¬«      \  }}	|xr5 |j                  t        k7  xr  |j                  dk(  xr |j                  d   }
||k(  j                  «       |
k7  sJ ‚y )Nrm   ©rV   rE  rL   ©rI  ÚF_CONTIGUOUS)rN   r2   r  rS   Ústackr{   r
   rV   r^   rH  Úflagsr¬   )ru   rD  rE  rH  rI  rT   rv   Úa_refrw   rf   Ú	a_inplaces              rX   Útest_overwrite_regzTestEig.test_overwrite_regÙ  sË   € ð
 ˆÜ�I‰I�a˜‘c‹N×"Ñ" 1 aÓ(ˆØ�H‰H˜4 uˆHÓ-ˆà�1Š9Ü—‘˜!˜Q˜q™S˜Ó"ˆAà—‘“ˆä�1 +Ô.‰ˆˆ1ð ò $Ø�W‰Wœ‰^ò$à�V‰V�q‰[ò$ð �G‰G�NÑ#ð	 	ð �U‘
×ÑÓ! YÒ.Ð.Ñ.rZ   Údtyp_aÚdtyp_bÚorder_aÚorder_bÚndim_aÚndim_bÚoverwrite_bc	                 ó  — d}	t        j                  |	|	z  «      j                  |	|	«      }
|
j                  ||¬«      }
t        j                  |	|	z  «      j                  |	|	«      }|j                  ||¬«      }|dk(  rt        j                  |
d|
z  g«      }
|dk(  rt        j                  |d|z  g«      }|
j                  «       }|j                  «       }t        |
|||¬«      \  }}|xrk |
j                  t        k7  xrV |
j                  t        j                  |
|«      k(  xr1 |
j                  dk(  xr  |j                  dk(  xr |
j                  d   }|xrk |j                  t        k7  xrV |j                  t        j                  |
|«      k(  xr1 |
j                  dk(  xr  |j                  dk(  xr |j                  d   }|
|k(  j                  «       |k7  sJ d«       ‚||k(  j                  «       |k7  sJ d«       ‚y )Nrm   rK  rL   ©rI  rY  rM  rW   rË   )rN   r2   r  rS   rN  r{   r
   rV   r^   Úresult_typerH  rO  r¬   )ru   rS  rT  rU  rV  rW  rX  rI  rY  rT   rv   r°   rP  Úb_refrw   rf   rQ  Ú	b_inplaces                     rX   Útest_overwrite_genzTestEig.test_overwrite_genó  sá  € ð ˆÜ�I‰I�a˜‘c‹N×"Ñ" 1 aÓ(ˆØ�H‰H˜6¨ˆHÓ1ˆä�I‰I�a˜‘c‹N×"Ñ" 1 aÓ(ˆØ�H‰H˜6¨ˆHÓ1ˆà�QŠ;Ü—‘˜!˜Q˜q™S˜Ó"ˆAØ�QŠ;Ü—‘˜!˜Q˜q™S˜Ó"ˆAà—‘“ˆØ—‘“ˆä�1�a [¸kÔJ‰ˆˆ1ð ò $Ø�W‰Wœ‰^ò$Ø"#§'¡'¬R¯^©^¸A¸qÓ-AÑ"Aò$à�V‰V�q‰[ò$à Ÿv™v¨™{ò$ð �G‰G�NÑ#ð	 	ð ò $Ø�W‰Wœ‰^ò$Ø"#§'¡'¬R¯^©^¸A¸qÓ-AÑ"Aò$à�V‰V�q‰[ò$à Ÿv™v¨™{ò$ð �G‰G�NÑ#ð	 	ð �U‘
×ÑÓ! YÒ.Ð3°Ó3Ð.Ø�U‘
×ÑÓ! YÒ.Ð3°Ó3Ñ.rZ   N)ç‚vIhÂ%<=r`  r`  r`  ) rŽ   r�   r�   ry   r±   r¶   r¸   r   r½   rÛ   rþ   r  r  r  r  r  r!  r4  r‘   r’   r“   r^   r”   rN   r3   r•   r4   r�   rª   rC  rR  r_  r–   rZ   rX   r˜   r˜   †   s»  „ òCò*&ò*<ò	)ò<ò
ð AFØ49óH;òTDò"&ò*ò."òAò"*ò
-ò8ð: ‡[�[×Ñ˜T C¨°·
±
¸GÀRÇ\Á\Ð#RÓSñ&ó Tð&ð( ‡[�[×Ñ˜[¨5°$¨-Ó8Ø‡[�[×Ñ˜V e¨T ]Ó3Ø‡[�[×Ñ˜W u¨d mÓ4Ø‡[�[×ÑÐ2°U¸D°MÓBØ‡[�[×Ñ˜W r§z¡z°2·=±=Ð&AÓBñ4ó Có Có 5ó 4ó 9ð
4ð4 ‡[�[×Ñ˜V c¨5°'Ð%:Ó;Ø‡[�[×Ñ˜W s¨C jÓ1Ø‡[�[×Ñ˜V a¨ VÓ,Ø‡[�[×Ñ˜]¨T°5¨MÓ:ñ/ó ;ó -ó 2ó <ð/ð, ‡[�[×Ñ˜X¨¨U°GÐ'<Ó=Ø‡[�[×Ñ˜X¨¨U°GÐ'<Ó=Ø‡[�[×Ñ˜Y¨¨c¨
Ó3Ø‡[�[×Ñ˜Y¨¨c¨
Ó3Ø‡[�[×Ñ˜X¨¨1 vÓ.Ø‡[�[×Ñ˜X¨¨1 vÓ.Ø‡[�[×Ñ˜]¨T°5¨MÓ:Ø‡[�[×Ñ˜]¨T°5¨MÓ:ñ$4ó ;ó ;ó /ó /ó 4ó 4ó >ó >ñ$4rZ   r˜   c                   óÐ   — e 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ej"                  j%                  deeej,                  eej0                  g«      d„ «       Zy)ÚTestEigBandedc                 ó$   — | j                  «        y ©N)Úcreate_bandmat©ru   s    rX   Úsetup_methodzTestEigBanded.setup_method#  s   € Ø×ÑÕrZ   c                 ó  — d}d| _         d| _        t        t        |d«      «      t        t        |dz
  d«      d«      z   t        t        |dz
  d«      d«      z   t        t        |dz
  d«      d«      z   t        t        |dz
  d«      d«      z   | _        t        t        |d«      «      d	t        t        |dz
  d«      d«      z  z   d	t        t        |dz
  d«      d«      z  z
  t        t        |dz
  d«      d«      z   t        t        |dz
  d«      d«      z   | _        t        t        |d«      «      t        t        |dz
  d«      d«      z   t        t        |dz
  d
«      d«      z   t        t        |dz
  d«      d«      z   t        t        |dz
  d«      d«      z   | _        d	t        t        |d«      «      z  t        t        |dz
  d«      d«      z   d	t        t        |dz
  d
«      d«      z  z   t        t        |dz
  d«      d«      z   t        t        |dz
  d«      d«      z   | _        t        j                  | j                  «      \  }}|j                  }t        |«      }||   | _        |dd…|f   | _        t        j                  | j
                  «      \  }}|j                  }t        |«      }||   | _        |dd…|f   | _        | j                  dz   }t!        ||ft"        ¬«      | _        t!        ||ft&        ¬«      | _        t+        |«      D ]\  }t        | j                  |«      | j$                  ||z
  dz
  ||…f<   t        | j
                  |«      | j(                  ||z
  dz
  ||…f<   Œ^ d| j                   z  | j                  z   dz   }t!        ||ft"        ¬«      | _        t        | j                  «      | j,                  d| j                   z  dd…f<   t+        | j                   «      D ]†  }t        | j                  |dz   «      | j,                  d| j                   z  dz
  |z
  |dz   |…f<   t        | j                  | dz
  «      | j,                  d| j                   z  dz   |z   d|dz
  |z
  …f<   Œˆ t!        ||ft&        ¬«      | _        t        | j                  «      | j.                  d| j                   z  dd…f<   t+        | j                   «      D ]†  }t        | j                  |dz   «      | j.                  d| j                   z  dz
  |z
  |dz   |…f<   t        | j                  | dz
  «      | j.                  d| j                   z  dz   |z   d|dz
  |z
  …f<   Œˆ dt1        |«      z  | _        | j2                  dz  | _        y)zbCreate the full matrix `self.fullmat` and
           the corresponding band matrix `self.bandmat`.é
   rL   ç      ð?rE   ç      ð¿rœ   ç       Àr³   rK   ç      Àr%  Nr‡   r   ù      ð?      ð?)ÚKLÚKUr-   r.   Úsym_matÚherm_matÚreal_matÚcomp_matr/   r
   Úrealr0   Ú	w_sym_linÚevec_sym_linÚ
w_herm_linÚevec_herm_linr1   r”   Úbandmat_symr•   Úbandmat_hermr¢   Úbandmat_realÚbandmat_compr2   r°   Úbc)ru   ÚNÚewÚevÚargsÚLDABr§   s          rX   re  zTestEigBanded.create_bandmat&  s%  € ð ˆØˆŒØˆŒô œT ! S›\Ó*Üœt A a¡C¨›°Ó3ñ4Ü6:¼4ÀÀ!ÁÀT»?ÈAÓ6NñOäœt A a¡C¨›°Ó3ñ4ä6:¼4ÀÀ!ÁÀT»?ÈAÓ6NñOˆŒô
 œd 1 d›mÓ,Øœd¤4¨¨!©¨S£>°2Ó6Ñ6ñ7àœd¤4¨¨!©¨S£>°1Ó5Ñ5ñ6ô  ¤ Q q¡S¨$£°Ó4ñ5ô  ¤ Q q¡S¨$£°Ó3ñ	4ˆŒô œd 1 c›lÓ+Ü¤ Q q¡S¨$£°Ó4ñ5Ü7;¼DÀÀ1ÁÀd»OÈQÓ7OñPä¤ Q q¡S¨#£°Ó3ñ4ä6:¼4ÀÀ!ÁÀT»?ÈAÓ6NñOˆŒð
 œD¤ a¨£Ó.Ñ.Ü¤ Q q¡S¨$£°Ó4ñ5àœd¤4¨¨!©¨T£?°AÓ6Ñ6ñ7ô  ¤ Q q¡S¨#£°Ó3ñ4ô  ¤ Q q¡S¨$£°Ó3ñ	4ˆŒô —‘˜DŸL™LÓ)‰ˆˆBØ�W‰WˆÜ�r‹{ˆØ˜D™ˆŒØšq $˜w™KˆÔä—‘˜DŸM™MÓ*‰ˆˆBØ�W‰WˆÜ�r‹{ˆØ˜T™(ˆŒØ¢ 4 ™[ˆÔð
 �w‰w˜‰{ˆÜ  $¨ ´%Ô8ˆÔÜ! 4¨ )´7Ô;ˆÔÜ�t“ò 	FˆAÜ.2°4·<±<ÀÓ.CˆD×Ñ˜T !™V A™X q¨ s˜]Ñ+Ü/3°D·M±MÀ1Ó/EˆD×Ñ˜d 1™f Q™h¨¨!¨˜mÒ,ð	Fð �—‘‰y˜4Ÿ7™7Ñ" QÑ&ˆÜ! 4¨ )´5Ô9ˆÔÜ*.¨t¯}©}Ó*=ˆ×Ñ˜!˜DŸG™G™)¢Q˜,Ñ'Ü�t—w‘w“ò 	CˆAä6:¸4¿=¹=È!ÈAÉ#Ó6NˆD×Ñ˜a §¡™i¨™k¨!™m¨Q¨q©S°¨UÐ2Ñ3ä8<¸T¿]¹]Ø>?¸RÀ¹Tó9CˆD×Ñ˜a §¡™i¨™k¨!™m¨Q¨q°©s°1©u¨WÐ4Ò5ð		Cô " 4¨ )´7Ô;ˆÔÜ*.¨t¯}©}Ó*=ˆ×Ñ˜!˜DŸG™G™)¢Q˜,Ñ'Ü�t—w‘w“ò 	CˆAä6:¸4¿=¹=È!ÈAÉ#Ó6NˆD×Ñ˜a §¡™i¨™k¨!™m¨Q¨q©S°¨UÐ2Ñ3ä8<¸T¿]¹]Ø>?¸RÀ¹Tó9CˆD×Ñ˜a §¡™i¨™k¨!™m¨Q¨q°©s°1©u¨WÐ4Ò5ð		Cð ”V˜A“Y‘ˆŒØ—&‘&˜FÑ#ˆ�rZ   c                 ó  — t        dt        j                  d¬«      } || j                  d¬«      \  }}}|dd…t	        |«      f   }t        t        |«      | j                  «       t        t        |«      t        | j                  «      «       y)zTCompare dsbev eigenvalues and eigenvectors with
           the result of linalg.eig.ÚsbevÚ	preferred©rV   Úilp64rE   ©Ú	compute_vN©
r(   rN   r­   rz  r0   r   r9   rv  rÊ   rw  )ru   Údsbevrw   ÚevecÚinfoÚevec_s         rX   Ú
test_dsbevzTestEigBanded.test_dsbevw  sk   € ô ! ¬r¯z©zÀÔMˆá˜d×.Ñ.¸!Ô<‰ˆˆ4�Ø’Qœ ›
�]Ñ#ˆÜ!¤$ q£'¨4¯>©>Ô:Ü!¤# e£*¬c°$×2CÑ2CÓ.DÕErZ   c                 ó  — t        dt        j                  d¬«      } || j                  d¬«      \  }}}|dd…t	        |«      f   }t        t        |«      | j                  «       t        t        |«      t        | j                  «      «       y)zUCompare dsbevd eigenvalues and eigenvectors with
           the result of linalg.eig.Úsbevdr†  r‡  rE   r‰  Nr‹  )ru   Údsbevdrw   r�  rŽ  r�  s         rX   Útest_dsbevdzTestEigBanded.test_dsbevd�  sk   € ô " '´·±À;ÔOˆá˜t×/Ñ/¸1Ô=‰ˆˆ4�Ø’Qœ ›
�]Ñ#ˆÜ!¤$ q£'¨4¯>©>Ô:Ü!¤# e£*¬c°$×2CÑ2CÓ.DÕErZ   c           	      ó\  — t        | j                  «      \  }}t        dt        j                  d¬«      } || j
                  ddd|dd¬«      \  }}}}}|dd…t        |«      f   }t        t        |«      | j                  «       t        t        |«      t        | j                  «      «       y)	zUCompare dsbevx eigenvalues and eigenvectors
           with the result of linalg.eig.Úsbevxr†  r‡  r©   rE   rL   ©rŠ  r¢   N)r8   rq  r(   rN   r­   rz  r0   r   r9   rv  rÊ   rw  )	ru   r  Údsbevxrw   r�  ÚnumÚifailrŽ  r�  s	            rX   Útest_dsbevxzTestEigBanded.test_dsbevx‹  s’   € ô �T—\‘\Ó"‰ˆˆ1Ü! '´·±À;ÔOˆñ %+¨4×+;Ñ+;¸SÀ#ÀqÈ!Ø56¸aô%AÑ!ˆˆ4��e˜Tà’Qœ ›
�]Ñ#ˆÜ!¤$ q£'¨4¯>©>Ô:Ü!¤# e£*¬c°$×2CÑ2CÓ.DÕErZ   c                 ó  — t        dt        j                  d¬«      } || j                  d¬«      \  }}}|dd…t	        |«      f   }t        t        |«      | j                  «       t        t        |«      t        | j                  «      «       y)zUCompare zhbevd eigenvalues and eigenvectors
           with the result of linalg.eig.Úhbevdr†  r‡  rE   r‰  N)
r(   rN   rª   r{  r0   r   r9   rx  rÊ   ry  )ru   Úzhbevdrw   r�  rŽ  r�  s         rX   Útest_zhbevdzTestEigBanded.test_zhbevd˜  sk   € ô " '´·±ÀkÔRˆá˜t×0Ñ0¸AÔ>‰ˆˆ4�Ø’Qœ ›
�]Ñ#ˆÜ!¤$ q£'¨4¯?©?Ô;Ü!¤# e£*¬c°$×2DÑ2DÓ.EÕFrZ   c           	      ó\  — t        | j                  «      \  }}t        dt        j                  d¬«      } || j
                  ddd|dd¬«      \  }}}}}|dd…t        |«      f   }t        t        |«      | j                  «       t        t        |«      t        | j                  «      «       y)	zUCompare zhbevx eigenvalues and eigenvectors
           with the result of linalg.eig.Úhbevxr†  r‡  r©   rE   rL   r—  N)r8   rr  r(   rN   rª   r{  r0   r   r9   rx  rÊ   ry  )	ru   r  Úzhbevxrw   r�  r™  rš  rŽ  r�  s	            rX   Útest_zhbevxzTestEigBanded.test_zhbevx¢  s’   € ô �T—]‘]Ó#‰ˆˆ1Ü! '´·±ÀkÔRˆñ %+¨4×+<Ñ+<¸cÀ3ÈÈ1Ø56¸aô%AÑ!ˆˆ4��e˜Tà’Qœ ›
�]Ñ#ˆÜ!¤$ q£'¨4¯?©?Ô;Ü!¤# e£*¬c°$×2DÑ2DÓ.EÕFrZ   c                 ó>  — t        | j                  «      }|j                  }t        t	        |«      | j
                  «       t        | j                  «      }|j                  }t        t	        |«      | j                  «       d}t        j                  d«      }t        | j                  d||f¬«      }t        t	        |«      | j
                  ||dz    «       t        | j                  d||f¬«      }t        t	        |«      | j                  ||dz    «       | j
                  |   dz
  }| j
                  |   dz   }t        | j                  d||f¬«      }	t        t	        |	«      | j
                  ||dz    «       | j                  |   dz
  }| j                  |   dz   }t        | j                  d||f¬«      }
t        t	        |
«      | j                  ||dz    «       t        | j                  d¬	«      }|j                  }t        t	        |«      | j
                  «       y
)z?Compare eigenvalues of eigvals_banded with those of linalg.eig.rL   rp   r§   ©ÚselectÚselect_rangerE   çñhãˆµøä>rf   Fr�   N)
r   rz  ru  r   r9   rv  r{  rx  rN   Úlonglong)ru   Úw_symÚw_hermÚind1Úind2Ú	w_sym_indÚ
w_herm_indÚv_lowerÚv_upperÚ	w_sym_valÚ
w_herm_vals              rX   Útest_eigvals_bandedz!TestEigBanded.test_eigvals_banded¯  sä  € ä˜t×/Ñ/Ó0ˆØ—
‘
ˆÜ!¤$ u£+¨t¯~©~Ô>ä × 1Ñ 1Ó2ˆØ—‘ˆÜ!¤$ v£,°·±Ô@ð ˆÜ�{‰{˜1‹~ˆÜ" 4×#3Ñ#3Ø*-¸TÀ4¸LôJˆ	ä!¤$ y£/Ø"&§.¡.°°d¸1±fÐ"=ô	?ä# D×$5Ñ$5Ø+.¸dÀD¸\ôKˆ
ä!¤$ zÓ"2Ø"&§/¡/°$°t¸A±vÐ">ô	@ð —.‘. Ñ&¨Ñ/ˆØ—.‘. Ñ&¨Ñ/ˆÜ" 4×#3Ñ#3Ø*-¸WÀgÐ<NôPˆ	ä!¤$ y£/Ø"&§.¡.°°d¸1±fÐ"=ô	?ð —/‘/ $Ñ'¨&Ñ0ˆØ—/‘/ $Ñ'¨&Ñ0ˆÜ# D×$5Ñ$5Ø+.Ø29¸7Ð1CôEˆ
ô 	"¤$ zÓ"2Ø"&§/¡/°$°t¸A±vÐ">ô	@ô ˜t×/Ñ/¸eÔDˆØ—
‘
ˆÜ!¤$ u£+¨t¯~©~Õ>rZ   c           
      ó2  — t        | j                  «      \  }}|dd…t        |j                  «      f   }t	        t        |«      | j                  «       t	        t        |«      t        | j                  «      «       t        | j                  «      \  }}|dd…t        |j                  «      f   }t	        t        |«      | j                  «       t	        t        |«      t        | j                  «      «       d}d}t        | j                  d||f¬«      \  }	}
t	        t        |	«      | j                  ||dz    «       t	        t        |
«      t        | j                  dd…||dz   …f   «      «       t        | j                  d||f¬«      \  }}t	        t        |«      | j                  ||dz    «       t	        t        |«      t        | j                  dd…||dz   …f   «      «       | j                  |   dz
  }| j                  |   dz   }t        | j                  d||f¬«      \  }}t	        t        |«      | j                  ||dz    «       t	        t        |«      t        | j                  dd…||dz   …f   «      «       | j                  |   dz
  }| j                  |   dz   }t        | j                  d||f¬«      \  }}t	        t        |«      | j                  ||dz    «       t	        t        |«      t        | j                  dd…||dz   …f   «      «       t        | j                  d	¬
«      \  }}|dd…t        |j                  «      f   }t	        t        |«      | j                  «       t	        t        |«      t        | j                  «      «       y)zXCompare eigenvalues and eigenvectors of eig_banded
           with those of linalg.eig. NrL   rp   r§   r¥  rE   r¨  rf   Fr�   )r   rz  r0   ru  r   r9   rv  rÊ   rw  r{  rx  ry  )ru   rª  Úevec_symÚ	evec_sym_r«  Ú	evec_hermÚ
evec_herm_r¬  r­  r®  Úevec_sym_indr¯  Úevec_herm_indr°  r±  r²  Úevec_sym_valr³  Úevec_herm_vals                      rX   Útest_eig_bandedzTestEigBanded.test_eig_bandedÙ  s>  € ô % T×%5Ñ%5Ó6‰ˆˆxØšQ¤¨¯
©
Ó 3Ð3Ñ4ˆ	Ü!¤$ u£+¨t¯~©~Ô>Ü!¤# i£.´#°d×6GÑ6GÓ2HÔIä& t×'8Ñ'8Ó9Ñˆ�	Øšq¤'¨&¯+©+Ó"6Ð6Ñ7ˆ
Ü!¤$ v£,°·±Ô@Ü!¤# j£/´3°t×7IÑ7IÓ3JÔKð ˆØˆÜ",¨T×-=Ñ-=Ø47Ø;?À¸,ô#HÑˆ	�<ô 	"¤$ y£/Ø"&§.¡.°°d¸1±fÐ"=ô	?ä!¤# lÓ"3Ü"% d×&7Ñ&7º¸4ÀÀQÁ¸;¸Ñ&GÓ"Hô	Jô %/¨t×/@Ñ/@Ø69Ø=AÀ4¸Lô%JÑ!ˆ
�Mô 	"¤$ zÓ"2Ø"&§/¡/°$°t¸A±vÐ">ô	@ä!¤# mÓ"4Ü"% d×&8Ñ&8º¸DÀÀaÁ¸K¸Ñ&HÓ"Iô	Kð —.‘. Ñ&¨Ñ/ˆØ—.‘. Ñ&¨Ñ/ˆÜ",¨T×-=Ñ-=Ø47Ø;BÀGÐ:Lô#NÑˆ	�<ô 	"¤$ y£/Ø"&§.¡.°°d¸1±fÐ"=ô	?ä!¤# lÓ"3Ü"% d×&7Ñ&7º¸4ÀÀQÁ¸;¸Ñ&GÓ"Hô	Jð —/‘/ $Ñ'¨&Ñ0ˆØ—/‘/ $Ñ'¨&Ñ0ˆÜ$.¨t×/@Ñ/@Ø69Ø=DÀgÐ<Nô%PÑ!ˆ
�Mô 	"¤$ zÓ"2Ø"&§/¡/°$°t¸A±vÐ">ô	@ä!¤# mÓ"4Ü"% d×&8Ñ&8º¸DÀÀaÁ¸K¸Ñ&HÓ"Iô	Kô % T×%5Ñ%5ÀEÔJ‰ˆˆxØšQ¤¨¯
©
Ó 3Ð3Ñ4ˆ	Ü!¤$ u£+¨t¯~©~Ô>Ü!¤# i£.´#°d×6GÑ6GÓ2HÕIrZ   c                 óü  — t        dt        j                  d¬«      }t        | j                  «      \  }} || j
                  | j                  | j                  «      \  }}}t        |d| j                  z  dd…f   «      }t        | j                  | j                  z   «      D ]1  }|t        |d| j                  z  dz
  |z
  |dz   |…f   |dz   «      z  }Œ3 t        | j                  d¬«      \  }	}
}t        ||«       y)	zZCompare dgbtrf  LU factorisation with the LU factorisation result
           of linalg.lu.Úgbtrfr†  r‡  rL   NrE   r   ©Ú	permute_l)r(   rN   r­   r8   rs  r|  ro  rp  r-   r¢   r   r   )ru   Údgbtrfr  r  Úlu_symm_bandÚipivrŽ  Úur§   Úp_linÚl_linÚu_lins               rX   Útest_dgbtrfzTestEigBanded.test_dgbtrf  sã   € ô " '´·±À;ÔOˆä�T—]‘]Ó#‰ˆˆ1Ù#)¨$×*;Ñ*;¸T¿W¹WÀdÇgÁgÓ#NÑ ˆ�d˜Dô �˜a §¡™iª˜lÑ+Ó,ˆÜ�t—w‘w §¡Ñ(Ó)ò 	?ˆAØ”�l 1 T§W¡W¡9¨Q¡;¨q¡=°!°A±#°a°%Ð#7Ñ8¸!¸A¹#Ó>Ñ>‰Að	?ô ! §¡¸!Ô<Ñˆˆu�eÜ! ! UÕ+rZ   c                 óü  — t        | j                  «      \  }}t        dt        j                  d¬«      } || j
                  | j                  | j                  «      \  }}}t        |d| j                  z  dd…f   «      }t        | j                  | j                  z   «      D ]1  }|t        |d| j                  z  dz
  |z
  |dz   |…f   |dz   «      z  }Œ3 t        | j                  d¬«      \  }	}
}t        ||«       y)	zZCompare zgbtrf  LU factorisation with the LU factorisation result
           of linalg.lu.rÀ  r†  r‡  rL   NrE   r   rÁ  )r8   rt  r(   rN   rª   r}  ro  rp  r-   r¢   r   r   )ru   r  r  ÚzgbtrfrÄ  rÅ  rŽ  rÆ  r§   rÇ  rÈ  rÉ  s               rX   Útest_zgbtrfzTestEigBanded.test_zgbtrf#  sã   € ô �T—]‘]Ó#‰ˆˆ1Ü! '´·±ÀkÔRˆá#)¨$×*;Ñ*;¸T¿W¹WÀdÇgÁgÓ#NÑ ˆ�d˜Dô �˜a §¡™iª˜lÑ+Ó,ˆÜ�t—w‘w §¡Ñ(Ó)ò 	?ˆAØ”�l 1 T§W¡W¡9¨Q¡;¨q¡=°!°A±#°a°%Ð#7Ñ8¸!¸A¹#Ó>Ñ>‰Að	?ô ! §¡¸!Ô<Ñˆˆu�eÜ! ! UÕ+rZ   c                 ó`  — t        dt        j                  d¬«      \  }} || j                  | j                  | j
                  «      \  }}} ||| j                  | j
                  | j                  |«      \  }}t        j                  | j                  | j                  «      }t        ||«       y)zhCompare dgbtrs  solutions for linear equation system  A*x = b
           with solutions of linalg.solve.©rÀ  Úgbtrsr†  r‡  N)r(   rN   r­   r|  ro  rp  r°   r/   r   rs  r   )ru   rÃ  ÚdgbtrsrÄ  rÅ  rŽ  ÚyÚy_lins           rX   Útest_dgbtrszTestEigBanded.test_dgbtrs3  s†   € ô *Ø¤b§j¡j¸ô
‰ˆ�ñ $*¨$×*;Ñ*;¸T¿W¹WÀdÇgÁgÓ#NÑ ˆ�d˜DÙ˜ t§w¡w°·±¸¿¹ÀÓF‰ˆˆ4ä—‘˜TŸ]™]¨D¯F©FÓ3ˆÜ! ! UÕ+rZ   c                 ó`  — t        dt        j                  d¬«      \  }} || j                  | j                  | j
                  «      \  }}} ||| j                  | j
                  | j                  |«      \  }}t        j                  | j                  | j                  «      }t        ||«       y)zhCompare zgbtrs  solutions for linear equation system  A*x = b
           with solutions of linalg.solve.rÏ  r†  r‡  N)r(   rN   rª   r}  ro  rp  r~  r/   r   rt  r   )ru   rÌ  ÚzgbtrsrÄ  rÅ  rŽ  rÒ  rÓ  s           rX   Útest_zgbtrszTestEigBanded.test_zgbtrs@  s†   € ô *Ø¤b§m¡m¸;ô
‰ˆ�ñ $*¨$×*;Ñ*;¸T¿W¹WÀdÇgÁgÓ#NÑ ˆ�d˜DÙ˜ t§w¡w°·±¸¿¹À$ÓG‰ˆˆ4ä—‘˜TŸ]™]¨D¯G©GÓ4ˆÜ! ! UÕ+rZ   r„   c                 óÂ  — t        j                  d|¬«      }t        |«      \  }}t        t        j                  ddgddgg|¬«      «      \  }}|j                  dk(  sJ ‚|j
                  |j
                  k(  sJ ‚|j                  dk(  sJ ‚|j
                  |j
                  k(  sJ ‚t        |d¬«      }|j                  dk(  sJ ‚|j
                  |j
                  k(  sJ ‚y )Nr†   r‡   r   rE   rˆ   T©Úeigvals_only)rN   rŒ   r   r,   r8   rV   )ru   r„   Úa_bandrw   rf   r6  Úv_ns          rX   r�   zTestEigBanded.test_emptyM  sÆ   € ä—‘˜&¨Ô+ˆÜ˜&Ó!‰ˆˆ1äœbŸh™h¨¨A¨°°A°Ð'7¸rÔBÓC‰ˆˆSà�w‰w˜$ŠÐˆØ�w‰w˜#Ÿ)™)Ò#Ð#Ð#à�w‰w˜&Ò Ð Ð Ø�w‰w˜#Ÿ)™)Ò#Ð#Ð#ä�v¨DÔ1ˆØ�w‰w˜$ŠÐˆØ�w‰w˜#Ÿ)™)Ò#Ð#Ñ#rZ   N)rŽ   r�   r�   rg  re  r�  r”  r›  rŸ  r£  r´  r¾  rÊ  rÍ  rÔ  r×  r‘   r’   r“   r^   r”   rN   r3   r•   r4   r�   r–   rZ   rX   rb  rb  "  s†   „ òòM$òbFòFòFòGòGò(?òT8Jòt,ò ,ò ,ò,ð ‡[�[×Ñ˜T C¨°·
±
¸GÀRÇ\Á\Ð#RÓSñ$ó Tñ$rZ   rb  c                   ó0   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTestEigTridiagonalc                 ó$   — | j                  «        y rd  )Úcreate_trimatrf  s    rX   rg  zTestEigTridiagonal.setup_method_  s   € Ø×ÑÕrZ   c                 ó„  — d}t        |d«      | _        t        |dz
  d«      | _        t        | j                  «      t        | j                  d«      z   t        | j                  d«      z   | _        t        j                  | j                  «      \  }}|j                  }t        |«      }||   | _	        |dd…|f   | _
        y)z>Create the full matrix `self.fullmat`, `self.d`, and `self.e`.ri  rj  rE   rk  rœ   N)r.   re   Úer-   Úfull_matr/   r
   ru  r0   rw   r�  )ru   r  r€  r�  r‚  s        rX   rà  z TestEigTridiagonal.create_trimatb  s—   € àˆô �a˜“ˆŒÜ�a˜‘c˜4“ˆŒÜ˜dŸf™f›¬¨T¯V©V°RÓ(8Ñ8¼4ÀÇÁÈ»?ÑJˆŒä—‘˜DŸM™MÓ*‰ˆˆBØ�W‰WˆÜ�r‹{ˆØ�D‘ˆŒØ’q˜$�w‘Kˆ�	rZ   c                 óÂ  — t        t        t        | j                  | j                  dd «       t        t
        t        | j                  | j                  dz  «       t        t
        t        | j                  | j                  d¬«       t        t        t        | j                  | j                  d¬«       t        t        t        | j                  | j                  dd¬	«       y)
zTest error conditions.Nrœ   rK   rj  ©Úlapack_driverÚfoor§   ©r   rœ   r¥  )r  r  r#   re   râ  r`   rf  s    rX   Útest_degeneratez"TestEigTridiagonal.test_degenerateq  s”   € ô 	”jÔ"6¸¿¹ÀÇÁÀsÈÀÔLä”iÔ!5°t·v±v¸t¿v¹vÈ¹{ÔKä”iÔ!5°t·v±v¸t¿v¹vØ$&õ	(ä”jÔ"6¸¿¹ÀÇÁØ$)õ	+ô 	”jÔ"6¸¿¹ÀÇÁØ ¨wö	8rZ   c           
      óB  — dD ]C  }t        | j                  | j                  |¬«      }t        t	        |«      | j
                  «       ŒE dD ]0  }t        t        t         | j                  | j                  |dd¬«       Œ2 dD �]  }t        | j                  | j                  ddt        | j                  «      d	z
  f|¬
«      }t        t	        |«      | j
                  «       d}d}t        | j                  | j                  d||f|¬
«      }t        t	        |«      | j
                  ||d	z    «       | j
                  |   dz
  }| j
                  |   dz   }t        | j                  | j                  d||f|¬
«      }t        t	        |«      | j
                  ||d	z    «       �Œ y)z>Compare eigenvalues of eigvalsh_tridiagonal with those of eig.)ÚsterfÚstevÚstevdÚstebzÚstemrÚautorå  )rë  rì  rí  r§   r�   ©ræ  r¦  r§  ©rî  rï  rð  r   rE   ©r¦  r§  ræ  rL   rp   r¨  rf   N)	r#   re   râ  r   r9   rw   r  r  r_   )	ru   Údriverrw   Úw_indr¬  r­  r°  r±  Úw_vals	            rX   Útest_eigvalsh_tridiagonalz,TestEigTridiagonal.test_eigvalsh_tridiagonal€  sy  € ð Kò 	7ˆFÜ$ T§V¡V¨T¯V©VÀ6ÔJˆAÜ%¤d¨1£g¨t¯v©vÕ6ð	7ð 1ò 	/ˆFÜœ*Ô&:¸D¿F¹FÀDÇFÁFØ(.°sØ'-ö/ð	/ð 1ó 	HˆFä(Ø—‘˜Ÿ™ s¸!¼SÀÇÁ»[È¹]Ð9KØ$ô&ˆEô &¤d¨5£k°4·6±6Ô:ð ˆDØˆDÜ(Ø—‘˜Ÿ™ s¸$À¸Ø$ô&ˆEô &¤d¨5£k°4·6±6¸$¸tÀA¹vÐ3FÔGð —f‘f˜T‘l VÑ+ˆGØ—f‘f˜T‘l VÑ+ˆGÜ(Ø—‘˜Ÿ™ s¸'À7Ð9KØ$ô&ˆEô &¤d¨5£k°4·6±6¸$¸tÀA¹vÐ3FÖGñ+	HrZ   c                 ó@  — t        t        t        | j                  | j                  d¬«       dD ]€  }t        | j                  | j                  |¬«      \  }}|dd…t        |«      f   }t        t        |«      | j                  «       t        t        |«      t        | j                  «      «       Œ‚ t        t        t        | j                  | j                  ddd¬«       d	D �]¹  }d
}t        | j                  «      dz
  }t        | j                  | j                  d||f|¬«      \  }}t        t        |«      | j                  «       t        t        |«      t        | j                  «      «       d}d}t        | j                  | j                  d||f|¬«      \  }}t        t        |«      | j                  ||dz    «       t        t        |«      t        | j                  dd…||dz   …f   «      «       | j                  |   dz
  }| j                  |   dz   }t        | j                  | j                  d||f|¬«      \  }}t        t        |«      | j                  ||dz    «       t        t        |«      t        | j                  dd…||dz   …f   «      «       �Œ¼ y)zWCompare eigenvalues and eigenvectors of eigh_tridiagonal
           with those of eig. rë  rå  )rî  rì  rí  rï  rð  Nrì  r§   r�   rñ  rò  r   rE   ró  rL   rp   r¨  rf   )r  r  r$   re   râ  r0   r   r9   rw   rÊ   r�  r_   )	ru   rô  rw   r�  r�  r¬  r­  r°  r±  s	            rX   Útest_eigh_tridiagonalz(TestEigTridiagonal.test_eigh_tridiagonal¢  s2  € ô 	”jÔ"2°D·F±F¸D¿F¹FØ$+õ	-àAò 	BˆFÜ& t§v¡v¨t¯v©vÀVÔL‰GˆAˆtØšœG A›J˜Ñ'ˆEÜ%¤d¨1£g¨t¯v©vÔ6Ü%¤c¨%£j´#°d·i±i³.ÕAð		Bô 	”jÔ"2°D·F±F¸D¿F¹FØ$*°3ÀVõ	Mà0ó 	FˆFàˆDÜ�t—v‘v“;˜q‘=ˆDÜ&Ø—‘˜Ÿ™ s¸$À¸Ø$ô&‰GˆAˆtô &¤d¨1£g¨t¯v©vÔ6Ü%¤c¨$£i´°T·Y±Y³Ô@ØˆDØˆDÜ&Ø—‘˜Ÿ™ s¸$À¸Ø$ô&‰GˆAˆtô &¤d¨1£g¨t¯v©v°d¸4À¹6Ð/BÔCÜ%¤c¨$£iÜ&)¨$¯)©)²A°t¸DÀ¹F°{°NÑ*CÓ&DôFð —f‘f˜T‘l VÑ+ˆGØ—f‘f˜T‘l VÑ+ˆGÜ&Ø—‘˜Ÿ™ s¸'À7Ð9KØ$ô&‰GˆAˆtô &¤d¨1£g¨t¯v©v°d¸4À¹6Ð/BÔCÜ%¤c¨$£iÜ&)¨$¯)©)²A°t¸DÀ¹F°{°NÑ*CÓ&DöFñ3	FrZ   c                 óè  — t        j                  dg«      }t        j                  g «      }t        ||d¬«      }|j                  dk(  sJ ‚t	        ||«       t        ||dd¬«      \  }}|j                  dk(  sJ ‚|j                  dk(  sJ ‚t	        ||«       t	        |t        d	gg«      «       t        ||d
d¬«      \  }}|j
                  dk(  sJ ‚|j                  dk(  sJ ‚|j                  dk(  sJ ‚y)zSee gh-20075rl  TrÙ  rE   r§   r†   r¥  rL   rj  rf   )r³   r   r   rˆ   r»   N)rN   r,   r$   rH  r   rÈ   r8   )ru   rv   r°   Úxr3  s        rX   Útest_eigh_tridiagonal_1x1z,TestEigTridiagonal.test_eigh_tridiagonal_1x1Ì  sÝ   € ä�H‰H�d�VÓˆÜ�H‰H�R‹LˆÜ˜Q °Ô5ˆØ�v‰v˜Š{Ðˆ{Ü˜˜1ÔÜ  1¨S¸vÔF‰ˆˆ1Ø�v‰v˜Š{Ðˆ{Ø�v‰v˜Š{Ðˆ{Ü˜˜1ÔÜ˜œ5 2 $ ›=Ô)ä  1¨S¸wÔG‰ˆˆ1Ø�v‰v˜Š{Ðˆ{Ø�w‰w˜$ŠÐˆØ�w‰w˜&Ò Ð Ñ rZ   N)	rŽ   r�   r�   rg  rà  ré  r÷  rù  rü  r–   rZ   rX   rÞ  rÞ  ^  s$   „ òò ò8ò HòD(FóT!rZ   rÞ  c                   ó4  — e Zd Zd„ Zd„ Zd„ Zd„ Zeej                  j                  d«      d„ «       «       Zej                  j                  de«      ej                  j                  dd	«      d
„ «       «       Zej                  j                  dd	«      d„ «       Zej                  j                  dd«      ej                  j                  dd«      d„ «       «       Zd„ Zej                  j                  deeej*                  eej.                  g«      d„ «       Zy)ÚTestEighc           	      óÔ  — t        t        t        t        j                  ddg«      «       t        t        t        t        j                  ddg«      t        j                  ddg«      «       t        t        t        t        j                  ddg«      t        j                  ddg«      «       t        t        t        t        j                  ddg«      t        j                  ddg«      d¬«       t        t        t        t        j                  ddg«      t        j                  ddg«      ddgddg¬«       t        t        t        t        j                  ddg«      t        j                  ddg«      ddg¬«       t        t        t        t        j                  ddg«      t        j                  ddg«      d	dg¬«       t        t        t        t        j                  ddg«      t        j                  ddg«      ddg¬«       t        t        t        t        j                  ddg«      t        j                  ddg«      ddg¬
«       t        t        t        t        j                  ddg«      d¬«       t        t        t        t        j                  ddg«      d d¬«       t        t        t        t        j                  ddg«      t        j                  ddg«      d¬«       t        t        t        t        j                  ddg«      t        j                  ddg«      dddg¬«       t        t        t        t        j                  ddg«      t        j                  ddg«      dddg¬«       y )NrE   rL   rm   r;  )Útype)Úsubset_by_valueÚsubset_by_indexr   ©r  r³   ©r  Úwrong©rô  ÚgvxÚevrÚgvd)rô  r  )r  r  r   rN   rÇ   rf  s    rX   Útest_wrong_inputszTestEigh.test_wrong_inputsà  sT  € ä”j¤$¬¯©°°A°«Ô8ä”j¤$¬¯©°°A°«¼¿¹À!ÀQÀ»ÔIä”j¤$¬¯©°°A°«¼¿¹À!ÀQÀ»ÔIä”j¤$¬¯©°°A°«¼¿¹À!ÀQÀ»Øõ	ô 	”j¤$¬¯©°°A°«¼¿¹À!ÀQÀ»Ø'(¨! f¸qÀ!¸fõ	Fô 	”j¤$¬¯©°°A°«¼¿¹À!ÀQÀ»Ø'(¨! fõ	.ô 	”j¤$¬¯©°°A°«¼¿¹À!ÀQÀ»Ø')¨1 gõ	/ô 	”j¤$¬¯©°°A°«¼¿¹À!ÀQÀ»Ø'(¨! fõ	.ô 	”j¤$¬¯©°°A°«¼¿¹À!ÀQÀ»Ø'(¨! fõ	.ô 	”j¤$¬¯©°°A°«ÀÕHä”j¤$¬¯©°°A°«¸ÀeÕLä”j¤$¬¯©°°A°«¼¿¹À!ÀQÀ»Ø"õ	$ô 	”j¤$¬¯©°°A°«¼¿¹À!ÀQÀ»Ø"°Q¸°Fõ	<ä”j¤$¬¯©°°A°«¼¿¹À!ÀQÀ»Ø"°Q¸°Fö	<rZ   c           	      ó„   — t        t        t        t        j                  ddg«      t        j                  ddg«      «       y )Nrm   )r  r'   r   rN   rÇ   rf  s    rX   Útest_nonpositive_bzTestEigh.test_nonpositive_b  s(   € Ü”k¤4¬¯©°!°Q°«¼"¿'¹'À1ÀaÀ&»/ÕJrZ   c                 ó’  — t        t        «      D ]µ  \  }}t        d|¬«      }t        |ddg¬«      \  }}t	        |j
                  d   t        |«      «       t        |dkD  |dk  z  «      sJ ‚t        dd|¬«      }t        ||ddg¬«      \  }}t	        |j
                  d   t        |«      «       t        |dkD  |dk  z  «      rŒµJ ‚ y )	Né   r‡   r³   rL   r  rE   T)rU   rV   )Ú	enumerateÚDTYPESrY   r   r   r8   r_   r¬   )ru   Úindr„   rv   rw   rf   r°   s          rX   Útest_value_subsetszTestEigh.test_value_subsets
  sÀ   € Ü ¤Ó(ò 
	+‰GˆC�ä(¨°2Ô6ˆAÜ˜¨B°¨7Ô3‰DˆAˆqÜ˜Ÿ™ ™¤S¨£VÔ,Ü˜˜B™ 1 q¡5Ñ)Ô*Ð*Ð*ä(¨°DÀÔCˆAÜ˜˜1¨r°1¨gÔ6‰DˆAˆqÜ˜Ÿ™ ™¤S¨£VÔ,Ü˜˜B™ 1 q¡5Ñ)Õ*Ð*Ð*ñ
	+rZ   c                 ó‚   — t        ddgddgg«      }t        ddgddgg«      }t        |«      \  }}t        ||«      \  }}y )NrE   rL   é   rm   ro   )r,   r   )ru   rv   r°   rw   Úzs        rX   Útest_eigh_integerzTestEigh.test_eigh_integer  sL   € Ü�A�q�6˜A˜q˜6Ð"Ó#ˆÜ�A�q�6˜A˜q˜6Ð"Ó#ˆÜ�A‹w‰ˆˆ1Ü�A�q‹z‰ˆ‰1rZ   zignore::DeprecationWarningc                 óÜ   — dd l }|j                  j                  d«      j                  «       }t	        j
                  |«      }t        t        t        |«       t        t        t        |«       y )Nr   rL   )	Úscipy.sparseÚsparseÚ	eye_arrayÚtocscrN   Ú
atleast_2dr  r  r   )ru   Úscipyrv   r°   s       rX   Útest_eigh_of_sparsezTestEigh.test_eigh_of_sparse  sJ   € ó 	Ø�L‰L×"Ñ" 1Ó%×+Ñ+Ó-ˆÜ�M‰M˜!ÓˆÜ”j¤$¨Ô*Ü”j¤$¨Õ*rZ   Údtype_rô  )r�  Úevdr  Úevxc                 ó®   — t        d|¬«      }t        ||¬«      \  }}t        ||z  ||z  z
  ddt        j                  |«      j
                  z  d¬«       y )Nr  )rT   rV   r  r©   éè  ©rÂ   rÁ   )rY   r   r   rN   ÚfinfoÚeps)ru   rô  r  rv   rw   rf   s         rX   Útest_various_drivers_standardz&TestEigh.test_various_drivers_standard'  sR   € ô % r°Ô8ˆÜ�A˜fÔ%‰ˆˆ1Ü˜˜A™  Q¡™¨Ø!¤"§(¡(¨6Ó"2×"6Ñ"6Ñ6Øö	!rZ   c                 ó  — t        dgg|¬«      \  }}t        |t        dg«      d¬«       t        |t        dgg«      d¬«       t        dgg|¬«      \  }}t        |t        dg«      d¬«       t        |t        dgg«      d¬«       y )NrE   r  rj  çVçž¯Ò<r+  rK   r   )r   r   r,   )ru   rô  rw   rf   s       rX   Útest_1x1_lworkzTestEigh.test_1x1_lwork0  sx   € ä�a�S�E &Ô)‰ˆˆ1Ü˜œ5 " ›;¨UÕ3Ü˜œ5 2 $ ›=¨uÕ5ô �b�T�F 6Ô*‰ˆˆ1Ü˜œ5 ! ›:¨EÕ2Ü˜œ5 2 $ ›=¨uÖ5rZ   r   rl   )Úgvr	  r  c                 ó<  — t        j                  d«      }t        d«      }t        dd¬«      }t        ||||¬«      \  }}|dk(  rt	        ||z  |||z  z  z
  d|d¬«       y |d	k(  rt	        ||z  |z  ||z  z
  d|d¬«       y t	        ||z  |z  ||z  z
  d|d¬«       y )
Ng     ˆ³@r  T)rU   )rv   r°   rô  r   rE   r©   r$  rL   )rN   ÚspacingrY   r   r   )ru   rô  r   rÂ   rv   r°   rw   rf   s           rX   Ú test_various_drivers_generalizedz)TestEigh.test_various_drivers_generalized;  s§   € ô �z‰z˜%Ó ˆÜ$ RÓ(ˆÜ$ R°Ô5ˆÜ�a˜1 V°$Ô7‰ˆˆ1Ø�1Š9Ü˜A ™E A q¨1¡u¡IÑ-¨r¸À2ÖFØ�QŠYÜ˜A ™E A™I¨¨A©Ñ-¨r¸À2ÖFä˜A ™E A™I¨¨A©Ñ-¨r¸À2ÖFrZ   c                 óz  — t        d«      }t        |ddg¬«      }t        t        |«      d«       t        |ddg¬«      }t        t        |«      d«       t	        ||«       t        j                  g d¢«      }t        |ddg¬«      }t        t        |«      d«       t	        |t        j                  dd	g«      «       y )
Nro   rE   rL   r  )rE   ç333333ó?çÍÌÌÌÌÌô?ç      ø?rL   gffffffö?r  r0  r1  )rY   r   r   r_   r   rN   r-   r,   )ru   rv   rw   Úw2r°   Úw3s         rX   Útest_eigvalsh_new_argszTestEigh.test_eigvalsh_new_argsI  s–   € Ü$ QÓ'ˆÜ�Q¨¨A¨Ô/ˆÜ”S˜“V˜QÔä�a¨!¨Q¨Ô0ˆÜ”S˜“W˜aÔ Ü˜˜2Ôä�G‰GÒ)Ó*ˆÜ�a¨!¨S¨Ô2ˆÜ”S˜“W˜aÔ Ü˜œBŸH™H c¨3 ZÓ0Õ1rZ   r„   c                 óô  — t        j                  d|¬«      }t        |«      \  }}t        t        j                  d|¬«      «      \  }}|j                  dk(  sJ ‚|j
                  |j
                  k(  sJ ‚|j                  dk(  sJ ‚|j
                  |j
                  k(  sJ ‚t        |d¬«      }t        |t        j                  d«      «       |j                  dk(  sJ ‚|j
                  |j
                  k(  sJ ‚y )Nr†   r‡   rL   rˆ   TrÙ  )rN   rŒ   r   r>   r8   rV   r   )ru   r„   rv   rw   rf   r6  rÜ  s          rX   r�   zTestEigh.test_emptyW  sÊ   € ä�H‰H�V 2Ô&ˆÜ�A‹w‰ˆˆ1äœŸ™˜q¨Ô+Ó,‰ˆˆSà�w‰w˜$ŠÐˆØ�w‰w˜#Ÿ)™)Ò#Ð#Ð#à�w‰w˜&Ò Ð Ð Ø�w‰w˜#Ÿ)™)Ò#Ð#Ð#ä� Ô&ˆÜ˜œ2Ÿ8™8 D›>Ô*à�w‰w˜$ŠÐˆØ�w‰w˜#Ÿ)™)Ò#Ð#Ñ#rZ   N)rŽ   r�   r�   r
  r  r  r  rC   r‘   r’   r/  r  r“   r  r'  r*  r.  r5  r^   r”   rN   r3   r•   r4   r�   r–   rZ   rX   rþ  rþ  ß  s*  „ ò$<òLKò+òð Ø‡[�[×ÑÐ <Ó=ñ+ó >ó ð+ð ‡[�[×Ñ˜X vÓ.Ø‡[�[×Ñ˜XÐ'BÓCñ!ó Dó /ð!ð ‡[�[×Ñ˜XÐ'BÓCñ6ó Dð6ð ‡[�[×Ñ˜V YÓ/Ø‡[�[×Ñ˜XÐ';Ó<ñ
Gó =ó 0ð
Gò2ð ‡[�[×Ñ˜T C¨°·
±
¸GÀRÇ\Á\Ð#RÓSñ$ó Tñ$rZ   rþ  c            
       óà  — e 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ej                   j#                  e d¬«      ej                   j&                  d„ «       «       Zej                   j+                  dg d¢«      ej                   j+                  dg d¢«      ej                   j+                  de«      d„ «       «       «       Zej                   j+                  deeej6                  eej:                  g«      ej                   j+                  dg d¢«      d„ «       «       Zej                   j+                  deeeg«      ej                   j+                  dddg«      ej                   j+                  dddg«      ej                   j+                  d d!d"g«      ej                   j+                  d#d!d"g«      ej                   j+                  d$d%d&g«      d'„ «       «       «       «       «       «       Zy())ÚTestSVD_GESDDÚgesddc                 óh   — t        t        t        dggd¬«       t        t        t        dggd¬«       y )Nrj  rå  rç  )r  r`   r   r  rf  s    rX   ré  zTestSVD_GESDD.test_degeneratem  s&   € Ü”i¤¨ t f¸BÕ?Ü”j¤#¨¨ v¸UÖCrZ   c                 óÊ  — g d¢g d¢g d¢g}dD ]Ó  }t        ||| j                  ¬«      \  }}}t        |j                  |z  t	        d«      «       t        |j                  |z  t	        d«      «       t        |j                  d   |j                  d   f|j                  j                  «      }t        t        |«      «      D ]  }||   |||f<   Œ t        ||z  |z  |«       ŒÕ y )Nrl   ©rE   r  rm   rn   ©TF©Úfull_matricesræ  rm   r   ©r   ræ  r   rR   r>   r1   r8   rV   Úcharr¢   r_   ©ru   rv   r?  rÆ  ÚsÚvhÚsigmar§   s           rX   ry   zTestSVD_GESDD.test_simpleq  sÉ   € Úš
¢IÐ.ˆØ*ò 	9ˆMÜ˜1¨MØ)-×);Ñ);ô=‰HˆAˆq�"ä% a§c¡c¨A¡g¬s°1«vÔ6Ü% b§d¡d¨R¡i´°Q³Ô8Ü˜1Ÿ7™7 1™: r§x¡x°¡{Ð3°Q·W±W·\±\ÓBˆEÜœ3˜q›6“]ò #�Ø ™d��a˜�d’ð#ä% a¨%¡i°"¡n°aÕ8ñ	9rZ   c                 óÊ  — g d¢g d¢g d¢g}dD ]Ó  }t        ||| j                  ¬«      \  }}}t        |j                  |z  t	        d«      «       t        |j                  |z  t	        d«      «       t        |j                  d   |j                  d   f|j                  j                  «      }t        t        |«      «      D ]  }||   |||f<   Œ t        ||z  |z  |«       ŒÕ y )Nrl   rn   r=  r>  rm   r   r@  rB  s           rX   Útest_simple_singularz"TestSVD_GESDD.test_simple_singular}  sÉ   € Úš	¢9Ð-ˆØ*ò 	9ˆMÜ˜1¨MØ)-×);Ñ);ô=‰HˆAˆq�"ä% a§c¡c¨A¡g¬s°1«vÔ6Ü% b§d¡d¨R¡i´°Q³Ô8Ü˜1Ÿ7™7 1™: r§x¡x°¡{Ð3°Q·W±W·\±\ÓBˆEÜœ3˜q›6“]ò #�Ø ™d��a˜�d’ð#ä% a¨%¡i°"¡n°aÕ8ñ	9rZ   c                 óš  — g d¢g d¢g}dD ]¾  }t        ||| j                  ¬«      \  }}}t        |j                  |z  t	        |j
                  d   «      «       t        |j
                  d   |j
                  d   f|j                  j                  «      }t        t        |«      «      D ]  }||   |||f<   Œ t        ||z  |z  |«       ŒÀ y )Nrl   ©r;  ro   rp   r=  r>  r   ©r   ræ  r   rR   r>   r8   r1   rV   rA  r¢   r_   rB  s           rX   Útest_simple_underdetz"TestSVD_GESDD.test_simple_underdet‰  s¹   € Úš	Ð"ˆØ*ò 	9ˆMÜ˜1¨MØ)-×);Ñ);ô=‰HˆAˆq�"ä% a§c¡c¨A¡g¬s°1·7±7¸1±:«Ô?Ü˜1Ÿ7™7 1™: r§x¡x°¡{Ð3°Q·W±W·\±\ÓBˆEÜœ3˜q›6“]ò #�Ø ™d��a˜�d’ð#ä% a¨%¡i°"¡n°aÕ8ñ	9rZ   c                 óä  — ddgddgddgg}dD ]à  }t        ||| j                  ¬«      \  }}}t        |j                  |z  t	        |j
                  d   «      «       t        |j                  |z  t	        d«      «       t        |j
                  d   |j
                  d   f|j                  j                  «      }t        t        |«      «      D ]  }||   |||f<   Œ t        ||z  |z  |«       Œâ y )	NrE   rL   r;  ro   rm   r=  r>  r   rJ  rB  s           rX   Útest_simple_overdetz!TestSVD_GESDD.test_simple_overdet”  sÝ   € Ø�ˆV�a˜�V˜a ˜VÐ$ˆØ*ò 	9ˆMÜ˜1¨MØ)-×);Ñ);ô=‰HˆAˆq�"ä% a§c¡c¨A¡g¬s°1·7±7¸1±:«Ô?Ü% b§d¡d¨R¡i´°Q³Ô8Ü˜1Ÿ7™7 1™: r§x¡x°¡{Ð3°Q·W±W·\±\ÓBˆEÜœ3˜q›6“]ò #�Ø ™d��a˜�d’ð#ä% a¨%¡i°"¡n°aÕ8ñ	9rZ   c           
      ó¨  — t         j                  j                  d«      }d}d}t        d«      D �]   }|j                  ||g«      |j                  ||g«      fD ]ô  }dD ]í  }t	        ||| j
                  ¬«      \  }}}	t        |j                  |z  t        |j                  d   «      «       t        |	|	j                  z  t        |	j                  d   «      «       t        |j                  d   |	j                  d   f|j                  j                  «      }
t        t        |«      «      D ]  }||   |
||f<   Œ t        ||
z  |	z  |«       Œï Œö �Œ# y )	Nr  r  rë   rm   r=  r>  rE   r   )rN   rO   r  r¢   r   ræ  r   rR   r>   r8   r1   rV   rA  r_   )ru   rc   rT   Úmr§   rv   r?  rÆ  rC  rD  rE  s              rX   Útest_randomzTestSVD_GESDD.test_random   s4  € Ü�i‰i×#Ñ# DÓ)ˆØˆØˆÜ�q“ó 
	AˆAØ—j‘j ! Q Ó(¨#¯*©*°a¸°VÓ*<Ð=ò 	A�Ø%2ò A�MÜ" 1°MØ15×1CÑ1Cô E‘H�A�q˜"ä-¨a¯c©c°A©g´s¸1¿7¹7À1¹:³ÔGÜ-¨b°2·4±4©i¼¸R¿X¹XÀa¹[Ó9IÔJÜ! 1§7¡7¨1¡:¨r¯x©x¸©{Ð";¸Q¿W¹W¿\¹\ÓJ�EÜ"¤3 q£6›]ò +˜Ø&'¨¡d˜˜a ˜dšð+ä-¨a°%©i¸"©n¸aÕ@ñAò	Añ
	ArZ   c                 ó:  — g d¢g d¢g d¢g}dD �]
  }t        ||| j                  ¬«      \  }}}t        |j                  «       j                  |z  t        |j                  d   «      «       t        |j                  «       j                  |z  t        |j                  d   «      «       t        |j                  d   |j                  d   f|j                  j                  «      }t        t        |«      «      D ]  }||   |||f<   Œ t        ||z  |z  |«       �Œ y )Nrl   )rE   y               @rm   rn   r=  r>  rE   r   )r   ræ  r   rQ   rR   r>   r8   r1   rV   rA  r¢   r_   rB  s           rX   r   z!TestSVD_GESDD.test_simple_complex°  sç   € Úš
¢IÐ.ˆØ*ó 	9ˆMÜ˜1¨MØ)-×);Ñ);ô=‰HˆAˆq�"ä% a§f¡f£h§j¡j°1¡n´c¸!¿'¹'À!¹*³oÔFÜ% b§g¡g£i§k¡k°BÑ&6¼¸B¿H¹HÀQ¹KÓ8HÔIÜ˜1Ÿ7™7 1™: r§x¡x°¡{Ð3°Q·W±W·\±\ÓBˆEÜœ3˜q›6“]ò #�Ø ™d��a˜�d’ð#ä% a¨%¡i°"¡n°aÖ8ñ	9rZ   c           
      ó¾  — t         j                  j                  d«      }d}d}t        d«      D �]+  }dD �]"  }|j                  ||g«      |j                  ||g«      fD ]ö  }|d|j                  t	        |j
                  «      «      z  z   }t        ||| j                  ¬«      \  }}}	t        |j                  «       j                  |z  t        |j
                  d   «      «       t        |j
                  d   |	j
                  d	   f|j                  j                  «      }
t        t        |«      «      D ]  }||   |
||f<   Œ t        ||
z  |	z  |«       Œø �Œ% �Œ. y )
Nr  r  rë   rm   r=  rK   r>  rE   r   )rN   rO   r  r¢   Úlistr8   r   ræ  r   rQ   rR   r>   r1   rV   rA  r_   )ru   rc   rT   rO  r§   r?  rv   rÆ  rC  rD  rE  s              rX   Útest_random_complexz!TestSVD_GESDD.test_random_complex¼  s@  € Ü�i‰i×#Ñ# DÓ)ˆØˆØˆÜ�q“ó 	AˆAØ!.ó A�ØŸ*™* a¨ VÓ,¨c¯j©j¸!¸Q¸Ó.@ÐAò A�AØ˜B˜sŸz™z¬$¨q¯w©w«-Ó8Ñ8Ñ8�AÜ" 1°MØ15×1CÑ1Cô E‘H�A�q˜"ä-¨a¯f©f«h¯j©j¸1©nÜ.1°!·'±'¸!±*«oô?ô
 " 1§7¡7¨1¡:¨r¯x©x¸©{Ð";¸Q¿W¹W¿\¹\ÓJ�EÜ"¤3 q£6›]ò +˜Ø&'¨¡d˜˜a ˜dšð+ä-¨a°%©i¸"©n¸aÕ@òAòAñ	ArZ   c                 óH  — t         j                  j                  d«      }g d¢}|D ]z  }t         j                  t         j                  t         j
                  t         j                  fD ]7  } |j                  |Ž j                  |«      }t        || j                  ¬«       Œ9 Œ| y )Nr  ))rð   r÷   )rï   é2   )é<   r  rå  )rN   rO   r  r3   r­   r4   rª   rP   rS   r   ræ  )ru   rc   ÚsizesÚszr„   rv   s         rX   Útest_crash_1580zTestSVD_GESDD.test_crash_1580Ð  s|   € Ü�i‰i×#Ñ# DÓ)ˆÚ/ˆØò 	9ˆBÜ—z‘z¤2§:¡:¬r¯|©|¼R¿]¹]ÐKò 9�Ø�C—H‘H˜b�M×(Ñ(¨Ó,�ä�A T×%7Ñ%7Ö8ñ9ñ	9rZ   c                 ó¼  — g d¢g d¢g d¢g}t        |d| j                  ¬«      \  }}}t        |j                  |z  t	        d«      «       t        |j                  |z  t	        d«      «       t        |j                  d   |j                  d   f|j                  j                  «      }t        t        |«      «      D ]  }||   |||f<   Œ t        ||z  |z  |«       y )Nrl   r<  rn   F)r‚   ræ  rm   r   r@  )ru   rv   rÆ  rC  rD  rE  r§   s          rX   r  zTestSVD_GESDD.test_check_finiteÙ  s·   € Úš
¢IÐ.ˆÜ�q u¸D×<NÑ<NÔO‰ˆˆ1ˆbÜ! !§#¡#¨¡'¬3¨q«6Ô2Ü! "§$¡$¨¡)¬S°«VÔ4Ü�q—w‘w˜q‘z 2§8¡8¨A¡;Ð/°·±·±Ó>ˆÜ”s˜1“v“ò 	ˆAØ˜A™$ˆE�!�Q�$ŠKð	ä! ! e¡)¨b¡.°!Õ4rZ   c                 ót   — t        j                  g d¢g d¢g d¢g d¢g«      }t        || j                  ¬«       y )N)çKÚ}\UUÅ?ç“vWUUå?r]  r©   r©   r©   )r©   r]  r^  r]  r©   r©   )r©   r©   r]  r^  r]  r©   )r©   r©   r©   r]  r^  r]  rå  )rN   r,   r   ræ  )ru   r°   s     rX   Útest_gh_5039zTestSVD_GESDD.test_gh_5039ã  s6   € ô �H‰HÚ=Ú=Ú=Ú=ð?ó@ˆô
 	ˆA˜T×/Ñ/Ö0rZ   z64-bit LAPACK required©Úreasonc                 óÞ   — t        d¬«       t        j                  ddgt        j                  ¬«      }d|d<   t	        |d¬«      \  }}}t        |d	   d
«       t        |d   |d   z  d
«       y )NihB  ©Úfree_mbrE   l        r‡   rè  F©r?  r   rj  r†   )rA   rN   r1   r3   r   r   )ru   rW   rÆ  rC  rD  s        rX   Útest_large_matrixzTestSVD_GESDD.test_large_matrixô  sd   € ô 	 %Õ(Ü�H‰H�a˜�Z¤r§z¡zÔ2ˆØˆˆ%‰Ü�q¨Ô.‰ˆˆ1ˆbÜ˜˜!™˜cÔ"Ü˜˜$™ " U¡)Ñ+¨SÕ1rZ   rO  ©r   rE   rL   rT   rV   c                 óð  — t        j                  ||f|¬«      }t        ||«      }|j                  j                  }|dv r|j                  «       n|}t        |«      \  }}	}
t        |j                  ||f«       t        |j                  |«       t        |	j                  |f«       t        |	j                  t        j                  |«      «       t        |
j                  ||f«       t        |
j                  |«       t        |d¬«      \  }}	}
t        |j                  ||f«       t        |j                  |«       t        |	j                  |f«       t        |	j                  t        j                  |«      «       t        |
j                  ||f«       t        |
j                  |«       t        |d¬«      }	t        |	j                  |f«       t        |	j                  t        j                  |«      «       y )Nr‡   ÚFDFre  ©Ú
compute_uv)	rN   r1   ÚminrV   rA  Úlowerr   r   r8   )ru   rO  rT   rV   rv   r  ÚdcharÚ
real_dcharrÆ  rC  rf   s              rX   Útest_shape_dtypezTestSVD_GESDD.test_shape_dtypeþ  se  € ô �H‰H�a˜�V 5Ô)ˆÜ��1‹IˆØ—‘—‘ˆØ&+¨t¡m�U—[‘[”]¸ˆ
ä�a“&‰ˆˆ1ˆaÜ�Q—W‘W˜q !˜fÔ%Ü�Q—W‘W˜eÔ$Ü�Q—W‘W˜q˜dÔ#Ü�Q—W‘WœbŸh™h zÓ2Ô3Ü�Q—W‘W˜q !˜fÔ%Ü�Q—W‘W˜eÔ$ä�a uÔ-‰ˆˆ1ˆaÜ�Q—W‘W˜q !˜fÔ%Ü�Q—W‘W˜eÔ$Ü�Q—W‘W˜q˜dÔ#Ü�Q—W‘WœbŸh™h zÓ2Ô3Ü�Q—W‘W˜q !˜fÔ%Ü�Q—W‘W˜eÔ$ä�˜eÔ$ˆÜ�Q—W‘W˜q˜dÔ#Ü�Q—W‘WœbŸh™h zÓ2Õ3rZ   r„   ©rO  rT   ©r†   rž   r‹   c                 ó  — t        j                  d|¬«      }t        |«      \  }}}t        j                  ||f|¬«      }t        |«      \  }	}
}t	        |	t        j
                  |«      «       t	        |
t        j                  d«      «       t	        |t        j
                  |«      «       |	j                  |j                  k(  sJ ‚|j                  |j                  k(  sJ ‚|
j                  |j                  k(  sJ ‚t        |d¬«      \  }	}
}t	        |	t        j                  |df«      «       t	        |
t        j                  d«      «       t	        |t        j                  d|f«      «       |	j                  |j                  k(  sJ ‚|j                  |j                  k(  sJ ‚|
j                  |j                  k(  sJ ‚t        |d¬«      }
t	        |
t        j                  d«      «       |
j                  |j                  k(  sJ ‚y )Nrm   r‡   rˆ   Fre  r   rj  )rN   r>   r   rŒ   r   ÚidentityrV   )ru   r„   rO  rT   Úa0Úu0Ús0r¤   rv   rÆ  rC  rf   s               rX   r�   zTestSVD_GESDD.test_empty  s†  € ô �V‰V�A˜RÔ ˆÜ˜“W‰
ˆˆB�ä�H‰H�a˜�V 2Ô&ˆÜ�a“&‰ˆˆ1ˆaÜ˜œ2Ÿ;™; q›>Ô*Ü˜œ2Ÿ8™8 D›>Ô*Ü˜œ2Ÿ;™; q›>Ô*à�w‰w˜"Ÿ(™(Ò"Ð"Ð"Ø�w‰w˜"Ÿ(™(Ò"Ð"Ð"Ø�w‰w˜"Ÿ(™(Ò"Ð"Ð"ä�a uÔ-‰ˆˆ1ˆaÜ˜œ2Ÿ8™8 Q¨ FÓ+Ô,Ü˜œ2Ÿ8™8 D›>Ô*Ü˜œ2Ÿ8™8 Q¨ FÓ+Ô,à�w‰w˜"Ÿ(™(Ò"Ð"Ð"Ø�w‰w˜"Ÿ(™(Ò"Ð"Ð"Ø�w‰w˜"Ÿ(™(Ò"Ð"Ð"ä�˜eÔ$ˆÜ˜œ2Ÿ8™8 D›>Ô*à�w‰w˜"Ÿ(™(Ò"Ð"Ñ"rZ   rD  rE  rF  rG  rH  rL   rm   rI  TFr?  Úmn)rm   ro   )ro   rm   c                 ó´  — |\  }}t        j                  ||z  «      j                  ||«      }	|	j                  ||¬«      }	|dk(  rt        j                  |	d|	z  g«      }	|	j                  «       }
t        |	| j                  ||d¬«      \  }}}|rt        |||«      }nQ|dk(  rt        j                  |«      }n6t        j                  |D �cg c]  }t        j                  |«      ‘Œ c}«      }t        ||z  |z  |
d¬«       |xr5 |	j                  t        k7  xr  |	j                  dk(  xr |	j                  d   }|	|
k(  j                  «       |k7  sJ ‚y c c}w )	NrK  rm   rL   T)ræ  r?  rI  rk  çê-�™—q=r+  rM  )rN   r2   r  rS   rN  r{   r   ræ  r   r-   r   rV   r^   rH  rO  r¬   )ru   rD  rE  rH  rI  r?  rx  rO  rT   rv   rP  rÆ  rC  rD  Údiag_srû  rQ  s                    rX   Útest_overwritezTestSVD_GESDD.test_overwrite9  sE  € ð ‰ˆˆ1Ü�I‰I�a˜‘c‹N×"Ñ" 1 aÓ(ˆØ�H‰H˜4 uˆHÓ-ˆà�1Š9Ü—‘˜!˜Q˜q™S˜Ó"ˆAà—‘“ˆäØØ×,Ñ,Ø'Ø#Øô
‰ˆˆ1ˆbñ Ü˜Q  1Ó%‰Fà�qŠyÜŸ™ ›‘äŸ™°qÖ"9°!¤2§7¡7¨1¥:Ò"9Ó:�ä˜˜F™
 R™¨°UÕ;ð ò $Ø�W‰Wœ‰^ò$à�V‰V�q‰[ò$ð �G‰G�NÑ#ð	 	ð �U‘
×ÑÓ! YÒ.Ð.Ñ.ùò #:s   ÃEN) rŽ   r�   r�   ræ  ré  ry   rG  rK  rM  rP  r   rT  rZ  r  r_  r‘   r’   ÚskipifrB   Úslowrf  r“   r  rp  r^   r”   rN   r3   r•   r4   r�   r|  r–   rZ   rX   r8  r8  j  sè  „ Ø€MòDò
9ò
9ò	9ò
9òAò 
9òAò(9ò5ò1ð" ‡[�[×Ñ˜I˜Ð.FÐÓGØ‡[�[×Ññ2ó ó Hð2ð ‡[�[×Ñ˜S¢)Ó,Ø‡[�[×Ñ˜S¢)Ó,Ø‡[�[×Ñ˜W fÓ-ñ4ó .ó -ó -ð4ð4 ‡[�[×Ñ˜T C¨°·
±
¸GÀRÇ\Á\Ð#RÓSØ‡[�[×Ñ˜ZÒ)AÓBñ#ó Có Tð#ð8 ‡[�[×Ñ˜V c¨5°'Ð%:Ó;Ø‡[�[×Ñ˜W s¨C jÓ1Ø‡[�[×Ñ˜V a¨ VÓ,Ø‡[�[×Ñ˜]¨T°5¨MÓ:Ø‡[�[×Ñ˜_¨t°U¨mÓ<Ø‡[�[×Ñ˜T F¨FÐ#3Ó4ñ%/ó 5ó =ó ;ó -ó 2ó <ñ%/rZ   r8  c                   ó   — e Zd ZdZy)ÚTestSVD_GESVDÚgesvdN)rŽ   r�   r�   ræ  r–   rZ   rX   r€  r€  g  s   „ Ø�MrZ   r€  zout of memory in WASMr`  z#out of memory in 32-bit CI workflowrL   ri  zdoes not fail; is too slowc                  óÄ   — t        d¬«       t        j                  dt        j                  ¬«      } t	        t
        «      5  t        | «       d d d «       y # 1 sw Y   y xY w)Ni8J  rc  )i¿  iŠÏ  r‡   )rA   rN   rÇ   r­   r  r  r   )Údfs    rX   Útest_svd_gesdd_nosegfaultr„  m  sD   € ô ˜fÕ%Ü	‡w�wˆ}¤B§J¡JÔ/€BÜ	”zÓ	"ñ ÜˆBŒ÷÷ ñ ús   ÁAÁAc                  óÎ   — t        j                  d«      } t         j                  | d<   t        j                  t
        d¬«      5  t        | d¬«       d d d «       y # 1 sw Y   y xY w)NrL   r†   ÚNaN)ÚmatchFr�   )rN   r>   Únanr‘   r	   r  r   ©rW   s    rX   Útest_gesdd_nan_error_messagerŠ  {  sI   € Ü
�‰ˆq‹	€AÜ�f‰f€A€d�GÜ	�‰”z¨Ô	/ñ #ÜˆA˜EÕ"÷#÷ #ñ #ús   ÁAÁA$c                   óä   — e Zd Zej                  j                  deeej                  e
ej                  g«      d„ «       Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd	„ Zej                  j(                  d
„ «       Zy)ÚTestSVDValsr„   c                 ó^  — g gt        j                  d«      t        j                  d«      fD ]~  }t        j                  ||¬«      }t	        |«      }t        |t        j                  d«      «       t	        t        j                  d|¬«      «      }|j                  |j                  k(  rŒ~J ‚ y )Nr‹   ©r   rm   r‡   r   rL   )rN   rŒ   rÇ   r,   r   r   r>   rV   )ru   r„   rv   rC  rw  s        rX   r�   zTestSVDVals.test_empty„  s�   € à�”r—x‘x Ó'¬¯©°«Ð8ò 	'ˆAÜ—‘˜ "Ô%ˆAÜ˜“
ˆAÜ˜œBŸH™H Q›KÔ(äœŸ™ ¨Ô,Ó-ˆBØ—7‘7˜bŸh™hÓ&Ð&Ð&ñ	'rZ   c                 ó¬   — g d¢g d¢g d¢g}t        |«      }t        t        |«      dk(  «       t        |d   |d   cxk\  xr |d   k\  «       y c «       y )Nrl   rn   rm   r   rE   rL   ©r   r   r_   ©ru   rv   rC  s      rX   ry   zTestSVDVals.test_simpleŽ  sK   € Úš	¢9Ð-ˆÜ�A‹JˆÜ”�A“˜!‘ÔÜ��!‘˜˜!™Ö$  !¡Ñ$Õ%Ñ$Õ%rZ   c                 ó€   — g d¢g d¢g}t        |«      }t        t        |«      dk(  «       t        |d   |d   k\  «       y )Nrl   rI  rL   r   rE   r�  r‘  s      rX   rK  z TestSVDVals.test_simple_underdet”  s9   € Úš	Ð"ˆÜ�A‹JˆÜ”�A“˜!‘ÔÜ��!‘˜˜!™‘ÕrZ   c                 ó†   — ddgddgddgg}t        |«      }t        t        |«      dk(  «       t        |d   |d   k\  «       y )NrE   rL   r;  ro   rm   r   r�  r‘  s      rX   rM  zTestSVDVals.test_simple_overdetš  sG   € Ø�ˆV�a˜�V˜a ˜VÐ$ˆÜ�A‹JˆÜ”�A“˜!‘ÔÜ��!‘˜˜!™‘ÕrZ   c                 ó¬   — g d¢g d¢g d¢g}t        |«      }t        t        |«      dk(  «       t        |d   |d   cxk\  xr |d   k\  «       y c «       y )Nrl   )rE   r  ù              @rn   rm   r   rE   rL   r�  r‘  s      rX   r   zTestSVDVals.test_simple_complex   sK   € Úš¢YÐ/ˆÜ�A‹JˆÜ”�A“˜!‘ÔÜ��!‘˜˜!™Ö$  !¡Ñ$Õ%Ñ$Õ%rZ   c                 ó€   — g d¢g d¢g}t        |«      }t        t        |«      dk(  «       t        |d   |d   k\  «       y )Nrl   )r;  y              @rp   rL   r   rE   r�  r‘  s      rX   Útest_simple_underdet_complexz(TestSVDVals.test_simple_underdet_complex¦  s9   € Úš
Ð#ˆÜ�A‹JˆÜ”�A“˜!‘ÔÜ��!‘˜˜!™‘ÕrZ   c                 ó†   — ddgddgddgg}t        |«      }t        t        |«      dk(  «       t        |d   |d   k\  «       y )NrE   rL   r;  ro   r•  r   r�  r‘  s      rX   Útest_simple_overdet_complexz'TestSVDVals.test_simple_overdet_complex¬  sG   € Ø�ˆV�a˜�V˜b !˜WÐ%ˆÜ�A‹JˆÜ”�A“˜!‘ÔÜ��!‘˜˜!™‘ÕrZ   c                 ó°   — g d¢g d¢g d¢g}t        |d¬«      }t        t        |«      dk(  «       t        |d   |d   cxk\  xr |d   k\  «       y c «       y )	Nrl   rn   Fr�   rm   r   rE   rL   r�  r‘  s      rX   r  zTestSVDVals.test_check_finite²  sN   € Úš	¢9Ð-ˆÜ�A EÔ*ˆÜ”�A“˜!‘ÔÜ��!‘˜˜!™Ö$  !¡Ñ$Õ%Ñ$Õ%rZ   c                 óz   — t         j                  j                  d«      }|j                  d«      }t        |«       y )Nr  )iÜ  ið
  )rN   rO   r<  r   )ru   rc   rv   s      rX   Útest_crash_2609zTestSVDVals.test_crash_2609¸  s+   € ä�i‰i×#Ñ# DÓ)ˆØ�J‰J�|Ó$ˆä��
rZ   N)rŽ   r�   r�   r‘   r’   r“   r^   r”   rN   r3   r•   r4   r�   ry   rK  rM  r   r—  r™  r  r~  rœ  r–   rZ   rX   rŒ  rŒ  ‚  sz   „ à‡[�[×Ñ˜T C¨°·
±
¸GÀRÇ\Á\Ð#RÓSñ'ó Tð'ò&òòò&òòò&ð ‡[�[×Ññó ñrZ   rŒ  c                   ó   — e Zd Zd„ Zy)ÚTestDiagSVDc                 óH   — t        t        g d¢dd«      g d¢g d¢g d¢g«       y )N©rE   r   r   rm   r   )r   r   rf  s    rX   ry   zTestDiagSVD.test_simpleÂ  s    € Ü!¤'ª)°Q¸Ó":Ú#,ªiºÐ"Cõ	ErZ   N)rŽ   r�   r�   ry   r–   rZ   rX   rž  rž  À  s   „ óErZ   rž  c            
       ó  — e 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.„ Z0d/„ Z1d0„ Z2d1„ Z3d2„ Z4d3„ Z5d4„ Z6e7jp                  js                  d5g d6¢«      e7jp                  js                  d7g d6¢«      e7jp                  js                  d8d9d:g«      e7jp                  js                  d;e:«      d<„ «       «       «       «       Z;e7jp                  js                  d=g d>¢«      d?„ «       Z<d@„ Z=e7jp                  js                  d8d:d9g«      e7jp                  js                  dAg dB¢«      e7jp                  js                  d;e:«      dC„ «       «       «       Z>dD„ Z?e7jp                  js                  d;e:«      dE„ «       Z@eAe7jp                  js                  d;eBeCg«      e7jp                  js                  dFg dG¢«      e7jp                  js                  d8d:d9g«      e7jp                  js                  dHdIdJg«      e7jp                  js                  dAg dK¢«      dL„ «       «       «       «       «       «       ZDyM)NÚTestQRc                 ó˜   — g d¢g d¢g d¢g}t        |«      \  }}t        |j                  |z  t        d«      «       t        ||z  |«       y ©N©é   rL   rm   ©rL   rq   rm   ©ro   rm   rp   rm   ©r   r   rR   r>   ©ru   rv   ÚqÚrs       rX   ry   zTestQR.test_simpleÈ  s?   € Úš	¢9Ð-ˆÜ�!‹u‰ˆˆ1Ü! !§#¡#¨¡'¬3¨q«6Ô2Ü! ! a¡%¨Õ+rZ   c                 óÞ   — g d¢g d¢g d¢g}t        |«      \  }}g d¢}t        ||d«      \  }}t        ||z  |«       t        ||«       t        |t        d«      d«      \  }}t        ||«       y )Nr¥  r§  r¨  rl   r    rm   ©r   r   r   r>   ©ru   rv   r«  r¬  ÚcÚqcÚr2s          rX   Útest_simple_leftzTestQR.test_simple_leftÎ  sj   € Úš	¢9Ð-ˆÜ�!‹u‰ˆˆ1ÚˆÜ˜Q  6Ó*‰ˆˆBÜ! ! a¡%¨Ô,Ü! ! RÔ(Ü˜Q¤ A£¨Ó/‰ˆˆBÜ! ! RÕ(rZ   c                 óÚ   — g d¢g d¢g d¢g}t        |«      \  }}g d¢}t        ||«      \  }}t        ||z  |«       t        ||«       t        |t        d«      «      \  }}t        ||«       y )Nr¥  r§  r¨  rl   rm   r®  r¯  s          rX   Útest_simple_rightzTestQR.test_simple_rightØ  sf   € Úš	¢9Ð-ˆÜ�!‹u‰ˆˆ1ÚˆÜ˜Q Ó"‰ˆˆBÜ! ! a¡%¨Ô,Ü! ! RÔ(Ü˜Aœs 1›vÓ&‰ˆˆAÜ! ! RÕ(rZ   c                 ó¢  — t        j                  g d¢g d¢g d¢g«      }t        |d¬«      \  }}}t        t	        |«      «      }t        t        j                  |dd  |d d k  «      «       t        |j                  |z  t        d«      «       t        ||z  |d d …|f   «       t        |d d …|f   «      \  }}t        ||«       t        ||«       y )	Nr¥  r§  r¨  T©ÚpivotingrE   rœ   rm   ©
rN   r;   r   rÊ   r-   r   r¬   r   rR   r>   ©ru   rv   r«  r¬  Úpre   Úq2r²  s           rX   Útest_simple_pivotingzTestQR.test_simple_pivotingâ  s¬   € Ü�J‰Jš	¢9ªiÐ8Ó9ˆÜ�Q Ô&‰ˆˆ1ˆaÜ”�Q“‹LˆÜ”—‘�q˜˜�u  # 2 ‘Ó'Ô(Ü! !§#¡#¨¡'¬3¨q«6Ô2Ü! ! a¡%¨ª1¨a¨4©Ô1Ü�A’a˜�d‘G“‰ˆˆBÜ! ! RÔ(Ü! ! RÕ(rZ   c                 ó†   — g d¢g d¢g d¢g}t        |d¬«      \  }}}g d¢}t        ||dd«      \  }}}t        ||z  |«       y )Nr¥  r§  r¨  Tr·  rl   r    ©r   r   r   ©ru   rv   r«  r¬  Újpvtr°  r±  s          rX   Útest_simple_left_pivotingz TestQR.test_simple_left_pivotingí  sI   € Úš	¢9Ð-ˆÜ˜ DÔ)‰
ˆˆ1ˆdÚˆÜ! ! Q¨°Ó5‰ˆˆAˆtÜ! ! a¡%¨Õ,rZ   c                 ó†   — g d¢g d¢g d¢g}t        |d¬«      \  }}}g d¢}t        ||d¬«      \  }}}t        ||z  |«       y )Nr¥  r§  r¨  Tr·  rl   r¿  rÀ  s          rX   Útest_simple_right_pivotingz!TestQR.test_simple_right_pivotingô  sG   € Úš	¢9Ð-ˆÜ˜ DÔ)‰
ˆˆ1ˆdÚˆÜ! ! Q°Ô6‰ˆˆAˆtÜ! ! a¡%¨Õ,rZ   c                 ó’   — g d¢g d¢g}t        |«      \  }}t        |j                  |z  t        d«      «       t        ||z  |«       y )Nr¥  r§  rL   r©  rª  s       rX   Útest_simple_trapzTestQR.test_simple_trapû  ó=   € Úš	Ð"ˆÜ�!‹u‰ˆˆ1Ü! !§#¡#¨¡'¬3¨q«6Ô2Ü! ! a¡%¨Õ+rZ   c                 óœ  — t        j                  g d¢g d¢g«      }t        |d¬«      \  }}}t        t	        |«      «      }t        t        j                  |dd  |d d k  «      «       t        |j                  |z  t        d«      «       t        ||z  |d d …|f   «       t        |d d …|f   «      \  }}t        ||«       t        ||«       y )Nr¥  r§  Tr·  rE   rœ   rL   r¹  rº  s           rX   Útest_simple_trap_pivotingz TestQR.test_simple_trap_pivoting  sª   € Ü�J‰Jš	¢9Ð-Ó.ˆÜ�Q Ô&‰ˆˆ1ˆaÜ”�Q“‹LˆÜ”—‘�q˜˜�u  # 2 ‘Ó'Ô(Ü! !§#¡#¨¡'¬3¨q«6Ô2Ü! ! a¡%¨ª1¨a¨4©Ô1Ü�A’a˜�d‘G“‰ˆˆBÜ! ! RÔ(Ü! ! RÕ(rZ   c                 ó˜   — ddgddgddgg}t        |«      \  }}t        |j                  |z  t        d«      «       t        ||z  |«       y ©Nr¦  rL   rq   ro   rm   r©  rª  s       rX   Útest_simple_tallzTestQR.test_simple_tall  sK   € à�ˆV�a˜�V˜a ˜VÐ$ˆÜ�!‹u‰ˆˆ1Ü! !§#¡#¨¡'¬3¨q«6Ô2Ü! ! a¡%¨Õ+rZ   c                 ó¢  — t        j                  ddgddgddgg«      }t        |d¬«      \  }}}t        t	        |«      «      }t        t        j                  |dd  |d d	 k  «      «       t        |j                  |z  t        d«      «       t        ||z  |d d …|f   «       t        |d d …|f   «      \  }}t        ||«       t        ||«       y )
Nr¦  rL   rq   ro   rm   Tr·  rE   rœ   r¹  rº  s           rX   Útest_simple_tall_pivotingz TestQR.test_simple_tall_pivoting  s¸   € ä�J‰J˜˜A˜  A ¨¨A¨Ð/Ó0ˆÜ�Q Ô&‰ˆˆ1ˆaÜ”�Q“‹LˆÜ”—‘�q˜˜�u  # 2 ‘Ó'Ô(Ü! !§#¡#¨¡'¬3¨q«6Ô2Ü! ! a¡%¨ª1¨a¨4©Ô1Ü�A’a˜�d‘G“‰ˆˆBÜ! ! RÔ(Ü! ! RÕ(rZ   c                 óô   — ddgddgddgg}t        |d¬«      \  }}t        |j                  |z  t        d«      «       t        ||z  |«       t	        |j
                  d«       t	        |j
                  d	«       y )
Nr¦  rL   rq   ro   rm   Úeconomic©Úmoder:  ©rL   rL   ©r   r   rR   r>   r   r8   rª  s       rX   Útest_simple_tall_ezTestQR.test_simple_tall_e  sj   € à�ˆV�a˜�V˜a ˜VÐ$ˆÜ�!˜*Ô%‰ˆˆ1Ü! !§#¡#¨¡'¬3¨q«6Ô2Ü! ! a¡%¨Ô+Ü�Q—W‘W˜fÔ%Ü�Q—W‘W˜fÕ%rZ   c                 ó¨  — t        j                  ddgddgddgg«      }t        |dd¬«      \  }}}t        t	        |«      «      }t        t        j                  |d	d  |d d
 k  «      «       t        |j                  |z  t        d«      «       t        ||z  |d d …|f   «       t        |d d …|f   d¬«      \  }}t        ||«       t        ||«       y )Nr¦  rL   rq   ro   rm   TrÐ  ©r¸  rÒ  rE   rœ   rÑ  r¹  rº  s           rX   Útest_simple_tall_e_pivotingz"TestQR.test_simple_tall_e_pivoting(  s½   € ä�J‰J˜˜A˜  A ¨¨A¨Ð/Ó0ˆÜ�Q ¨JÔ7‰ˆˆ1ˆaÜ”�Q“‹LˆÜ”—‘�q˜˜�u  # 2 ‘Ó'Ô(Ü! !§#¡#¨¡'¬3¨q«6Ô2Ü! ! a¡%¨ª1¨a¨4©Ô1Ü�A’a˜�d‘G *Ô-‰ˆˆBÜ! ! RÔ(Ü! ! RÕ(rZ   c                 óD  — ddgddgddgg}t        |d¬«      \  }}ddg}t        ||d	«      \  }}t        ||z  |«       t        ||«       t        g d
¢«      }t        ||d	d¬«      \  }}t        ||d d z  |«       t        |t	        d«      d	«      \  }}t        ||«       y )Nr¦  rL   rq   ro   rm   rÐ  rÑ  rE   r    ©rE   rL   r   T©Úoverwrite_c©r   r   r   r,   r>   r¯  s          rX   Útest_simple_tall_leftzTestQR.test_simple_tall_left4  s¯   € Ø�ˆV�a˜�V˜a ˜VÐ$ˆÜ�!˜*Ô%‰ˆˆ1Ø�ˆFˆÜ˜Q  6Ó*‰ˆˆBÜ! ! a¡%¨Ô,Ü! ! RÔ(Ü’)ÓˆÜ˜Q  6°tÔ<‰ˆˆBÜ! ! a¨¨ e¡)¨RÔ0Ü˜Aœs 1›v vÓ.‰ˆˆAÜ! " aÕ(rZ   c                 óî   — ddgddgddgg}t        |dd¬«      \  }}}d	dg}t        ||d
d«      \  }}}t        ||«       t        ||z  |«       t        |t	        d«      d
d«      \  }}}t        ||«       y )Nr¦  rL   rq   ro   rm   rÐ  T©rÒ  r¸  rE   r    )r   r   r   r   r>   )ru   rv   r«  r¬  rÁ  r°  r±  Úkpvts           rX   Útest_simple_tall_left_pivotingz%TestQR.test_simple_tall_left_pivotingA  s‰   € Ø�ˆV�a˜�V˜a ˜VÐ$ˆÜ˜ 
°TÔ:‰
ˆˆ1ˆdØ�ˆFˆÜ! ! Q¨°Ó5‰ˆˆAˆtÜ˜4 Ô&Ü! ! a¡%¨Ô,Ü! !¤S¨£V¨V°TÓ:‰ˆˆAˆtÜ! " aÕ(rZ   c                 óÞ   — ddgddgddgg}t        |d¬«      \  }}g d¢}t        ||«      \  }}t        ||z  |«       t        ||«       t        |t        d«      «      \  }}t        ||«       y )	Nr¦  rL   rq   ro   rm   rÐ  rÑ  rl   r®  ©ru   rv   r«  r¬  r°  Úcqr²  s          rX   Útest_simple_tall_rightzTestQR.test_simple_tall_rightK  su   € Ø�ˆV�a˜�V˜a ˜VÐ$ˆÜ�!˜*Ô%‰ˆˆ1ÚˆÜ˜Q Ó"‰ˆˆBÜ! ! a¡%¨Ô,Ü! ! RÔ(Ü˜Aœs 1›vÓ&‰ˆˆAÜ! " aÕ(rZ   c                 óÖ   — ddgddgddgg}t        |dd¬«      \  }}}g d	¢}t        ||d¬
«      \  }}}t        ||z  |«       t        |t        d«      d¬
«      \  }}}t        ||«       y )Nr¦  rL   rq   ro   rm   TrÐ  r×  rl   r·  r®  ©ru   rv   r«  r¬  rÁ  r°  rå  s          rX   Útest_simple_tall_right_pivotingz&TestQR.test_simple_tall_right_pivotingU  sw   € Ø�ˆV�a˜�V˜a ˜VÐ$ˆÜ˜ D¨zÔ:‰
ˆˆ1ˆdÚˆÜ! ! Q°Ô6‰ˆˆAˆtÜ! ! a¡%¨Ô,Ü! !¤S¨£V°dÔ;‰ˆˆAˆtÜ! " aÕ(rZ   c                 óê   — g d¢g d¢g}t        |«      \  }}t        |j                  |z  t        d«      «       t        ||z  |«       t	        |j
                  d«       t	        |j
                  d«       y )N©r¦  rL   ro   r§  rL   rÓ  ©rL   rm   rÔ  rª  s       rX   Útest_simple_fatzTestQR.test_simple_fat^  sY   € âš	Ð"ˆÜ�!‹u‰ˆˆ1Ü! !§#¡#¨¡'¬3¨q«6Ô2Ü! ! a¡%¨Ô+Ü�Q—W‘W˜fÔ%Ü�Q—W‘W˜fÕ%rZ   c                 óô  — t        j                  g d¢g d¢g«      }t        |d¬«      \  }}}t        t	        |«      «      }t        t        j                  |dd  |d d k  «      «       t        |j                  |z  t        d«      «       t        ||z  |d d …|f   «       t        |j                  d«       t        |j                  d	«       t        |d d …|f   «      \  }}t        ||«       t        ||«       y )
Nrë  r§  Tr·  rE   rœ   rL   rÓ  rì  ©rN   r;   r   rÊ   r-   r   r¬   r   rR   r>   r   r8   rº  s           rX   Útest_simple_fat_pivotingzTestQR.test_simple_fat_pivotingg  sÆ   € ä�J‰Jš	¢9Ð-Ó.ˆÜ�Q Ô&‰ˆˆ1ˆaÜ”�Q“‹LˆÜ”—‘�q˜˜�u  # 2 ‘Ó'Ô(Ü! !§#¡#¨¡'¬3¨q«6Ô2Ü! ! a¡%¨ª1¨a¨4©Ô1Ü�Q—W‘W˜fÔ%Ü�Q—W‘W˜fÔ%Ü�A’a˜�d‘G“‰ˆˆBÜ! ! RÔ(Ü! ! RÕ(rZ   c                 óî   — g d¢g d¢g}t        |d¬«      \  }}t        |j                  |z  t        d«      «       t        ||z  |«       t	        |j
                  d«       t	        |j
                  d«       y )Nr¥  ©rL   rq   ro   rÐ  rÑ  rL   rÓ  rì  rÔ  rª  s       rX   Útest_simple_fat_ezTestQR.test_simple_fat_eu  s\   € âš	Ð"ˆÜ�!˜*Ô%‰ˆˆ1Ü! !§#¡#¨¡'¬3¨q«6Ô2Ü! ! a¡%¨Ô+Ü�Q—W‘W˜fÔ%Ü�Q—W‘W˜fÕ%rZ   c                 óú  — t        j                  g d¢g d¢g«      }t        |dd¬«      \  }}}t        t	        |«      «      }t        t        j                  |dd  |d d k  «      «       t        |j                  |z  t        d«      «       t        ||z  |d d …|f   «       t        |j                  d	«       t        |j                  d
«       t        |d d …|f   d¬«      \  }}t        ||«       t        ||«       y )Nr¥  rò  TrÐ  r×  rE   rœ   rL   rÓ  rì  rÑ  rï  rº  s           rX   Útest_simple_fat_e_pivotingz!TestQR.test_simple_fat_e_pivoting~  sË   € ä�J‰Jš	¢9Ð-Ó.ˆÜ�Q ¨JÔ7‰ˆˆ1ˆaÜ”�Q“‹LˆÜ”—‘�q˜˜�u  # 2 ‘Ó'Ô(Ü! !§#¡#¨¡'¬3¨q«6Ô2Ü! ! a¡%¨ª1¨a¨4©Ô1Ü�Q—W‘W˜fÔ%Ü�Q—W‘W˜fÔ%Ü�A’a˜�d‘G *Ô-‰ˆˆBÜ! ! RÔ(Ü! ! RÕ(rZ   c                 óÜ   — g d¢g d¢g}t        |d¬«      \  }}ddg}t        ||d«      \  }}t        ||z  |«       t        ||«       t        |t        d«      d«      \  }}t        ||«       y )Nr¥  rò  rÐ  rÑ  rE   rL   r    r®  r¯  s          rX   Útest_simple_fat_leftzTestQR.test_simple_fat_leftŒ  so   € Úš	Ð"ˆÜ�!˜*Ô%‰ˆˆ1Ø�ˆFˆÜ˜Q  6Ó*‰ˆˆBÜ! ! a¡%¨Ô,Ü! ! RÔ(Ü˜Aœs 1›v vÓ.‰ˆˆAÜ! " aÕ(rZ   c                 óÐ   — g d¢g d¢g}t        |dd¬«      \  }}}ddg}t        ||dd«      \  }}}t        ||z  |«       t        |t        d«      dd«      \  }}}t        ||«       y )	Nr¥  rò  rÐ  Trà  rE   rL   r    r®  rÀ  s          rX   Útest_simple_fat_left_pivotingz$TestQR.test_simple_fat_left_pivoting–  sq   € Úš	Ð"ˆÜ˜ 
°TÔ:‰
ˆˆ1ˆdØ�ˆFˆÜ! ! Q¨°Ó5‰ˆˆAˆtÜ! ! a¡%¨Ô,Ü! !¤S¨£V¨V°TÓ:‰ˆˆAˆtÜ! " aÕ(rZ   c                 óØ   — g d¢g d¢g}t        |d¬«      \  }}ddg}t        ||«      \  }}t        ||z  |«       t        ||«       t        |t        d«      «      \  }}t        ||«       y )Nr¥  rò  rÐ  rÑ  rE   rL   r®  rä  s          rX   Útest_simple_fat_rightzTestQR.test_simple_fat_rightŸ  sk   € Úš	Ð"ˆÜ�!˜*Ô%‰ˆˆ1Ø�ˆFˆÜ˜Q Ó"‰ˆˆBÜ! ! a¡%¨Ô,Ü! ! RÔ(Ü˜Aœs 1›vÓ&‰ˆˆAÜ! " aÕ(rZ   c                 óÐ   — g d¢g d¢g}t        |dd¬«      \  }}}ddg}t        ||d¬«      \  }}}t        ||z  |«       t        |t        d«      d¬«      \  }}}t        ||«       y )	Nr¥  rò  TrÐ  r×  rE   rL   r·  r®  rè  s          rX   Útest_simple_fat_right_pivotingz%TestQR.test_simple_fat_right_pivoting©  sm   € Úš	Ð"ˆÜ˜ D¨zÔ:‰
ˆˆ1ˆdØ�ˆFˆÜ! ! Q°Ô6‰ˆˆAˆtÜ! ! a¡%¨Ô,Ü! !¤S¨£V°dÔ;‰ˆˆAˆtÜ! " aÕ(rZ   c                 ó´   — g d¢g d¢g d¢g}t        |«      \  }}t        |j                  «       j                  |z  t	        d«      «       t        ||z  |«       y ©N©rm   ù      @      @ro   ©ro   rL   y       @      @©rm   rL   r  rm   )r   r   rQ   rR   r>   rª  s       rX   r   zTestQR.test_simple_complex²  sE   € Úš<ªÐ3ˆÜ�!‹u‰ˆˆ1Ü! !§&¡&£(§*¡*¨q¡.´#°a³&Ô9Ü! ! a¡%¨Õ+rZ   c                 óÆ   — g d¢g d¢g d¢g}t        |«      \  }}g d¢}t        ||d«      \  }}t        ||z  |«       t        |t        d«      d«      \  }}t        ||«       y )Nr   r  r  ©rE   rL   r  r    rm   r®  ©ru   rv   r«  r¬  r°  r±  s         rX   Útest_simple_complex_leftzTestQR.test_simple_complex_left¸  s`   € Úš<ªÐ3ˆÜ�!‹u‰ˆˆ1ÚˆÜ˜A˜q &Ó)‰ˆˆAÜ! ! a¡%¨Ô,Ü˜Aœs 1›v vÓ.‰ˆˆAÜ! ! RÕ(rZ   c                 óÂ   — g d¢g d¢g d¢g}t        |«      \  }}g d¢}t        ||«      \  }}t        ||z  |«       t        |t        d«      «      \  }}t        ||«       y )Nr   r  r  r  rm   r®  r  s         rX   Útest_simple_complex_rightz TestQR.test_simple_complex_rightÁ  s\   € Úš<ªÐ3ˆÜ�!‹u‰ˆˆ1ÚˆÜ˜A˜qÓ!‰ˆˆAÜ! ! a¡%¨Ô,Ü˜Aœs 1›vÓ&‰ˆˆAÜ! ! RÕ(rZ   c                 óD  — ddgddgddgg}t        |d¬«      \  }}d	d
g}t        ||d«      \  }}t        ||z  |«       t        ||«       t        g d¢«      }t        ||dd¬«      \  }}t        ||d d z  |«       t        |t	        d«      d«      \  }}t        ||«       y )Nr¦  y       @      @rL   rq   y      @      @rm   rÐ  rÑ  rE   ù       @       @r    rÚ  TrÛ  rÝ  r¯  s          rX   Útest_simple_tall_complex_leftz$TestQR.test_simple_tall_complex_leftÊ  s¯   € Ø�ˆY˜˜A˜  q 	Ð*ˆÜ�!˜*Ô%‰ˆˆ1Ø�ˆIˆÜ˜Q  6Ó*‰ˆˆBÜ! ! a¡%¨Ô,Ü! ! RÔ(Ü’)ÓˆÜ˜Q  6°tÔ<‰ˆˆBÜ! ! a¨¨ e¡)¨RÔ0Ü˜Aœs 1›v vÓ.‰ˆˆAÜ! " aÕ(rZ   c                 óœ   — g d¢g d¢g d¢g}t        |«      \  }}g d¢}t        ||dd¬«      \  }}t        |j                  «       |z  |«       y )Nr   r  r  r  r    T©Ú	conjugate©r   r   r   rQ   r  s         rX   Ú"test_simple_complex_left_conjugatez)TestQR.test_simple_complex_left_conjugate×  sH   € Úš<ªÐ3ˆÜ�!‹u‰ˆˆ1ÚˆÜ˜A˜q &°DÔ9‰ˆˆAÜ! !§&¡&£(¨Q¡,°Õ3rZ   c                 ó    — ddgddgddgg}t        |d¬«      \  }}ddg}t        ||d	d
¬«      \  }}t        |j                  «       |z  |«       y )Nrm   r  ro   r  rL   rÐ  rÑ  rE   r    Tr  r  r  s         rX   Ú'test_simple_complex_tall_left_conjugatez.TestQR.test_simple_complex_tall_left_conjugateÞ  s[   € Ø�ˆY˜˜D˜	 A q 6Ð*ˆÜ�!˜*Ô%‰ˆˆ1Ø�ˆIˆÜ˜A˜q &°DÔ9‰ˆˆAÜ! !§&¡&£(¨Q¡,°Õ3rZ   c                 óÀ   — g d¢g d¢g d¢g}t        |«      \  }}t        j                  g d¢«      }t        ||d¬«      \  }}t	        ||j                  «       z  |«       y )Nr   r  r  r  Tr  )r   rN   r,   r   r   rQ   r  s         rX   Ú#test_simple_complex_right_conjugatez*TestQR.test_simple_complex_right_conjugateå  sO   € Úš<ªÐ3ˆÜ�!‹u‰ˆˆ1Ü�H‰H’\Ó"ˆÜ˜A˜q¨DÔ1‰ˆˆAÜ! ! a§f¡f£h¡,°Õ3rZ   c                 óª  — t        g d¢g d¢g d¢g«      }t        |d¬«      \  }}}t        t        |«      «      }t	        t        j                  |dd  |d d k  «      «       t        |j                  «       j                  |z  t        d«      «       t        ||z  |d d …|f   «       t        |d d …|f   «      \  }}t        ||«       t        ||«       y )	Nr   r  r  Tr·  rE   rœ   rm   )r,   r   rÊ   r-   r   rN   r¬   r   rQ   rR   r>   rº  s           rX   Útest_simple_complex_pivotingz#TestQR.test_simple_complex_pivotingì  s®   € Ü’<¢ªyÐ9Ó:ˆÜ�Q Ô&‰ˆˆ1ˆaÜ”�Q“‹LˆÜ”—‘�q˜˜�u  # 2 ‘Ó'Ô(Ü! !§&¡&£(§*¡*¨q¡.´#°a³&Ô9Ü! ! a¡%¨ª1¨a¨4©Ô1Ü�A’a˜�d‘G“‰ˆˆBÜ! ! RÔ(Ü! ! RÕ(rZ   c                 ó˜   — t        g d¢g d¢g d¢g«      }t        |d¬«      \  }}}g d¢}t        ||dd«      \  }}}t        ||z  |«       y )Nr   r  r  Tr·  r  r    ©r,   r   r   r   rÀ  s          rX   Ú!test_simple_complex_left_pivotingz(TestQR.test_simple_complex_left_pivoting÷  sN   € Ü’<¢ªyÐ9Ó:ˆÜ˜ DÔ)‰
ˆˆ1ˆdÚˆÜ! ! Q¨°Ó5‰ˆˆAˆtÜ! ! a¡%¨Õ,rZ   c                 ó˜   — t        g d¢g d¢g d¢g«      }t        |d¬«      \  }}}g d¢}t        ||d¬«      \  }}}t        ||z  |«       y )Nr   r  r  Tr·  r  r  rÀ  s          rX   Ú"test_simple_complex_right_pivotingz)TestQR.test_simple_complex_right_pivotingþ  sL   € Ü’<¢ªyÐ9Ó:ˆÜ˜ DÔ)‰
ˆˆ1ˆdÚˆÜ! ! Q°Ô6‰ˆˆAˆtÜ! ! a¡%¨Õ,rZ   c                 ó
  — t         j                  j                  d«      }d}t        d«      D ]T  }|j                  ||g«      }t	        |«      \  }}t        |j                  |z  t        |«      «       t        ||z  |«       ŒV y ©Nr  r  rL   ©rN   rO   r  r¢   r   r   rR   r>   ©ru   rc   rT   r  rv   r«  r¬  s          rX   rP  zTestQR.test_random  sq   € Ü�i‰i×#Ñ# DÓ)ˆØˆÜ�q“ò 	0ˆAØ—
‘
˜A˜q˜6Ó"ˆAÜ�a“5‰DˆAˆqÜ% a§c¡c¨A¡g¬s°1«vÔ6Ü% a¨!¡e¨QÕ/ñ		0rZ   c                 óT  — t         j                  j                  d«      }d}t        d«      D ]y  }|j                  ||g«      }t	        |«      \  }}|j                  |g«      }t        ||d«      \  }}t        ||z  |«       t        |t        |«      d«      \  }}t        ||«       Œ{ y )Nr  r  rL   r    ©rN   rO   r  r¢   r   r   r   r>   ©	ru   rc   rT   r  rv   r«  r¬  r°  r±  s	            rX   Útest_random_leftzTestQR.test_random_left  sœ   € Ü�i‰i×#Ñ# DÓ)ˆØˆÜ�q“ò 	-ˆAØ—
‘
˜A˜q˜6Ó"ˆAÜ�a“5‰DˆAˆqØ—
‘
˜A˜3“ˆAÜ  1 fÓ-‰EˆB�Ü% a¨!¡e¨RÔ0Ü ¤3 q£6¨6Ó2‰EˆB�Ü% a¨Õ,ñ	-rZ   c                 óP  — t         j                  j                  d«      }d}t        d«      D ]w  }|j                  ||g«      }t	        |«      \  }}|j                  |g«      }t        ||«      \  }}t        ||z  |«       t        |t        |«      «      \  }}t        ||«       Œy y r  r"  ©	ru   rc   rT   r  rv   r«  r¬  r°  rå  s	            rX   Útest_random_rightzTestQR.test_random_right  s˜   € Ü�i‰i×#Ñ# DÓ)ˆØˆÜ�q“ò 	-ˆAØ—
‘
˜A˜q˜6Ó"ˆAÜ�a“5‰DˆAˆqØ—
‘
˜A˜3“ˆAÜ  1Ó%‰EˆB�Ü% a¨!¡e¨RÔ0Ü ¤3 q£6Ó*‰EˆB�Ü% a¨Õ,ñ	-rZ   c           	      óî  — t         j                  j                  d«      }d}t        d«      D ]Æ  }|j                  ||g«      }t	        |d¬«      \  }}}t        t        |«      «      }t        t        j                  |dd  |d d k  «      «       t        |j                  |z  t        |«      «       t        ||z  |d d …|f   «       t	        |d d …|f   «      \  }	}
t        ||	«       t        ||
«       ŒÈ y )Nr  r  rL   Tr·  rE   rœ   ©rN   rO   r  r¢   r   rÊ   r-   r   r¬   r   rR   r>   ©ru   rc   rT   r  rv   r«  r¬  r»  re   r¼  r²  s              rX   Útest_random_pivotingzTestQR.test_random_pivoting&  sÕ   € Ü�i‰i×#Ñ# DÓ)ˆØˆÜ�q“ò 		-ˆAØ—
‘
˜A˜q˜6Ó"ˆAÜ˜ TÔ*‰GˆAˆq�!Ü”D˜“G“ˆAÜ”B—F‘F˜1˜Q˜R˜5 A c r F™?Ó+Ô,Ü% a§c¡c¨A¡g¬s°1«vÔ6Ü% a¨!¡e¨Qªq°!¨t©WÔ5Ü˜š!˜Q˜$™“[‰FˆB�Ü% a¨Ô,Ü% a¨Õ,ñ		-rZ   c                 ó  — t         j                  j                  d«      }d}d}t        d«      D ]T  }|j                  ||g«      }t	        |«      \  }}t        |j                  |z  t        |«      «       t        ||z  |«       ŒV y ©Nr  éÈ   r  rL   r  ©ru   rc   rO  rT   r  rv   r«  r¬  s           rX   Útest_random_tallzTestQR.test_random_tall4  sv   € Ü�i‰i×#Ñ# DÓ)ˆàˆØˆÜ�q“ò 	0ˆAØ—
‘
˜A˜q˜6Ó"ˆAÜ�a“5‰DˆAˆqÜ% a§c¡c¨A¡g¬s°1«vÔ6Ü% a¨!¡e¨QÕ/ñ		0rZ   c                 ó\  — t         j                  j                  d«      }d}d}t        d«      D ]{  }|j                  ||g«      }t	        |d¬«      \  }}|j                  |g«      }t        ||d«      \  }	}t        ||z  |	«       t        |t        |«      d«      \  }	}t        |	|«       Œ} y )Nr  r.  r  rL   rÐ  rÑ  r    r"  )
ru   rc   rO  rT   r  rv   r«  r¬  r°  r±  s
             rX   Útest_random_tall_leftzTestQR.test_random_tall_left?  s¤   € Ü�i‰i×#Ñ# DÓ)ˆàˆØˆÜ�q“ò 	-ˆAØ—
‘
˜A˜q˜6Ó"ˆAÜ�a˜jÔ)‰DˆAˆqØ—
‘
˜A˜3“ˆAÜ  1 fÓ-‰EˆB�Ü% a¨!¡e¨RÔ0Ü ¤3 q£6¨6Ó2‰EˆB�Ü% b¨!Õ,ñ	-rZ   c                 óX  — t         j                  j                  d«      }d}d}t        d«      D ]y  }|j                  ||g«      }t	        |d¬«      \  }}|j                  |g«      }t        ||«      \  }	}t        ||z  |	«       t        |t        |«      «      \  }	}t        |	|«       Œ{ y ©Nr  r.  r  rL   rÐ  rÑ  r"  )
ru   rc   rO  rT   r  rv   r«  r¬  r°  rå  s
             rX   Útest_random_tall_rightzTestQR.test_random_tall_rightM  s    € Ü�i‰i×#Ñ# DÓ)ˆàˆØˆÜ�q“ò 	-ˆAØ—
‘
˜A˜q˜6Ó"ˆAÜ�a˜jÔ)‰DˆAˆqØ—
‘
˜A˜3“ˆAÜ  1Ó%‰EˆB�Ü% a¨!¡e¨RÔ0Ü ¤3 q£6Ó*‰EˆB�Ü% b¨!Õ,ñ	-rZ   c           	      óò  — t         j                  j                  d«      }d}d}t        d«      D ]Æ  }|j                  ||g«      }t	        |d¬«      \  }}}t        t        |«      «      }	t        t        j                  |	dd  |	d d k  «      «       t        |j                  |z  t        |«      «       t        ||z  |d d …|f   «       t	        |d d …|f   «      \  }
}t        ||
«       t        ||«       ŒÈ y )	Nr  r.  r  rL   Tr·  rE   rœ   r)  ©ru   rc   rO  rT   r  rv   r«  r¬  r»  re   r¼  r²  s               rX   Útest_random_tall_pivotingz TestQR.test_random_tall_pivoting[  sÚ   € Ü�i‰i×#Ñ# DÓ)ˆàˆØˆÜ�q“ò 		-ˆAØ—
‘
˜A˜q˜6Ó"ˆAÜ˜ TÔ*‰GˆAˆq�!Ü”D˜“G“ˆAÜ”B—F‘F˜1˜Q˜R˜5 A c r F™?Ó+Ô,Ü% a§c¡c¨A¡g¬s°1«vÔ6Ü% a¨!¡e¨Qªq°!¨t©WÔ5Ü˜š!˜Q˜$™“[‰FˆB�Ü% a¨Ô,Ü% a¨Õ,ñ		-rZ   c                 ór  — t         j                  j                  d«      }d}d}t        d«      D ]†  }|j                  ||g«      }t	        |d¬«      \  }}t        |j                  |z  t        |«      «       t        ||z  |«       t        |j                  ||f«       t        |j                  ||f«       Œˆ y r4  )
rN   rO   r  r¢   r   r   rR   r>   r   r8   r/  s           rX   Útest_random_tall_ezTestQR.test_random_tall_ek  s�   € Ü�i‰i×#Ñ# DÓ)ˆàˆØˆÜ�q“ò 	*ˆAØ—
‘
˜A˜q˜6Ó"ˆAÜ�a˜jÔ)‰DˆAˆqÜ% a§c¡c¨A¡g¬s°1«vÔ6Ü% a¨!¡e¨QÔ/Ü˜Ÿ™ 1 a &Ô)Ü˜Ÿ™ 1 a &Õ)ñ	*rZ   c           	      óX  — t         j                  j                  d«      }d}d}t        d«      D ]ù  }|j                  ||g«      }t	        |dd¬«      \  }}}t        t        |«      «      }	t        t        j                  |	dd  |	d d	 k  «      «       t        |j                  |z  t        |«      «       t        ||z  |d d …|f   «       t        |j                  ||f«       t        |j                  ||f«       t	        |d d …|f   d¬
«      \  }
}t        ||
«       t        ||«       Œû y )Nr  r.  r  rL   TrÐ  r×  rE   rœ   rÑ  )rN   rO   r  r¢   r   rÊ   r-   r   r¬   r   rR   r>   r   r8   r7  s               rX   Útest_random_tall_e_pivotingz"TestQR.test_random_tall_e_pivotingx  s  € Ü�i‰i×#Ñ# DÓ)ˆàˆØˆÜ�q“ò 	-ˆAØ—
‘
˜A˜q˜6Ó"ˆAÜ˜ T°
Ô;‰GˆAˆq�!Ü”D˜“G“ˆAÜ”B—F‘F˜1˜Q˜R˜5 A c r F™?Ó+Ô,Ü% a§c¡c¨A¡g¬s°1«vÔ6Ü% a¨!¡e¨Qªq°!¨t©WÔ5Ü˜Ÿ™ 1 a &Ô)Ü˜Ÿ™ 1 a &Ô)Ü˜š!˜Q˜$™ jÔ1‰FˆB�Ü% a¨Ô,Ü% a¨Õ,ñ	-rZ   c                 ó  — t         j                  j                  d«      }d}d}t        d«      D ]T  }|j                  ||g«      }t	        |«      \  }}t        |j                  |z  t        |«      «       t        ||z  |«       ŒV y ©Nr  r  r.  rL   r  r/  s           rX   Útest_random_trapzTestQR.test_random_trapŠ  sv   € Ü�i‰i×#Ñ# DÓ)ˆØˆØˆÜ�q“ò 	0ˆAØ—
‘
˜A˜q˜6Ó"ˆAÜ�a“5‰DˆAˆqÜ% a§c¡c¨A¡g¬s°1«vÔ6Ü% a¨!¡e¨QÕ/ñ		0rZ   c           	      óò  — t         j                  j                  d«      }d}d}t        d«      D ]Æ  }|j                  ||g«      }t	        |d¬«      \  }}}t        t        |«      «      }	t        t        j                  |	dd  |	d d k  «      «       t        |j                  |z  t        |«      «       t        ||z  |d d …|f   «       t	        |d d …|f   «      \  }
}t        ||
«       t        ||«       ŒÈ y )	Nr  r  r.  rL   Tr·  rE   rœ   r)  r7  s               rX   Útest_random_trap_pivotingz TestQR.test_random_trap_pivoting”  sÚ   € Ü�i‰i×#Ñ# DÓ)ˆØˆØˆÜ�q“ò 		-ˆAØ—
‘
˜A˜q˜6Ó"ˆAÜ˜ TÔ*‰GˆAˆq�!Ü”D˜“G“ˆAÜ”B—F‘F˜1˜Q˜R˜5 A c r F™?Ó+Ô,Ü% a§c¡c¨A¡g¬s°1«vÔ6Ü% a¨!¡e¨Qªq°!¨t©WÔ5Ü˜š!˜Q˜$™“[‰FˆB�Ü% a¨Ô,Ü% a¨Õ,ñ		-rZ   c                 óT  — t         j                  j                  d«      }d}t        d«      D ]y  }|j                  ||g«      d|j                  ||g«      z  z   }t	        |«      \  }}t        |j                  «       j                  |z  t        |«      «       t        ||z  |«       Œ{ y ©Nr  r  rL   rK   )	rN   rO   r  r¢   r   r   rQ   rR   r>   r   s          rX   rT  zTestQR.test_random_complex£  sŽ   € Ü�i‰i×#Ñ# DÓ)ˆØˆÜ�q“ò 	0ˆAØ—
‘
˜A˜q˜6Ó" R¨¯
©
°A°q°6Ó(:Ñ%:Ñ:ˆAÜ�a“5‰DˆAˆqÜ% a§f¡f£h§j¡j°1¡n´c¸!³fÔ=Ü% a¨!¡e¨QÕ/ñ		0rZ   c                 ó®  — t         j                  j                  d«      }d}t        d«      D ]¦  }|j                  ||g«      d|j                  ||g«      z  z   }t	        |«      \  }}|j                  |g«      d|j                  |g«      z  z   }t        ||d«      \  }}t        ||z  |«       t        |t        |«      d«      \  }}t        ||«       Œ¨ y )Nr  r  rL   rK   r    r"  r#  s	            rX   Útest_random_complex_leftzTestQR.test_random_complex_left¬  sÇ   € Ü�i‰i×#Ñ# DÓ)ˆØˆÜ�q“ò 	-ˆAØ—
‘
˜A˜q˜6Ó" R¨¯
©
°A°q°6Ó(:Ñ%:Ñ:ˆAÜ�a“5‰DˆAˆqØ—
‘
˜A˜3“ " S§Z¡Z°°£_Ñ"4Ñ4ˆAÜ  1 fÓ-‰EˆB�Ü% a¨!¡e¨RÔ0Ü ¤3 q£6¨6Ó2‰EˆB�Ü% a¨Õ,ñ	-rZ   c                 óª  — t         j                  j                  d«      }d}t        d«      D ]¤  }|j                  ||g«      d|j                  ||g«      z  z   }t	        |«      \  }}|j                  |g«      d|j                  |g«      z  z   }t        ||«      \  }}t        ||z  |«       t        |t        |«      «      \  }}t        ||«       Œ¦ y rC  r"  r&  s	            rX   Útest_random_complex_rightz TestQR.test_random_complex_right¸  sÃ   € Ü�i‰i×#Ñ# DÓ)ˆØˆÜ�q“ò 	-ˆAØ—
‘
˜A˜q˜6Ó" R¨¯
©
°A°q°6Ó(:Ñ%:Ñ:ˆAÜ�a“5‰DˆAˆqØ—
‘
˜A˜3“ " S§Z¡Z°°£_Ñ"4Ñ4ˆAÜ  1Ó%‰EˆB�Ü% a¨!¡e¨RÔ0Ü ¤3 q£6Ó*‰EˆB�Ü% a¨Õ,ñ	-rZ   c           	      ó8  — t         j                  j                  d«      }d}t        d«      D ]ë  }|j                  ||g«      d|j                  ||g«      z  z   }t	        |d¬«      \  }}}t        t        |«      «      }t        t        j                  |dd  |d d k  «      «       t        |j                  «       j                  |z  t        |«      «       t        ||z  |d d …|f   «       t	        |d d …|f   «      \  }	}
t        ||	«       t        ||
«       Œí y )	Nr  r  rL   rK   Tr·  rE   rœ   )rN   rO   r  r¢   r   rÊ   r-   r   r¬   r   rQ   rR   r>   r*  s              rX   Útest_random_complex_pivotingz#TestQR.test_random_complex_pivotingÄ  sò   € Ü�i‰i×#Ñ# DÓ)ˆØˆÜ�q“ò 		-ˆAØ—
‘
˜A˜q˜6Ó" R¨¯
©
°A°q°6Ó(:Ñ%:Ñ:ˆAÜ˜ TÔ*‰GˆAˆq�!Ü”D˜“G“ˆAÜ”B—F‘F˜1˜Q˜R˜5 A c r F™?Ó+Ô,Ü% a§f¡f£h§j¡j°1¡n´c¸!³fÔ=Ü% a¨!¡e¨Qªq°!¨t©WÔ5Ü˜š!˜Q˜$™“[‰FˆB�Ü% a¨Ô,Ü% a¨Õ,ñ		-rZ   c                 óœ   — g d¢g d¢g d¢g}t        |d¬«      \  }}t        |j                  |z  t        d«      «       t        ||z  |«       y ©Nr¥  r§  r¨  Fr�   rm   r©  rª  s       rX   r  zTestQR.test_check_finiteÒ  sB   € Úš	¢9Ð-ˆÜ�! %Ô(‰ˆˆ1Ü! !§#¡#¨¡'¬3¨q«6Ô2Ü! ! a¡%¨Õ+rZ   c                 ó`  — g d¢g d¢g d¢g}t        j                  t        «      5  t        |d ¬«      \  }}d d d «       t        j                  t        «      5  t        |d ¬«      \  }}t	        |«       t	        |«       d d d «       t        j                  t        «      5  t        |d¬«      \  }}t	        |«       t	        |«       d d d «       t        j                  t        «      5  t        |d¬«      \  }}	t	        |«       t	        |	«       d d d «       t        t        «      5  t        |d¬«       d d d «       t        t        «      5  t        |d¬«       d d d «       y # 1 sw Y   �Œ3xY w# 1 sw Y   ŒõxY w# 1 sw Y   Œ·xY w# 1 sw Y   ŒyxY w# 1 sw Y   Œ`xY w# 1 sw Y   y xY w)	Nr¥  r§  r¨  )Úlworkri  rœ   r   rL   )r‘   ÚwarnsÚDeprecationWarningr   r   r  r  )
ru   rv   r«  r¬  r¼  r²  Úq3Úr3Úq4Úr4s
             rX   Ú
test_lworkzTestQR.test_lworkØ  sk  € Úš	¢9Ð-ˆä�\‰\Ô,Ó-ñ 	%Ü�a˜tÔ$‰DˆAˆq÷	%ô �\‰\Ô,Ó-ñ 	-Ü˜ Ô&‰FˆB�Ü% b¨!Ô,Ü% b¨!Ô,÷	-ô �\‰\Ô,Ó-ñ 	-Ü˜ ”_‰FˆB�Ü% b¨!Ô,Ü% b¨!Ô,÷	-ô �\‰\Ô,Ó-ñ 	-Ü˜ ”_‰FˆB�Ü% b¨!Ô,Ü% b¨!Ô,÷	-ô œ:Ó&ñ 	Üˆq˜�N÷	ô œ:Ó&ñ 	Üˆq˜�N÷	ð 	÷3	%ñ 	%ú÷	-ð 	-ú÷	-ð 	-ú÷	-ð 	-ú÷	ð 	ú÷	ð 	úsG   ¥E'Á)E4Â!)F Ã+)FÄ+FÅF$Å'E1Å4E=Æ F	ÆFÆF!Æ$F-rO  rg  rT   r¸  FTrV   c                 ó(  — t        ||«      }t        j                  ||f|¬«      }t        ||¬«      ^}}}	t	        |j
                  ||f«       t	        |j                  |«       t	        |j
                  ||f«       t	        |j                  |«       t        |	«      |rdndk(  sJ ‚|rU|	\  }
t	        |
j
                  |f«       t	        |
j                  t        rt        j                  nt        j                  «       t        |d|¬«      ^}}	t	        |j
                  ||f«       t	        |j                  |«       t	        ||«       t        |	«      |rdndk(  sJ ‚|rU|	\  }
t	        |
j
                  |f«       t	        |
j                  t        rt        j                  nt        j                  «       t        |d|¬«      ^}}}	t	        |j
                  ||f«       t	        |j                  |«       t	        |j
                  ||f«       t	        |j                  |«       t        |	«      |rdndk(  sJ ‚|rU|	\  }
t	        |
j
                  |f«       t	        |
j                  t        rt        j                  nt        j                  «       t        |d|¬«      ^\  }}}}	t	        |j
                  ||f«       t	        |j                  |«       t	        |j
                  |f«       t	        |j                  |«       t	        |j
                  ||f«       t	        |j                  |«       t        |	«      |rdndk(  sJ ‚|rV|	\  }
t	        |
j
                  |f«       t	        |
j                  t        rt        j                  nt        j                  «       y y )	Nr‡   r·  rE   r   r¬  rà  rÐ  Úraw)rl  rN   r1   r   r   r8   rV   r_   rB   Úint64Úint32)ru   rO  rT   r¸  rV   r  rv   r«  r¬  Úotherr»  Úr_rrV  Útaus                 rX   rp  zTestQR.test_shape_dtype÷  s©  € ô
 ��1‹Iˆä�H‰H�a˜�V 5Ô)ˆÜ˜! hÔ/ˆˆˆ1ˆuÜ�Q—W‘W˜q !˜fÔ%Ü�Q—W‘W˜eÔ$Ü�Q—W‘W˜q !˜fÔ%Ü�Q—W‘W˜eÔ$Ü�5‹z¡8™a°Ò3Ð3Ð3ÙØ‰BˆAÜ˜Ÿ™ 1 $Ô'Ü˜Ÿ™­i¤"§(¢(¼R¿X¹XÔFä˜ ¨xÔ8ˆˆˆeÜ�S—Y‘Y  A Ô'Ü�S—Y‘Y Ô&Ü�Q˜ÔÜ�5‹z¡8™a°Ò3Ð3Ð3ÙØ‰BˆAÜ˜Ÿ™ 1 $Ô'Ü˜Ÿ™­i¤"§(¢(¼R¿X¹XÔFä˜! *°xÔ@ˆˆˆ1ˆuÜ�Q—W‘W˜q !˜fÔ%Ü�Q—W‘W˜eÔ$Ü�Q—W‘W˜q !˜fÔ%Ü�Q—W‘W˜eÔ$Ü�5‹z¡8™a°Ò3Ð3Ð3ÙØ‰BˆAÜ˜Ÿ™ 1 $Ô'Ü˜Ÿ™­i¤"§(¢(¼R¿X¹XÔFä " 1¨5¸8Ô DÐ‰
ˆˆc�A˜Ü�S—Y‘Y  A Ô'Ü�S—Y‘Y Ô&Ü�S—Y‘Y  Ô%Ü�S—Y‘Y Ô&Ü�Q—W‘W˜q !˜fÔ%Ü�Q—W‘W˜eÔ$Ü�5‹z¡8™a°Ò3Ð3Ð3ÙØ‰BˆAÜ˜Ÿ™ 1 $Ô'Ü˜Ÿ™­i¤"§(¢(¼R¿X¹XÕFð rZ   rq  rr  c                 ó´  — t        ||«      }t        j                  ||f«      }t        |«      \  }}t	        |t        j
                  |«      «       t	        |t        j                  ||f«      «       t        |d¬«      \  }}}t	        |t        j
                  |«      «       t	        |t        j                  ||f«      «       t	        |t        j                  |«      «       t        |d¬«      \  }t	        |t        j                  ||f«      «       t        |d¬«      \  }}t	        |t        j                  ||f«      «       t	        |t        j                  ||f«      «       t        |d¬«      \  \  }}	}t	        |t        j                  ||f«      «       t	        |	t        j                  |f«      «       t	        |t        j                  ||f«      «       y )NTr·  r¬  rÑ  rÐ  rV  )rl  rN   rŒ   r   r   rt  r2   )
ru   rO  rT   r  rv   r«  r¬  r»  rV  r[  s
             rX   r�   zTestQR.test_empty,  sZ  € ä��1‹Iˆä�H‰H�a˜�VÓˆÜ�!‹u‰ˆˆ1Ü˜œ2Ÿ;™; q›>Ô*Ü˜œ2Ÿ8™8 Q¨ FÓ+Ô,ä�Q Ô&‰ˆˆ1ˆaÜ˜œ2Ÿ;™; q›>Ô*Ü˜œ2Ÿ8™8 Q¨ FÓ+Ô,Ü˜œ2Ÿ9™9 Q›<Ô(ä�˜Œ_‰ˆÜ˜œ2Ÿ8™8 Q¨ FÓ+Ô,ä�!˜*Ô%‰ˆˆ1Ü˜œ2Ÿ8™8 Q¨ FÓ+Ô,Ü˜œ2Ÿ8™8 Q¨ FÓ+Ô,ä˜1 5Ô)‰‰
ˆˆc�AÜ˜œRŸX™X q¨! fÓ-Ô.Ü˜œRŸX™X q d›^Ô,Ü˜œ2Ÿ8™8 Q¨ FÓ+Õ,rZ   c                 ó  — t        j                  d«      }t        j                  d«      }t        ||«      \  }}t        |t        j                  d«      «       t        j                  d«      }t        j                  d«      }t        ||«      \  }}t        |t        j                  d«      «       t        j                  d«      }t        j                  d«      }t        ||«      \  }}t        |t        j                  d«      «       y )Nr†   rž   r‹   )rN   rŒ   r   r   )ru   rv   r°  rå  r¬  s        rX   Útest_multiply_emptyzTestQR.test_multiply_emptyF  s¿   € Ü�H‰H�VÓˆÜ�H‰H�VÓˆÜ˜A˜qÓ!‰ˆˆAÜ˜œBŸH™H VÓ,Ô-ä�H‰H�VÓˆÜ�H‰H�VÓˆÜ˜A˜qÓ!‰ˆˆAÜ˜œBŸH™H VÓ,Ô-ä�H‰H�VÓˆÜ�H‰H�VÓˆÜ˜A˜qÓ!‰ˆˆAÜ˜œBŸH™H VÓ,Õ-rZ   r8   )r  r:  rì  rŽ  )rm   r   c                 ó¨  — t         j                  j                  d¬«      }t        |«      }|j	                  |¬«      }t        j
                  |t         j                  «      r|d|j	                  |¬«      z  z   }|j                  |«      }t        |d|¬«      ^\  }}}	}
|j                  |k(  sJ ‚|j                  |k(  sJ ‚|j                  |fk(  sJ ‚|j                  |k(  sJ ‚|	j                  ||d   fk(  sJ ‚|	j                  |k(  sJ ‚t        |
«      |rdndk(  sJ ‚|rS|
d   }|j                  d   |d   k(  sJ ‚t        r|j                  t         j                  k(  sJ ‚t         j                  sJ ‚t        t        j                   |«      d |…d d …f   |	«       |d   dkD  r¯|d d …d |…f   }t#        d	|fd
¬«      d   } |||«      \  }}}|rt        ||	z  |d d …f   «       nt        ||	z  |«       |j$                  dk7  rMt        t        j&                  |j(                  «      |z  t        j*                  |j                  d   «      «       y y y )Né90  ©Úseed©rÈ   rK   rV  rà  rE   r   ©Úorgqrr†  ©rˆ  )rN   rO   r<  rl  ÚnormalÚ
issubdtypeÚcomplexfloatingrS   r   r8   rV   r_   rB   rW  rX  r   Útriur(   rÈ   rQ   rR   r>   )ru   r8   rV   r¸  rc   r  rv   Úq_rawr[  r¬  rY  rÁ  Ú	or_un_gqrr«  Ú_s                  rX   Útest_rawzTestQR.test_rawV  s)  € ô �i‰i×#Ñ#¨Ð#Ó/ˆÜ�‹Jˆà�J‰J˜EˆJÓ"ˆÜ�=‰=˜¤× 2Ñ 2Ô3Ø�B˜Ÿ™¨˜Ó/Ñ/Ñ/ˆAØ�H‰H�U‹Oˆä"$ Q¨U¸XÔ"FÐ‰ˆ��a˜%à�{‰{˜eÒ#Ð#Ð#Ø�{‰{˜eÒ#Ð#Ð#Ø�y‰y˜Q˜DÒ Ð Ð Ø�y‰y˜EÒ!Ð!Ð!Ø�w‰w˜A˜u Q™x˜=Ò(Ð(Ð(Ø�w‰w˜%ÒÐÐä�5‹z¡8™a°Ò3Ð3Ð3ÙØ˜‘8ˆDØ—:‘:˜a‘= E¨!¡HÒ,Ð,Ð,Ý-6�4—:‘:¤§¡Ò)ÐDÐD¼B¿HºHÐDÐDä!¤"§'¡'¨%£.°°!°²Q°Ñ"7¸Ô;à�‰8�aŠ<Øš!˜R˜a˜R˜%‘LˆEÜ(¨°e°XÀ[ÔQÐRSÑTˆIÙ  sÓ+‰GˆAˆq�!áÜ)¨!¨a©%°²1°d°7±Õ<ä)¨!¨a©%°Ô3à�v‰v˜Š{Ü)¬"¯'©'°!·#±#«,¸Ñ*:¼B¿F¹FÀ1Ç7Á7È1Á:Ó<NÕOð ð rZ   c                 ó0  — d}t        j                  |t         j                  ¬«      }t        j                  |d|z  g«      }t	        |d¬«      d   d   }|j
                  j                  }|j                  |||z  fk(  sJ ‚|j                  j                  sJ ‚|j                  j                  du sJ ‚t	        |d¬«      d   d   }|j                  ||z  |z  |||z  fk(  sJ ‚|j                  j                  du sJ ‚|j                  j                  du sJ ‚y )Nrm   r‡   rL   rV  rÑ  r   F)rN   r>   r3   rN  r   rV   ÚitemsizeÚstridesrO  Úf_contiguousÚc_contiguous)ru   rT   rv   Úaar«  rp  Úqqs          rX   Útest_raw_flagszTestQR.test_raw_flags€  s  € ð ˆÜ�F‰F�1œBŸJ™JÔ'ˆÜ�X‰X�q˜!˜A™#�hÓˆô ˆq�uÔ˜aÑ  Ñ#ˆØ—7‘7×#Ñ#ˆØ�y‰y˜X x°¡zÐ2Ò2Ð2Ð2Ø�w‰w×#Ò#Ð#Ð#Ø�w‰w×#Ñ# uÑ,Ð,Ð,ô �˜Ô Ñ" 1Ñ%ˆØ�z‰z˜a ™c (™l¨H°h¸q±jÐAÒAÐAÐAØ�x‰x×$Ñ$¨Ñ-Ð-Ð-Ø�w‰w×#Ñ# uÑ,Ð,Ñ,rZ   c                 ó@  — t         j                  j                  d¬«      }|j                  d¬«      }t        j                  |t         j
                  «      r"|d|j                  |j                  ¬«      z  z   }|j                  |«      }t        |d¬«      \  }}|t         j                  t         j                  fv rdnd	}t        ||z  ||¬
«       t        t        j                  |j                  «      |z  t        j                  |j                  d   «      |¬
«       y )Nr`  ra  )i'  rL   rc  rK   rÐ  rÑ  ro   rð   ©ÚdecimalrE   )rN   rO   r<  rg  rh  ri  r8   rS   r   r3   r4   r   rQ   rR   r>   )ru   rV   rc   rv   r«  r¬  ry  s          rX   Útest_smoke_economiczTestQR.test_smoke_economic”  sÖ   € ô �i‰i×#Ñ#¨Ð#Ó/ˆà�J‰J˜JˆJÓ'ˆÜ�=‰=˜¤× 2Ñ 2Ô3Ø�B˜Ÿ™¨¯©˜Ó1Ñ1Ñ1ˆAØ�H‰H�U‹Oˆä�!˜*Ô%‰ˆˆ1ð ¤§¡¬R¯\©\Ð :Ñ:‘!ÀˆÜ! ! a¡%¨°GÕ<Ü!¤"§'¡'¨!¯#©#£,°Ñ"2´B·F±F¸1¿7¹7À1¹:Ó4FÐPWÖXrZ   rÒ  )rV  r¬  rÐ  r.   rE  rF  rG  ))r;  rm   )rm   r;  )rL   r;  rm   )rL   rm   r;  c                 ó$  — t         j                  j                  d¬«      }|dk(  rKg |d d ¢|d   ‘|d   ‘­}|j                  |¬«      j	                  |«      }t        j
                  |dd«      }n!|j                  |¬«      j	                  |«      }t        j                  |«      }	t        |f||dœ|¤Ž}
|j                  dd	«      }|xr t        |«      d
k(  xr |dk(  xr |t        u}|dk(  �rp|
^\  }}}}|	j                  d
kD  rÎt        |	j                  d   «      D ]²  }t        d|dd d …d d …f   fd¬«      d   } |||d d …d t        j                  |dd  «      …f   ||d d …f   «      \  }}}|r9|d   }t!        |||d d …d d …f   z  |	|d d …d d …f   d d …||d d …f   f   d¬«       ŒŽt!        |||d d …d d …f   z  |	|d d …d d …f   d¬«       Œ´ not        d|fd¬«      d   } ||d d …d t        j                  |dd  «      …f   |«      \  }}}|r|d   }t!        ||z  |	d d …|f   d¬«       nt!        ||z  |	d¬«       |t        j"                  ||«      k(  sJ ‚y |dk(  rUt        |	d|¬«      ^}}}t!        |
d   |d¬«       |rt!        |
d   |d   «       |t        j"                  ||
d   «      k(  sJ ‚y |dk(  s|dk(  rÌ|r�|
d   }|	j                  d
kD  rZt        |	j                  d   «      D ]>  }t!        |
d   |d d …d d …f   |
d   |d d …d d …f   z  |	|   d d …||d d …f   f   d¬«       Œ@ n6t!        |
d   |
d   z  |	d d …|f   d¬«       nt!        |
d   |
d   z  |	d¬«       |t        j"                  ||
|dk(  rdnd   «      k(  sJ ‚y y )Nrâ   ra  rG  r³   rœ   rc  rà  rI  FrL   rV  r   rd  r†  rf  rz  r+  r¬  r.   rÐ  rE   )rN   rO   r<  rg  rS   Úswapaxesr{   r   Úgetr_   r^   rH  r¢   r8   r(   rl  r   Úshares_memory)ru   rV   Úoverwrite_kwrÒ  r¸  rE  r8   rc   rv   rP  ÚoutrI  rk  r[  r¬  rY  r§   rl  r«  rm  rÁ  Úr_refs                         rX   Útest_overwrite_argszTestQR.test_overwrite_args¥  sþ  € ô �i‰i×#Ñ#¨Ð#Ó,ˆà�CŠ<ð 8�e˜C˜R�jÐ7 %¨¡)Ð7¨U°2©YÑ7ˆEØ—
‘
 �
Ó&×-Ñ-¨eÓ4ˆAÜ—‘˜A˜r 2Ó&‰Aà—
‘
 �
Ó&×-Ñ-¨eÓ4ˆAä—‘˜“
ˆÜ�ÐA˜¨ÑA°LÑAˆà"×&Ñ& }°eÓ<ˆàò Ü�‹Z˜1‰_òà�c‰\òð œÐð	 	ð �5‹=à&)Ð#‰LˆU�C˜!˜eà�z‰z˜AŠ~Ü˜uŸ{™{¨1™~Ó.ò T�AÜ 0Ø" U¨1ªa²¨7¡^Ð$5¸[ô!àñ!�Iñ (¨¨a²Ð4G´R·V±V¸EÀ"À#¸JÓ5GÐ4GÐ.GÑ(HÈ#ÈaÒQRÈdÉ)ÓT‘G�A�q˜!áØ$ Q™x˜Ü'Ø  !¢Qª '¡
™N¨E°!²Qº°'©Nº1¸dÀ1ÂaÀ4¹j¸=Ñ,IÐPUöô (¨¨A¨a²²A¨g©J©¸¸aÂÂA¸g¹ÈUÖSñTô -¨Z¸%¸ÈÔUÐVWÑX�	Ù# Eª!Ð-@¬b¯f©f°U¸2¸3°ZÓ.@Ð-@Ð*@Ñ$AÀ3ÓG‘��1�aáØ  ™8�DÜ# A¨¡E¨5²°D°©>ÀÖFä# A¨¡E¨5°uÕ=à¤"×"2Ñ"2°1°eÓ"<Ò<Ð<Ñ<à�SŠ[ä! %¨f¸xÔHÐˆAˆu�uä˜C ™F E°Õ6ÙÜ  B¡¨¨q©Ô2à¤"×"2Ñ"2°1°c¸!±fÓ"=Ò=Ð=Ñ=à�ZÒ 4¨6¢>ñ Ø˜2‘w�Ø—:‘: ’>Ü" 5§;¡;¨q¡>Ó2ò ˜Ü'Ø ™F 1¢aª 7™O¨c°!©f°Qºº1°W©oÑ=¸uÀQ¹xÊÈ4ÐPQÒSTÐPTÉ:ÈÑ?VØ!&öñô $ C¨¡F¨S°©V¡O°Uº1¸d¸7±^È%ÖPä  A¡¨¨Q©¡°¸UÕCð ¤"×"2Ñ"2Ø�3˜D JÒ.‘q°AÑ6ó#ò ð ñ ð% $2rZ   N)ErŽ   r�   r�   ry   r³  rµ  r½  rÂ  rÄ  rÆ  rÉ  rÌ  rÎ  rÕ  rØ  rÞ  râ  ræ  ré  rí  rð  ró  rõ  r÷  rù  rû  rý  r   r  r	  r  r  r  r  r  r  r  rP  r$  r'  r+  r0  r2  r5  r8  r:  r<  r?  rA  rT  rE  rG  rI  r  rT  r‘   r’   r“   r  rp  r�   r^  rn  rv  rz  rF   r^   r”   r‚  r–   rZ   rX   r¢  r¢  Ç  sØ  „ ò,ò)ò)ò	)ò-ò-ò,ò	)ò,ò
)ò&ò
)ò)ò)ò)ò)ò&ò)ò&ò)ò)ò)ò)ò)ò,ò)ò)ò)ò4ò4ò4ò	)ò-ò-ò0ò
-ò
-ò-ò	0ò-ò-ò-ò *ò-ò$0ò-ò0ò
-ò
-ò-ò,òð> ‡[�[×Ñ˜S¢)Ó,Ø‡[�[×Ñ˜S¢)Ó,Ø‡[�[×Ñ˜Z¨%°¨Ó7Ø‡[�[×Ñ˜W fÓ-ñ/Gó .ó 8ó -ó -ð/Gðb ‡[�[×Ñ˜ZÒ)AÓBñ-ó Cð-ò2.ð  ‡[�[×Ñ˜Z¨$°¨Ó7Ø‡[�[×Ñ˜WÒ&NÓOØ‡[�[×Ñ˜W fÓ-ñ%Pó .ó Pó 8ð%PòN-ð( ‡[�[×Ñ˜W fÓ-ñYó .ðYð  Ø‡[�[×Ñ˜W s¨E lÓ3Ø‡[�[×Ñ˜VÒ%EÓFØ‡[�[×Ñ˜Z¨$°¨Ó7Ø‡[�[×Ñ˜W s¨C jÓ1Ø‡[�[×Ñ˜WÒ&LÓMñTó Nó 2ó 8ó Gó 4ó ñTrZ   r¢  c                   ój  — e 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ej"                  j%                  dg d¢«      ej"                  j%                  dg d¢«      ej"                  j%                  de«      d„ «       «       «       Zej"                  j%                  dg d¢«      d„ «       Zy)ÚTestRQc                 ó˜   — g d¢g d¢g d¢g}t        |«      \  }}t        ||j                  z  t        d«      «       t        ||z  |«       y r¤  ©r   r   rR   r>   ©ru   rv   r¬  r«  s       rX   ry   zTestRQ.test_simple	  s?   € Úš	¢9Ð-ˆÜ�!‹u‰ˆˆ1Ü! ! a§c¡c¡'¬3¨q«6Ô2Ü! ! a¡%¨Õ+rZ   c                 óh   — g d¢g d¢g d¢g}t        |«      \  }}t        |d¬«      }t        ||«       y )Nr¥  r§  r¨  r¬  rÑ  )r   r   )ru   rv   r¬  r«  r²  s        rX   Útest_rzTestRQ.test_r		  s0   € Úš	¢9Ð-ˆÜ�!‹u‰ˆˆ1Ü�˜Œ_ˆÜ! ! RÕ(rZ   c                 ó
  — t         j                  j                  d«      }d}t        d«      D ]T  }|j                  ||g«      }t	        |«      \  }}t        ||j                  z  t        |«      «       t        ||z  |«       ŒV y r  ©rN   rO   r  r¢   r   r   rR   r>   ©ru   rc   rT   r  rv   r¬  r«  s          rX   rP  zTestRQ.test_random	  sq   € Ü�i‰i×#Ñ# DÓ)ˆØˆÜ�q“ò 	0ˆAØ—
‘
˜A˜q˜6Ó"ˆAÜ�a“5‰DˆAˆqÜ% a¨!¯#©#¡g¬s°1«vÔ6Ü% a¨!¡e¨QÕ/ñ		0rZ   c                 ó’   — g d¢g d¢g}t        |«      \  }}t        |j                  |z  t        d«      «       t        ||z  |«       y )Nr¥  r§  rm   r†  r‡  s       rX   rÆ  zTestRQ.test_simple_trap	  rÇ  rZ   c                 ó˜   — ddgddgddgg}t        |«      \  }}t        |j                  |z  t        d«      «       t        ||z  |«       y rË  r†  r‡  s       rX   rÌ  zTestRQ.test_simple_tall	  sK   € Ø�ˆV�a˜�V˜a ˜VÐ$ˆÜ�!‹u‰ˆˆ1Ü! !§#¡#¨¡'¬3¨q«6Ô2Ü! ! a¡%¨Õ+rZ   c                 ó’   — g d¢g d¢g}t        |«      \  }}t        ||j                  z  t        d«      «       t        ||z  |«       y )Nrë  r§  rm   r†  r‡  s       rX   rí  zTestRQ.test_simple_fat$	  s=   € Úš	Ð"ˆÜ�!‹u‰ˆˆ1Ü! ! a§c¡c¡'¬3¨q«6Ô2Ü! ! a¡%¨Õ+rZ   c                 ó´   — g d¢g d¢g d¢g}t        |«      \  }}t        ||j                  «       j                  z  t	        d«      «       t        ||z  |«       y rÿ  )r   r   rQ   rR   r>   r‡  s       rX   r   zTestRQ.test_simple_complex*	  sE   € Úš<ªÐ3ˆÜ�!‹u‰ˆˆ1Ü! ! a§f¡f£h§j¡j¡.´#°a³&Ô9Ü! ! a¡%¨Õ+rZ   c                 ó  — t         j                  j                  d«      }d}d}t        d«      D ]T  }|j                  ||g«      }t	        |«      \  }}t        ||j                  z  t        |«      «       t        ||z  |«       ŒV y r-  r‹  ©ru   rc   rO  rT   r  rv   r¬  r«  s           rX   r0  zTestRQ.test_random_tall0	  óv   € Ü�i‰i×#Ñ# DÓ)ˆØˆØˆÜ�q“ò 	0ˆAØ—
‘
˜A˜q˜6Ó"ˆAÜ�a“5‰DˆAˆqÜ% a¨!¯#©#¡g¬s°1«vÔ6Ü% a¨!¡e¨QÕ/ñ		0rZ   c                 ó  — t         j                  j                  d«      }d}d}t        d«      D ]T  }|j                  ||g«      }t	        |«      \  }}t        ||j                  z  t        |«      «       t        ||z  |«       ŒV y r>  r‹  r’  s           rX   r?  zTestRQ.test_random_trap:	  r“  rZ   c                 ór  — t         j                  j                  d«      }d}d}t        d«      D ]†  }|j                  ||g«      }t	        |d¬«      \  }}t        ||j                  z  t        |«      «       t        ||z  |«       t        |j                  ||f«       t        |j                  ||f«       Œˆ y )Nr  r  r.  rL   rÐ  rÑ  )
rN   rO   r  r¢   r   r   rR   r>   r   r8   r’  s           rX   Útest_random_trap_economicz TestRQ.test_random_trap_economicD	  s�   € Ü�i‰i×#Ñ# DÓ)ˆØˆØˆÜ�q“ò 	*ˆAØ—
‘
˜A˜q˜6Ó"ˆAÜ�a˜jÔ)‰DˆAˆqÜ% a¨!¯#©#¡g¬s°1«vÔ6Ü% a¨!¡e¨QÔ/Ü˜Ÿ™ 1 a &Ô)Ü˜Ÿ™ 1 a &Õ)ñ	*rZ   c                 óT  — t         j                  j                  d«      }d}t        d«      D ]y  }|j                  ||g«      d|j                  ||g«      z  z   }t	        |«      \  }}t        ||j                  «       j                  z  t        |«      «       t        ||z  |«       Œ{ y rC  )	rN   rO   r  r¢   r   r   rQ   rR   r>   rŒ  s          rX   rT  zTestRQ.test_random_complexP	  sŽ   € Ü�i‰i×#Ñ# DÓ)ˆØˆÜ�q“ò 	0ˆAØ—
‘
˜A˜q˜6Ó" R¨¯
©
°A°q°6Ó(:Ñ%:Ñ:ˆAÜ�a“5‰DˆAˆqÜ% a¨!¯&©&«(¯*©*¡n´c¸!³fÔ=Ü% a¨!¡e¨QÕ/ñ		0rZ   c                 ó¼  — t         j                  j                  d«      }d}d}t        d«      D ]«  }|j                  ||g«      d|j                  ||g«      z  z   }t	        |d¬«      \  }}t        ||j                  «       j                  z  t        |«      «       t        ||z  |«       t        |j                  ||f«       t        |j                  ||f«       Œ­ y )Nr  r  r.  rL   rK   rÐ  rÑ  )rN   rO   r  r¢   r   r   rQ   rR   r>   r   r8   r’  s           rX   Útest_random_complex_economicz#TestRQ.test_random_complex_economicY	  sº   € Ü�i‰i×#Ñ# DÓ)ˆØˆØˆÜ�q“ò 	*ˆAØ—
‘
˜A˜q˜6Ó" R¨¯
©
°A°q°6Ó(:Ñ%:Ñ:ˆAÜ�a˜jÔ)‰DˆAˆqÜ% a¨!¯&©&«(¯*©*¡n´c¸!³fÔ=Ü% a¨!¡e¨QÔ/Ü˜Ÿ™ 1 a &Ô)Ü˜Ÿ™ 1 a &Õ)ñ	*rZ   c                 óœ   — g d¢g d¢g d¢g}t        |d¬«      \  }}t        ||j                  z  t        d«      «       t        ||z  |«       y rK  r†  r‡  s       rX   r  zTestRQ.test_check_finitee	  sB   € Úš	¢9Ð-ˆÜ�! %Ô(‰ˆˆ1Ü! ! a§c¡c¡'¬3¨q«6Ô2Ü! ! a¡%¨Õ+rZ   rO  rg  rT   rV   c                 óp  — t        ||«      }t        j                  ||f|¬«      }t        |«      \  }}t	        |j
                  ||f«       t	        |j
                  ||f«       t	        |j                  |«       t	        |j                  |«       t        |d¬«      }t	        |j
                  ||f«       t	        |j                  |«       t        |d¬«      \  }}t	        |j
                  ||f«       t	        |j                  |«       t	        |j
                  ||f«       t	        |j                  |«       y )Nr‡   r¬  rÑ  rÐ  )rl  rN   r1   r   r   r8   rV   )ru   rO  rT   rV   r  rv   r¬  r«  s           rX   rp  zTestRQ.test_shape_dtypek	  së   € ô ��1‹Iˆä�H‰H�a˜�V 5Ô)ˆÜ�!‹u‰ˆˆ1Ü�Q—W‘W˜q !˜fÔ%Ü�Q—W‘W˜q !˜fÔ%Ü�Q—W‘W˜eÔ$Ü�Q—W‘W˜eÔ$äˆq�sŒOˆÜ�Q—W‘W˜q !˜fÔ%Ü�Q—W‘W˜eÔ$ä�!˜*Ô%‰ˆˆ1Ü�Q—W‘W˜q !˜fÔ%Ü�Q—W‘W˜eÔ$Ü�Q—W‘W˜q !˜fÔ%Ü�Q—W‘W˜eÕ$rZ   rq  rr  c                 óæ  — t        ||«      }t        j                  ||f«      }t        |«      \  }}t	        |t        j                  ||f«      «       t	        |t        j
                  |«      «       t        |d¬«      }t	        |t        j                  ||f«      «       t        |d¬«      \  }}t	        |t        j                  ||f«      «       t	        |t        j                  ||f«      «       y )Nr¬  rÑ  rÐ  )rl  rN   rŒ   r   r   rt  )ru   rO  rT   r  rv   r¬  r«  s          rX   r�   zTestRQ.test_empty‚	  sµ   € ä��1‹Iˆä�H‰H�a˜�VÓˆÜ�!‹u‰ˆˆ1Ü˜œ2Ÿ8™8 Q¨ FÓ+Ô,Ü˜œ2Ÿ;™; q›>Ô*äˆq�sŒOˆÜ˜œ2Ÿ8™8 Q¨ FÓ+Ô,ä�!˜*Ô%‰ˆˆ1Ü˜œ2Ÿ8™8 Q¨ FÓ+Ô,Ü˜œ2Ÿ8™8 Q¨ FÓ+Õ,rZ   N)rŽ   r�   r�   ry   r‰  rP  rÆ  rÌ  rí  r   r0  r?  r–  rT  r™  r  r‘   r’   r“   r  rp  r�   r–   rZ   rX   r„  r„  	  sÁ   „ ò,ò)ò0ò,ò,ò,ò,ò0ò0ò
*ò0ò
*ò,ð ‡[�[×Ñ˜S¢)Ó,Ø‡[�[×Ñ˜S¢)Ó,Ø‡[�[×Ñ˜W fÓ-ñ%ó .ó -ó -ð%ð( ‡[�[×Ñ˜ZÒ)AÓBñ-ó Cñ-rZ   r„  c                   ón  — e Zd Zd„ Zd„ Zej                  j                  dd ej                  d«       d ej                  d«      dgfd ej                  d«      d ej                  d«       dgfd	dd ej                  d«       ej                  d«       gfd
 ej                  d«       ej                  d«       ddgfd„  ej                  d«      d ej                  d«       dgfg«      d„ «       Z
d„ Zd„ Zej                  j                  deeej                  eej"                  g«      d„ «       Zej                  j                  dd	d
g«      ej                  j                  dddg«      ej                  j                  dej                  ej&                  ej"                  ej(                  g«      d„ «       «       «       Zej                  j                  dddg«      ej                  j                  dej                  ej&                  ej"                  ej(                  g«      d„ «       «       Zy)Ú	TestSchurc                 óô   — t        ||z  |j                  «       j                  z  |||d¬«       t        ||j                  «       j                  z  t        j                  t        |«      «      z
  dd|d¬«       y )Nz&Schur decomposition does not match 'a'rÀ   r   zu is not unitary)r   rQ   rR   rN   r>   r_   )ru   rv   ÚtrÆ  rÁ   rÂ   s         rX   Úcheck_schurzTestSchur.check_schur•	  s]   € ä˜˜A™ §¡£§
¡
Ñ*¨A°D¸tØ Hõ	Jô 	˜˜AŸF™F›HŸJ™J™¬¯©´°A³«Ñ7¸ÀÈØ 2ö	4rZ   c           	      ó¨  — g d¢g d¢g d¢g}t        |«      \  }}| j                  |||dd¬«       t        |d«      \  }}t        t        j                  t        t        |«      «      «      xr' t        j                  t        t        |«      «      «      «       | j                  |||dd¬«       t        ||«      \  }}| j                  |||dd¬«       y )N©r¦  é   rm   r§  ©ri  rm   rp   r*  ç›+¡†›„ö<©rÁ   rÂ   r•   )r   r¡  r   rN   r2  r5   r7   r   )ru   rv   r   r  ÚtcÚzcÚtc2Úzc2s           rX   ry   zTestSchur.test_simplež	  s¶   € Úš¢JÐ/ˆÜ�Q‹x‰ˆˆ1Ø×Ñ˜˜A˜q u°5ÐÔ9Ü�q˜)Ó$‰ˆˆBÜ”—‘”uœY r›]Ó+Ó,ÒM´·±¼¼iÈ»mÓ8LÓ1MÔNØ×Ñ˜˜B ¨°UÐÔ;Ü˜2˜r“?‰ˆˆSØ×Ñ˜˜C ¨5°uÐÕ=rZ   zsort, expected_diagÚlhprL   ç      à¿r\   ÚrhpÚiucÚoucc                 ó   — | dk\  S )Nr©   r–   )rû  s    rX   ú<lambda>zTestSchur.<lambda>®	  s
   € �A˜‘H€ rZ   c                 óÈ   — g d¢g d¢g d¢g d¢g}t        ||¬«      \  }}}| j                  |||dd¬«       t        t        j                  |«      |d	¬
«       t        d|«       y )N©r&  r›   rj  rk  ©g      Àg      Àrk  rj  ©r   ç      @ç      Àg      @©r·  r&  rm  ç      @©r9   r*  r¦  r§  rz  ©rÁ   rL   )r   r¡  r   rN   r-   r   )ru   r9   Úexpected_diagrv   r   rÆ  Úsdims          rX   Ú	test_sortzTestSchur.test_sort¨	  sb   € ò Ú"ÚÚð!ˆô ˜1 4Ô(‰
ˆˆ1ˆdØ×Ñ˜˜A˜q u°5ÐÔ9ÜœŸ™ ›
 M¸Õ>Ü�Q˜ÕrZ   c                 ó|   — g d¢g d¢g d¢g d¢g}t        t        t        |d¬«       t        t        t        |d¬«       y )Nr´  rµ  r¶  r¹  Úunsupportedr»  rE   )r  r  r   )ru   rv   s     rX   Útest_sort_errorszTestSchur.test_sort_errors¼	  s3   € ÚÚ"ÚÚð!ˆô 	”j¤%¨°Õ?Ü”j¤%¨°Ö3rZ   c                 óŽ   — g d¢g d¢g d¢g}t        |d¬«      \  }}t        ||z  |j                  «       j                  z  |«       y )Nr£  r§  r¥  Fr�   )r   r   rQ   rR   )ru   rv   r   r  s       rX   r  zTestSchur.test_check_finiteÄ	  s;   € Úš¢JÐ/ˆÜ�Q UÔ+‰ˆˆ1Ü! ! a¡%¨!¯&©&«(¯*©*Ñ"4°aÕ8rZ   r„   c                 óž  — t        j                  d|¬«      }t        |«      \  }}t        t        j                  d|¬«      «      \  }}t	        |t        j                  d«      «       t	        |t        j                  d«      «       |j
                  |j
                  k(  sJ ‚|j
                  |j
                  k(  sJ ‚t        |d¬«      \  }}}t	        |t        j                  d«      «       t	        |t        j                  d«      «       t        |d«       |j
                  |j
                  k(  sJ ‚|j
                  |j
                  k(  sJ ‚y )Nr†   r‡   rL   r¬  r»  r   )rN   rŒ   r   r>   r   rV   r   )ru   r„   rv   r   r  Út0Úz0r¾  s           rX   r�   zTestSchur.test_emptyÉ	  sø   € ä�H‰H�V 2Ô&ˆÜ�Q‹x‰ˆˆ1Ü”r—v‘v˜a rÔ*Ó+‰ˆˆBÜ˜œ2Ÿ8™8 FÓ+Ô,Ü˜œ2Ÿ8™8 FÓ+Ô,Ø�w‰w˜"Ÿ(™(Ò"Ð"Ð"Ø�w‰w˜"Ÿ(™(Ò"Ð"Ð"ä˜1 5Ô)‰
ˆˆ1ˆdÜ˜œ2Ÿ8™8 FÓ+Ô,Ü˜œ2Ÿ8™8 FÓ+Ô,Ü�T˜1ÔØ�w‰w˜"Ÿ(™(Ò"Ð"Ð"Ø�w‰w˜"Ÿ(™(Ò"Ð"Ñ"rZ   r9   Úoutputru  r•   rV   c                 ó¢   — t        j                  ddgddgg«      }t        |j                  |«      ||¬«      d   }|dk(  r|dk(  s
J ‚|dk(  sJ ‚y y )Nçš™™™™™¹?r³   rL   ©r9   rÇ  rœ   r¯  r   )rN   r;   r   rS   )ru   r9   rÇ  rV   rW   r¾  s         rX   Útest_gh_13137_sort_strz TestSchur.test_gh_13137_sort_strÚ	  s_   € ô  �J‰J˜˜b˜	 A s 8Ð,Ó-ˆô �Q—X‘X˜e“_¨4¸Ô?ÀÑCˆØ  EšMˆt�qŠyÐ8Ð8¨t°qªyÐ8Ð8¨yˆyrZ   c                 óü   ‡— t        j                  ddgddgg«      }|dk(  xr" |t         j                  t         j                  hv Šd	ˆfd„	}t	        |j                  |«      ||¬«      d   }‰r|dk(  s
J ‚|dk(  sJ ‚y y )
NrÉ  r³   rL   ru  c                 óÒ   •— ‰r9t        j                  | «      rJ ‚|�t        j                  |«      sJ ‚| |dz  z   }nt        j                  | «      sJ ‚|�J ‚| }|j                  dkD  S )NrK   r)  )rN   ÚiscomplexobjÚisrealr«   )rû  rÒ  r  Úall_reals      €rX   r9   z1TestSchur.test_gh_13137_sort_custom.<locals>.sort
  si   ø€ ÙÜŸ?™?¨1Ô-Ð-Ð-Ø�}¬¯©°1¬Ð5Ð5Ø˜˜"™‘H‘ä—‘ qÔ)Ð)Ð)Ø�yÐ �yØ�Ø—6‘6˜E‘>Ð!rZ   rÊ  rœ   rE   rd  )rN   r;   r3   r­   r   rS   )ru   rÇ  rV   rW   r9   r¾  rÐ  s         @rX   Útest_gh_13137_sort_customz#TestSchur.test_gh_13137_sort_customð	  s�   ø€ ô �J‰J˜˜b˜	 A s 8Ð,Ó-ˆà˜6‘>ÒG e´·
±
¼B¿J¹JÐ/GÐ&Gˆõ		"ô �Q—X‘X˜e“_¨4¸Ô?ÀÑCˆÙ$ˆt�qŠyÐ3Ð3¨$°!ª)Ð3Ð3¨)ˆyrZ   N)rŽ   r�   r�   r¡  ry   r‘   r’   r“   rN   r6   r¿  rÂ  r  r^   r”   r3   r•   r4   r�   r­   rª   rË  rÑ  r–   rZ   rX   rž  rž  “	  s#  „ ò4ò>ð ‡[�[×ÑØØ
�7�2—7‘7˜1“:�+˜t W R§W¡W¨Q£Z°Ð5Ð	6Ø
�'�"—'‘'˜!“*˜c G B§G¡G¨A£J ;°Ð5Ð	6Ø
�$˜˜W˜RŸW™W Q›Z¨'¨"¯'©'°!«*¨Ð5Ð	6Ø
�'�"—'‘'˜!“*˜w˜rŸw™w q›z˜k¨4°Ð5Ð	6Ù
˜w˜rŸw™w q›z¨3°°·±¸³°¸TÐBÐ	Cð		Eóñ
óð
ò4ò9ð
 ‡[�[×Ñ˜T C¨°·
±
¸GÀRÇ\Á\Ð#RÓSñ#ó Tð#ð  ‡[�[×Ñ˜V e¨U ^Ó4Ø‡[�[×Ñ˜X¨°	Ð':Ó;Ø‡[�[×Ñ˜W r§z¡z°2·:±:Ø')§|¡|°R·]±]ð'Dó Eñ9óEó <ó 5ð9ð$ ‡[�[×Ñ˜X¨°	Ð':Ó;Ø‡[�[×Ñ˜W r§z¡z°2·:±:Ø')§|¡|°R·]±]ð'Dó Eñ4óEó <ñ4rZ   rž  c                   óŠ   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
ej                  j                  d	eeeeeg«      d
„ «       Zy)ÚTestHessenbergc                 ó¤   — g d¢g d¢g d¢g}g d¢g d¢g d¢g}t        |d¬«      \  }}t        |j                  |z  |z  |«       t        ||d	¬
«       y )N©ikÿÿÿiÎÿÿÿifÿÿÿ©é  é´   é"  ©iåÿÿÿr  éçÿÿÿ©g      bÀgüs×E@gã¥›Ä ŠcÀ©gçŒ(mÍ€Àgkšwœ¢c@gÏfÕçjW�À©r   gÂ&S£²?g,eâX—@rE   ©Úcalc_qr;  rx  ©r   r   rR   ©ru   rv   Úh1rg   r«  s        rX   ry   zTestHessenberg.test_simple
  sX   € ÚÚÚðˆò .Ú.Ú!ð#ˆô ˜! AÔ&‰ˆˆ1Ü! !§#¡#¨¡'¨A¡+¨qÔ1Ü! ! R°Ö3rZ   c                 óŽ   — g d¢g d¢g d¢g}t        |d¬«      \  }}t        |j                  «       j                  |z  |z  |«       y )NrÕ  )r×  y             €f@rÙ  )y       €      ;Àr  rÛ  rE   rß  )r   r   rQ   rR   ©ru   rv   rg   r«  s       rX   r   z"TestHessenberg.test_simple_complex 
  sA   € ÚÚÚðˆô ˜! AÔ&‰ˆˆ1Ü! !§&¡&£(§*¡*¨q¡.°1Ñ"4°aÕ8rZ   c                 óŠ   — g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}t        |d¬	«      \  }}t        |j                  |z  |z  |«       y )
N)rE   rL   rm   r;  ro   rp   r  )r   rL   rm   r;  rp   r  rL   )r   rL   rL   rm   r   rm   rL   )r   r   rL   r¦  r   r   rL   )r   rm   rE   rL   r   rE   rL   )r   rE   rL   rm   r   rE   r   )r   r   r   r   r   rE   rL   rE   rß  rá  rå  s       rX   Útest_simple2zTestHessenberg.test_simple2'
  sF   € Ú"Ú"Ú"Ú"Ú"Ú"Ú"ð$ˆô ˜! AÔ&‰ˆˆ1Ü! !§#¡#¨¡'¨A¡+¨qÕ1rZ   c                 ó�   — t        j                  d«      }d|d<   t        |d¬«      \  }}t        |j                  |z  |z  |«       y )Nrm   rL   )rœ   r   rE   rß  )rN   r>   r   r   rR   rå  s       rX   Útest_simple3zTestHessenberg.test_simple32
  s>   € Ü�F‰F�1‹IˆØˆˆ%‰Ü˜! AÔ&‰ˆˆ1Ü! !§#¡#¨¡'¨A¡+¨qÕ1rZ   c                 óä   — t         j                  j                  d«      }d}t        d«      D ]A  }|j                  ||g«      }t	        |d¬«      \  }}t        |j                  |z  |z  |«       ŒC y )Nr  r  rL   rE   rß  )rN   rO   r  r¢   r   r   rR   ©ru   rc   rT   r  rv   rg   r«  s          rX   rP  zTestHessenberg.test_random8
  sf   € Ü�i‰i×#Ñ# DÓ)ˆØˆÜ�q“ò 	6ˆAØ—
‘
˜A˜q˜6Ó"ˆAÜ˜a¨Ô*‰DˆAˆqÜ% a§c¡c¨A¡g°¡k°1Õ5ñ	6rZ   c                 ó.  — t         j                  j                  d«      }d}t        d«      D ]f  }|j                  ||g«      d|j                  ||g«      z  z   }t	        |d¬«      \  }}t        |j                  «       j                  |z  |z  |«       Œh y )Nr  r  rL   rK   rE   rß  )rN   rO   r  r¢   r   r   rQ   rR   rë  s          rX   rT  z"TestHessenberg.test_random_complex@
  s„   € Ü�i‰i×#Ñ# DÓ)ˆØˆÜ�q“ò 	=ˆAØ—
‘
˜A˜q˜6Ó" R¨¯
©
°A°q°6Ó(:Ñ%:Ñ:ˆAÜ˜a¨Ô*‰DˆAˆqÜ% a§f¡f£h§j¡j°1¡n°qÑ&8¸!Õ<ñ	=rZ   c                 ó¦   — g d¢g d¢g d¢g}g d¢g d¢g d¢g}t        |dd¬	«      \  }}t        |j                  |z  |z  |«       t        ||d
¬«       y )NrÕ  rÖ  rÚ  rÜ  rÝ  rÞ  rE   F)rà  r‚   r;  rx  rá  râ  s        rX   r  z TestHessenberg.test_check_finiteH
  sZ   € ÚÚÚðˆò .Ú.Ú!ð#ˆô ˜! A°EÔ:‰ˆˆ1Ü! !§#¡#¨¡'¨A¡+¨qÔ1Ü! ! R°Ö3rZ   c                 ó  — ddgddgg}t        |d¬«      \  }}t        |t        j                  d«      «       t        ||«       ddgdd	gg}t        |d¬«      \  }}t        |t        j                  d«      «       t        ||«       y )
NrL   rE   r  r¤  rß  y       @      Àr´   y      @      @y      (@       À)r   r   rN   r>   )ru   rv   rg   r«  r°   Úh2r¼  s          rX   Útest_2x2zTestHessenberg.test_2x2S
  s~   € Ø�ˆV�a˜�WÐˆä˜! AÔ&‰ˆˆ1Ü! !¤R§V¡V¨A£YÔ/Ü! ! QÔ'à�Dˆ\˜D %˜=Ð)ˆÜ˜A aÔ(‰ˆˆBÜ! "¤b§f¡f¨Q£iÔ0Ü! " aÕ(rZ   r„   c                 óÌ  — t        j                  d|¬«      }t        |«      }|j                  dk(  sJ ‚|j                  t        t        j
                  d|¬«      «      j                  k(  sJ ‚t        |d¬«      \  }}t        |d¬«      \  }}|j                  dk(  sJ ‚|j                  |j                  k(  sJ ‚|j                  dk(  sJ ‚|j                  |j                  k(  sJ ‚y )Nr†   r‡   rm   Trß  )rN   rŒ   r   r8   rV   r>   )ru   r„   rv   rg   r«  Úh3rP  s          rX   r�   zTestHessenberg.test_empty_
  sÅ   € ä�H‰H�V 2Ô&ˆÜ�q‹MˆØ�w‰w˜&Ò Ð Ð Ø�w‰wœ*¤R§V¡V¨A°RÔ%8Ó9×?Ñ?Ò?Ð?Ð?ä˜! DÔ)‰ˆˆ1Ü˜A dÔ+‰ˆˆBØ�w‰w˜&Ò Ð Ð Ø�w‰w˜"Ÿ(™(Ò"Ð"Ð"à�w‰w˜&Ò Ð Ð Ø�w‰w˜"Ÿ(™(Ò"Ð"Ñ"rZ   N)rŽ   r�   r�   ry   r   rç  ré  rP  rT  r  rð  r‘   r’   r“   r^   r”   r3   r•   r4   r�   r–   rZ   rX   rÓ  rÓ  
  s[   „ ò	4ò9ò	2ò2ò6ò=ò	4ò
)ð ‡[�[×Ñ˜T C¨°¸À)Ð#LÓMñ#ó Nñ#rZ   rÓ  zBuild DependenciesÚblasÚnameÚversionc                   ó6   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	y)	ÚTestQZc                 ó\  — t         j                  j                  d«      }d}|j                  ||g«      j                  t        «      }|j                  ||g«      j                  t        «      }t        ||«      \  }}}}t        ||z  |j                  z  |d¬«       t        ||z  |j                  z  |d¬«       t        ||j                  z  t        |«      d¬«       t        ||j                  z  t        |«      d¬«       t        t        j                  t        |«      dk\  «      «       y )Nr`  ro   rx  r   )rN   rO   r  rS   r3   r   r   rR   r>   r   r¬   r-   ©	ru   rc   rT   rW   rË   ÚAAÚBBÚQr  s	            rX   Útest_qz_singlezTestQZ.test_qz_singleu
  sá   € Ü�i‰i×#Ñ# EÓ*ˆØˆØ�J‰J˜˜1�vÓ×%Ñ%¤gÓ.ˆØ�J‰J˜˜1�vÓ×%Ñ%¤gÓ.ˆÜ˜!˜Q“x‰ˆˆB��1Ü! ! b¡&¨1¯3©3¡,°¸1Õ=Ü! ! b¡&¨1¯3©3¡,°¸1Õ=Ü! ! a§c¡c¡'¬3¨q«6¸1Õ=Ü! ! a§c¡c¡'¬3¨q«6¸1Õ=Ü”—‘”t˜B“x 1‘}Ó%Õ&rZ   c                 ó   — t         j                  j                  d«      }d}|j                  ||g«      }|j                  ||g«      }t        ||«      \  }}}}t	        ||z  |j
                  z  |«       t	        ||z  |j
                  z  |«       t	        ||j
                  z  t        |«      «       t	        ||j
                  z  t        |«      «       t        t        j                  t        |«      dk\  «      «       y )Nr`  ro   r   ©
rN   rO   r  r   r   rR   r>   r   r¬   r-   rù  s	            rX   Útest_qz_doublezTestQZ.test_qz_double�
  sÃ   € Ü�i‰i×#Ñ# EÓ*ˆØˆØ�J‰J˜˜1�vÓˆØ�J‰J˜˜1�vÓˆÜ˜!˜Q“x‰ˆˆB��1Ü! ! b¡&¨1¯3©3¡,°Ô2Ü! ! b¡&¨1¯3©3¡,°Ô2Ü! ! a§c¡c¡'¬3¨q«6Ô2Ü! ! a§c¡c¡'¬3¨q«6Ô2Ü”—‘”t˜B“x 1‘}Ó%Õ&rZ   c                 ó4  — t         j                  j                  d«      }d}|j                  ||g«      d|j                  ||g«      z  z   }|j                  ||g«      d|j                  ||g«      z  z   }t        ||«      \  }}}}t	        ||z  |j                  «       j                  z  |«       t	        ||z  |j                  «       j                  z  |«       t	        ||j                  «       j                  z  t        |«      «       t	        ||j                  «       j                  z  t        |«      «       t        t        j                  t        |«      dk\  «      «       t        t        j                  t        |«      j                  dk(  «      «       y )Nr`  ro   rK   r   )rN   rO   r  r   r   rQ   rR   r>   r   r¬   r-   r«   rù  s	            rX   Útest_qz_complexzTestQZ.test_qz_complex�
  s)  € Ü�i‰i×#Ñ# EÓ*ˆØˆØ�J‰J˜˜1�vÓ  C§J¡J°°1¨vÓ$6Ñ!6Ñ6ˆØ�J‰J˜˜1�vÓ  C§J¡J°°1¨vÓ$6Ñ!6Ñ6ˆÜ˜!˜Q“x‰ˆˆB��1Ü! ! b¡&¨1¯6©6«8¯:©:Ñ"5°qÔ9Ü! ! b¡&¨1¯6©6«8¯:©:Ñ"5°qÔ9Ü! ! a§f¡f£h§j¡j¡.´#°a³&Ô9Ü! ! a§f¡f£h§j¡j¡.´#°a³&Ô9Ü”—‘”t˜B“x 1‘}Ó%Ô&Ü”—‘”t˜B“x—}‘}¨Ñ)Ó*Õ+rZ   c                 ó�  — t         j                  j                  d«      }d}|j                  ||g«      d|j                  ||g«      z  z   j                  t        «      }|j                  ||g«      d|j                  ||g«      z  z   j                  t        «      }t        ||«      \  }}}}t        ||z  |j                  «       j                  z  |d¬«       t        ||z  |j                  «       j                  z  |d¬«       t        ||j                  «       j                  z  t        |«      d¬«       t        ||j                  «       j                  z  t        |«      d¬«       t        t        j                  t        |«      dk\  «      «       t        t        j                  t        |«      j                  dk(  «      «       y )Nr`  ro   rK   rx  r   )rN   rO   r  rS   r4   r   r   rQ   rR   r>   r   r¬   r-   r«   rù  s	            rX   Útest_qz_complex64zTestQZ.test_qz_complex64š
  sG  € Ü�i‰i×#Ñ# EÓ*ˆØˆØ�Z‰Z˜˜A˜Ó " S§Z¡Z°°A°Ó%7Ñ"7Ñ7×?Ñ?Ä	ÓJˆØ�Z‰Z˜˜A˜Ó " S§Z¡Z°°A°Ó%7Ñ"7Ñ7×?Ñ?Ä	ÓJˆÜ˜!˜Q“x‰ˆˆB��1Ü! ! b¡&¨1¯6©6«8¯:©:Ñ"5°qÀ!ÕDÜ! ! b¡&¨1¯6©6«8¯:©:Ñ"5°qÀ!ÕDÜ! ! a§f¡f£h§j¡j¡.´#°a³&À!ÕDÜ! ! a§f¡f£h§j¡j¡.´#°a³&À!ÕDÜ”—‘”t˜B“x 1‘}Ó%Ô&Ü”—‘”t˜B“x—}‘}¨Ñ)Ó*Õ+rZ   c                 óü  — t         j                  j                  d«      }d}|j                  ||g«      }|j                  ||g«      }t        ||d¬«      \  }}}}||z  |j	                  «       j
                  z  }	t        |	j                  |«       t        |	j                  d«       ||z  |j	                  «       j
                  z  }
t        |
j                  |«       t        |
j                  d«       t        ||j	                  «       j
                  z  t        |«      «       t        ||j	                  «       j
                  z  t        |«      «       t        t        j                  t        |«      dk\  «      «       y )Nr`  ro   r•   )rÇ  r   )rN   rO   r  r   rQ   rR   r   ru  r«   r>   r   r¬   r-   )ru   rc   rT   rW   rË   rú  rû  rü  r  rt  Úbbs              rX   Útest_qz_double_complexzTestQZ.test_qz_double_complex§
  s  € Ü�i‰i×#Ñ# EÓ*ˆØˆØ�J‰J˜˜1�vÓˆØ�J‰J˜˜1�vÓˆÜ˜!˜Q yÔ1‰ˆˆB��1Ø�‰V�a—f‘f“h—j‘jÑ ˆÜ! "§'¡'¨1Ô-Ü! "§'¡'¨1Ô-Ø�‰V�a—f‘f“h—j‘jÑ ˆÜ! "§'¡'¨1Ô-Ü! "§'¡'¨1Ô-Ü! ! a§f¡f£h§j¡j¡.´#°a³&Ô9Ü! ! a§f¡f£h§j¡j¡.´#°a³&Ô9Ü”—‘”t˜B“x 1‘}Ó%Õ&rZ   c                 óº   — t        j                  g d¢g d¢g d¢g d¢g«      }t        j                  g d¢g d¢g d¢g d¢g«      }t        t        t        ||d	„ ¬
«       y )N)ç333333@ç      )@ç     @AÀg      @©ç333333@ç     €5@g     ÀGÀg      @)r  r2  ç     ÀEÀrº  )çš™™™™™@r·  ç      GÀr·  )rj  rj  rm  rj  )rj  r›   g      Àr  )rj  r%  r¸  rj  )r0  r›   r¸  r&  c                 ó   — |dk(  S )Nr   r–   )ÚarÚaiÚbetas      rX   r²  z,TestQZ.test_qz_double_sort.<locals>.<lambda>Ï
  s
   € ÀbÈAÁg€ rZ   r»  )	rN   r,   r  r  r   r   r   rR   rÊ   )ru   rW   rË   rú  rû  rü  r  r¾  s           rX   Útest_qz_double_sortzTestQZ.test_qz_double_sort·
  sZ   € ô �H‰HÒ-Ú-Ú,Ú,ð.ó /ˆô
 �H‰HÒ+Ú+Ú+Ú+ð-ó .ˆô
 	”j¤" a¨Ñ1MÕNØrZ   c                 ó  — t         j                  j                  d«      }d}|j                  ||g«      }|j                  ||g«      }t        ||d¬«      \  }}}}t	        ||z  |j
                  z  |«       t	        ||z  |j
                  z  |«       t	        ||j
                  z  t        |«      «       t	        ||j
                  z  t        |«      «       t        t        j                  t        |«      dk\  «      «       y )Nr`  ro   Fr�   r   rÿ  rù  s	            rX   r  zTestQZ.test_check_finite  sÆ   € Ü�i‰i×#Ñ# EÓ*ˆØˆØ�J‰J˜˜1�vÓˆØ�J‰J˜˜1�vÓˆÜ˜!˜Q¨UÔ3‰ˆˆB��1Ü! ! b¡&¨1¯3©3¡,°Ô2Ü! ! b¡&¨1¯3©3¡,°Ô2Ü! ! a§c¡c¡'¬3¨q«6Ô2Ü! ! a§c¡c¡'¬3¨q«6Ô2Ü”—‘”t˜B“x 1‘}Ó%Õ&rZ   N)
rŽ   r�   r�   rý  r   r  r  r  r  r  r–   rZ   rX   r÷  r÷  t
  s'   „ ò
'ò
'ò,ò,ò'ò 5FóF
'rZ   r÷  c                   ó^   — e Zd Zed„ «       Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d„ Zd	„ Zd
„ Zd„ Zd„ Zy)Ú	TestOrdQZc                 óF  — t        j                  g d¢g d¢g d¢g d¢g«      }t        j                  g d¢g d¢g d¢g d¢g«      }t        j                  g d	¢g d
¢g d¢g d¢g«      }t        j                  g d¢g d¢g d¢g d¢g«      }t        j                  g d¢g d¢g d¢g d¢g«      }t        j                  g d¢g d¢g d¢g d¢g«      }t        j                  d«      }t        j                  ddg«      }t        j                  ddg«      }	|||||	g| _        |||||	g| _        y )N)yš™™™™5À     €6Ày     ÀJ@     @IÀy     @AÀ     à_@y      @      à?)yq=
×£pÝ¿…ëQ¸Ày      À     ÀBÀy      /À     @M@y      %À      ø¿)y333333@      Àyš™™™™ÙC@š™™™™1Ày      QÀ      )@y      À      À)y      @š™™™™™@yÍÌÌÌÌÌ,@fffff¦E@y     @@À      GÀy      3À     @@À)y      ð?      Àyš™™™™™ù?333333ó?y      À        y              ð¿)yš™™™™™é?333333ã¿y              Ày      À      @y333333Àš™™™™™	À)y      ð?        y333333@ÍÌÌÌÌÌü?y      À      Ày              À)rK   yÍÌÌÌÌÌü¿333333@y              Ày      @      À)r	  r
  r  r­  r  )r  r  r  rº  )r  g      :@r  r·  )rE   rL   éýÿÿÿrE   )rE   rm   éûÿÿÿr;  )rE   rm   éüÿÿÿrm   )rE   rm   r  r;  )r  rj  r›   r›   )r&  r&  r%  r)  )r)  r&  rj  r›   )r©   r&  r,  r)  )r,  r'  r·  r'  )r)  r)  r%  r   )r   rj  r·  r·  )r  rj  r&  r)  rL   r   rE   )rN   r,   r>   r-   rW   rË   )
ÚclsÚA1ÚB1ÚA2ÚB2ÚA3ÚB3ÚA4ÚB4ÚA5s
             rX   Úsetup_classzTestOrdQZ.setup_class(  s(  € ô �X‰Xò $ò&ò%ò'ð(ó )ˆô �X‰XÒDÚDÚDÚDðFó Gˆô �X‰XÒ/Ú.Ú.Ú.ð0ó 1ˆô
 �X‰X’}Ú$Ú$Ú$ð&ó 'ˆô �X‰XÒ'Ú'Ú'Ú'ð)ó *ˆô �X‰XÒ)Ú'Ú'Ú'ð)ó *ˆô �V‰V�A‹YˆÜ�W‰W�a˜�V‹_ˆô �W‰W�a˜�V‹_ˆà�R˜˜R Ð$ˆŒØ�R˜˜R Ð$ˆ�rZ   c           
      ó
  — t        j                  d¬«      5  t        | j                  | j                  «      D ��cg c]  \  }}t        |||¬«      ‘Œ }}}d d d «       t        |«      S c c}}w # 1 sw Y   t        «      S xY w)NÚraiserû   r»  )rN   rü   ÚziprW   rË   r    Útuple)ru   r9   ÚAiÚBiÚrets        rX   Ú	qz_decompzTestOrdQZ.qz_decomp_  sj   € Ü�[‰[˜WÔ%ñ 	OÜ:=¸d¿f¹fÀdÇfÁfÓ:M×N±°°B”5˜˜R dÖ+ÐNˆCÑN÷	Oä�S‹zÐùó O÷	Oä�S‹zÐús   —$A/»A)ÁA/Á)A/Á/Bc
           	      óh  — t        j                  |j                  Ž }
t        ||j                  j                  «       z  |
«       t        |	|	j                  j                  «       z  |
«       t        ||z  ||	z  «       t        ||z  ||	z  «       t        t        j                  |d«      t        j                  |j                  «      «       t        t        j                  |d«      t        j                  |j                  «      «       t        |j                  d   «      D �]%  }|dkD  r|||dz
  f   dk7  rŒ||j                  d   dz
  k  rŠ||dz   |f   dk7  r}t        |||dz   …||dz   …f   |||dz   …||dz   …f   «      \  }}|d   j                  dk  r|ddg   }|||dz    |||dz    z  }|d   j                  dk  r|ddg   }t        ||«       Œ¶||   dk(  r+||   dk(  r#t        |||f   d«       t        |||f   d«       Œé||   dk(  rt        |||f   d«       �Œt        |||f   |||f   z  ||   ||   z  «       �Œ( t        |«      }d}t        |j                  d   «      D ]A  } |t        j                  ||   g«      t        j                  ||   g«      «      }|s|rJ ‚|}ŒC y )Nr³   rœ   r   rE   rL   T)rN   r>   r8   r   rR   rQ   r   Útrilr1   r¢   r
   r«   r   r   r*   r,   )ru   rW   rË   r9   rú  rû  Úalphar  rü  r  ÚIdr§   Úevalsrm  ÚtmpÚsortfunÚlastsortÚcursorts                     rX   ÚcheckzTestOrdQZ.checkd  s   € Ü�V‰V�Q—W‘WÐˆä! ! a§c¡c§h¡h£j¡.°"Ô5Ü! ! a§c¡c§h¡h£j¡.°"Ô5ä! ! b¡&¨!¨a©%Ô0Ü! ! b¡&¨!¨a©%Ô0äœ2Ÿ7™7 2 r›?¬B¯H©H°R·X±XÓ,>Ô?Üœ2Ÿ7™7 2 r›?¬B¯H©H°R·X±XÓ,>Ô?ä�q—w‘w˜q‘zÓ"ó 	MˆAð �1Šu˜˜1˜a !™e˜8™¨Ò)Øà�2—8‘8˜A‘; ‘?Ò" r¨!¨a©%°¨(¡|°qÒ'8Ü˜r ! A¨¡E '¨1¨Q°©U¨7Ð"2Ñ3°R¸¸!¸a¹%¸ÀÀ1ÀqÁ5ÀÐ8HÑ5IÓJ‘��qð ˜‘8—=‘= 1Ò$Ø! 1 a &™M�EØ˜A˜a !™e�n T¨!¨A°©E ]Ñ2�Ø�q‘6—;‘; ’?Ø˜q !˜f™+�CÜ)¨%°Õ5à˜‘8˜q’= T¨!¡W°¢\Ü   A q D¡¨1Ô-Ü   A q D¡¨1Õ-Ø˜!‘W ’\Ü   A q D¡¨1Ö-ä'¨¨1¨a¨4©°°A°q°D±Ñ(9¸5À¹8ÀDÈÁGÑ;KÖLð/	Mô0 # 4Ó(ˆØˆÜ�q—w‘w˜q‘zÓ"ò 	ˆAÙœbŸh™h¨¨a© zÓ2´B·H±H¸dÀ1¹g¸YÓ4GÓHˆGñ Ù"Ð"�{Ø‰Hñ	rZ   c                 ó¤   — | j                  |«      }t        || j                  | j                  «      D ]  \  }}} | j                  |||g|¢­Ž  Œ y rd  )r0  r+  rW   rË   r:  )ru   r9   r/  Úretir-  r.  s         rX   Ú	check_allzTestOrdQZ.check_all’  sM   € Ø�n‰n˜TÓ"ˆä  T§V¡V¨T¯V©VÓ4ò 	,‰LˆD�"�bØˆD�J‰J�r˜2˜tÐ+ dÔ+ñ	,rZ   c                 ó&   — | j                  d«       y )Nr¬  ©r=  rf  s    rX   Útest_lhpzTestOrdQZ.test_lhp˜  ó   € Ø�‰�uÕrZ   c                 ó&   — | j                  d«       y )Nr®  r?  rf  s    rX   Útest_rhpzTestOrdQZ.test_rhp›  rA  rZ   c                 ó&   — | j                  d«       y )Nr¯  r?  rf  s    rX   Útest_iuczTestOrdQZ.test_iucž  rA  rZ   c                 ó&   — | j                  d«       y )Nr°  r?  rf  s    rX   Útest_ouczTestOrdQZ.test_ouc¡  rA  rZ   c                 ó,   — d„ }| j                  |«       y )Nc                 óˆ   — t        j                  | t        ¬«      }|dk7  }d|| <   | |   ||   z  j                  dk(  ||<   |S ©Nr‡   r   F©rN   Ú
empty_likeÚboolr«   ©rû  rÒ  r€  Únonzeros       rX   r9   z TestOrdQZ.test_ref.<locals>.sort¦  óL   € Ü—-‘- ¬Ô.ˆCØ˜A‘vˆGØ!ˆC��‰MØ˜g™J q¨¡zÑ1×7Ñ7¸1Ñ<ˆC�‰LØˆJrZ   r?  ©ru   r9   s     rX   Útest_refzTestOrdQZ.test_ref¤  ó   € ò	ð 	�‰�tÕrZ   c                 ó,   — d„ }| j                  |«       y )Nc                 óˆ   — t        j                  | t        ¬«      }|dk7  }d|| <   | |   ||   z  j                  dk7  ||<   |S rJ  rK  rN  s       rX   r9   z TestOrdQZ.test_cef.<locals>.sort±  rP  rZ   r?  rQ  s     rX   Útest_cefzTestOrdQZ.test_cef¯  rS  rZ   c                 ó`  — t        | j                  d   | j                  d   d¬«      } | j                  | j                  d   | j                  d   dg|¢­Ž  t        | j                  d   | j                  d   d¬«      } | j                  | j                  d   | j                  d   dg|¢­Ž  y )NrE   rL   r¬  r»  )r    rW   rË   r:  )ru   r/  s     rX   Útest_diff_input_typeszTestOrdQZ.test_diff_input_typesº  sŒ   € Ü�D—F‘F˜1‘I˜tŸv™v a™y¨uÔ5ˆØˆ�
‰
�4—6‘6˜!‘9˜dŸf™f Q™i¨Ð5°Ó5ä�D—F‘F˜1‘I˜tŸv™v a™y¨uÔ5ˆØˆ�
‰
�4—6‘6˜!‘9˜dŸf™f Q™i¨Ð5°Ô5rZ   c                 óº  — t        j                  d«      }t        j                  ddg«      }dddgfdddgfdddgfdddgfg}t        j                  d«      }t        j                  d	d
g«      }dddgfdddgfdddgfdddgfg}t        j                  d«      }t        j                  ddg«      }ddt         j                  gfddt         j                  gfdt         j                  dgfg}	t        j                  d«      }
t        j                  ddg«      }ddt         j                  gfddt         j                  gfdt         j                  dgfg}t        j                  ddg«      }t        j                  ddg«      }ddt         j                  gfddt         j                  gfg}||||
|g}|||||g}|||	||g}t        |||«      D ]Ž  \  }}}|D ]ƒ  \  }}t        |||¬«      \  }}}}}}|dk(  }|dk(  }t        j                  |«      }t         j                  |||z  <   t         j                  || |z  <   ||    ||    z  || <   t        ||«       Œ… Œ� y )NrL   r³   r\   r¬  r­  r®  r¯  r°  y       À      ð?y      à?      à?yš™™™™™Ù¿š™™™™™É¿ù      ð?      ð¿r   rE   r»  )	rN   r>   r-   r¼   rˆ  r+  r    rL  r   )ru   r  r   Ú	expected1r!  r"  Ú	expected2r#  r$  Ú	expected3r%  r&  Ú	expected4r'  ÚB5Ú	expected5rW   rË   Úexpectedr-  r.  Ú	expectediÚsortstrÚexpected_eigvalsrm  r3  r  ÚazeroÚbzerorû  s                                 rX   Útest_sort_explicitzTestOrdQZ.test_sort_explicitÁ  s   € ô �V‰V�A‹YˆÜ�W‰W�b˜#�YÓˆØ˜d A˜YÐ'Ø˜a ˜YÐ'Ø˜d A˜YÐ'Ø˜a ˜YÐ'ð)ˆ	ô �V‰V�A‹YˆÜ�W‰W�g˜zÐ*Ó+ˆØ˜k¨>Ð:Ð;Ø˜n¨kÐ:Ð;Ø˜k¨>Ð:Ð;Ø˜n¨kÐ:Ð;ð=ˆ	ô
 �V‰V�A‹YˆÜ�W‰W�a˜�V‹_ˆØ˜c¤2§6¡6˜]Ð+Ø˜c¤2§6¡6˜]Ð+ØœbŸf™f c˜]Ð+ð-ˆ	ô �V‰V�A‹YˆÜ�W‰W�b˜!�WÓˆØ˜d¤B§F¡F˜^Ð,Ø˜d¤B§F¡F˜^Ð,ØœbŸf™f d˜^Ð,ð.ˆ	ô �W‰W�a˜�V‹_ˆÜ�W‰W�a˜�XÓˆà˜a¤§¡˜[Ð)Ø˜a¤§¡˜[Ð)ð+ˆ	ð ��R˜˜RÐ ˆØ��R˜˜RÐ ˆØ˜y¨)°YÀ	ÐJˆÜ!$ Q¨¨8Ó!4ò 		5ÑˆB��IØ-6ò 5Ñ)�Ð)Ü*/°°B¸WÔ*EÑ'��1�e˜T 1 aØ !™�Ø ™�Ü—M‘M %Ó(�Ü#%§6¡6��%˜%‘-Ñ Ü$&§F¡F��5�&˜5‘.Ñ!Ø! 5 &™M¨$°¨v©,Ñ6��5�&‘	ÜÐ 0°!Õ4ñ5ñ		5rZ   N)rŽ   r�   r�   Úclassmethodr(  r0  r:  r=  r@  rC  rE  rG  rR  rV  rX  rg  r–   rZ   rX   r  r  '  sM   „ Øñ4%ó ð4%òlò
,ò\,òòòòò	ò	ò6ó-5rZ   r  c                   ó†   — e Zd Zej                  j                  d«      d„ «       Zej                  j                  d„ «       Zy)ÚTestOrdQZWorkspaceSizero   c                 ó*  — t         j                  j                  d«      }d}t         j                  t         j                  fD ]V  }|j                  ||f«      j                  |«      }|j                  ||f«      j                  |«      }t        ||d„ d¬«      }ŒX t         j                  t         j                  fD ]V  }|j                  ||f«      j                  |«      }|j                  ||f«      j                  |«      }t        ||d„ d¬«      }ŒX y )Nr`  éÊ   c                 ó   — | |k  S rd  r–   ©r3  r  s     rX   r²  z7TestOrdQZWorkspaceSize.test_decompose.<locals>.<lambda>û  ó
   € °U¸T±\€ rZ   ru  rÊ  c                 ó   — | |k  S rd  r–   rn  s     rX   r²  z7TestOrdQZWorkspaceSize.test_decompose.<locals>.<lambda>  ro  rZ   r•   )	rN   rO   r  r3   r­   rS   r    rª   r4   )ru   rc   r  ÚddtyperW   rË   rm  s          rX   Útest_decomposez%TestOrdQZWorkspaceSize.test_decomposeò  sñ   € ä�i‰i×#Ñ# EÓ*ˆØˆä—z‘z¤2§:¡:Ð.ò 	%ˆFØ—
‘
˜A˜q˜6Ó"×)Ñ)¨&Ó1ˆAØ—
‘
˜A˜q˜6Ó"×)Ñ)¨&Ó1ˆAä�a˜Ñ!AØ#ô%‰Að		%ô —}‘}¤b§l¡lÐ3ò 	(ˆFØ—
‘
˜A˜q˜6Ó"×)Ñ)¨&Ó1ˆAØ—
‘
˜A˜q˜6Ó"×)Ñ)¨&Ó1ˆAÜ�a˜Ñ!AØ&ô(‰Añ	(rZ   c                 ó~  — t         j                  j                  d«      }d}t         j                  t         j                  t         j
                  t         j                  fD ][  }|j                  ||f«      j                  |«      }|j                  ||f«      j                  |«      }t        ||d¬«      \  }}}}	}
}Œ] y )Nr`  rl  r°  r»  )	rN   rO   r  r3   r­   rª   r4   rS   r    )ru   rc   r  rq  rW   rË   ÚSrR   r3  r  ÚUr3  s               rX   Útest_decompose_oucz)TestOrdQZWorkspaceSize.test_decompose_ouc  s˜   € ä�i‰i×#Ñ# EÓ*ˆØˆä—z‘z¤2§:¡:¬r¯}©}¼b¿l¹lÐKò 	>ˆFØ—
‘
˜A˜q˜6Ó"×)Ñ)¨&Ó1ˆAØ—
‘
˜A˜q˜6Ó"×)Ñ)¨&Ó1ˆAÜ&+¨A¨q°uÔ&=Ñ#ˆAˆq�%˜˜q¡!ñ	>rZ   N)	rŽ   r�   r�   r‘   r’   Ú	fail_slowrr  r~  rv  r–   rZ   rX   rj  rj  ñ  sA   „ Ø‡[�[×Ñ˜1Óñ(ó ð(ð" ‡[�[×Ññ>ó ñ>rZ   rj  c                   ó   — e Zd Zd„ Zy)ÚTestDatacopiedc                 ó`  ‡— ddl m} t        ddgddgg«      }t        |«      Š|j	                  «       }|j                  «       } G ˆfd„d«      } G ˆfd„d	«      } |«       } |«       }|d
f‰d
f|df|d
f|d
f|d
ffD ].  \  }	}
t        |	«      }t         |||	«      |
t        |	«      ¬«       Œ0 y )Nr   )Ú_datacopiedrE   rL   rm   c                   ó   •— e Zd Zdˆ fd„	Zy)ú-TestDatacopied.test_datacopied.<locals>.Fake1Nc                 ó   •— ‰S rd  r–   )ru   rV   r{   rW   s      €rX   Ú	__array__z7TestDatacopied.test_datacopied.<locals>.Fake1.__array__  s   ø€ Ø�rZ   )NN)rŽ   r�   r�   r  r‰  s   €rX   ÚFake1r}    s   ø„ örZ   r€  c                   ó(   •— e Zd ZW ° j                  Zy)ú-TestDatacopied.test_datacopied.<locals>.Fake2N)rŽ   r�   r�   Ú__array_interface__r‰  s   €rX   ÚFake2r‚    s   ø„ Ù"#×"7Ñ"7ÑrZ   r„  FTrÅ   )Úscipy.linalg._decompr{  r@   r;   Útolistr{   r   Úrepr)ru   r{  r  ÚLÚM2r€  r„  ÚF1ÚF2ÚitemÚstatusÚarrrW   s               @rX   Útest_datacopiedzTestDatacopied.test_datacopied  s¿   ø€ Ý4ä�Q˜�F˜Q ˜FÐ#Ó$ˆÜ�A‹JˆØ�H‰H‹JˆØ�V‰V‹Xˆ÷	ó 	÷	8ó 	8ñ ‹WˆÙ‹Wˆà ˜Z¨!¨U¨°a¸°YØ  %˜[¨2¨u¨+¸¸E°{ðDò 	-‰LˆD�&ä˜$“-ˆCÜ™ S¨$Ó/°Ü!% d£ö-ñ	-rZ   N)rŽ   r�   r�   r�  r–   rZ   rX   ry  ry    s   „ ó-rZ   ry  c                  óò   — t        dt        j                  ¬«      } t        j                  | j                  ddt
        ¬«      }|j                  d«      }t        |d¬«       t        |j                  d¬«       y	)
z4Check linalg works with non-aligned memory (float32)i’  r‡   rL   r  ©ÚoffsetÚcountrV   ©ri  ri  TrL  N)	r2   rN   Úuint8Ú
frombufferÚdatar3   r  r
   rR   ©rv   r  s     rX   Útest_aligned_mem_floatr™  *  sT   € ô 	ˆsœ"Ÿ(™(Ô#€Aô 	�‰�a—f‘f Q¨c¼ÔA€AØ	�	‰	�(Ó€Aäˆ�tÕÜˆ�‰˜ÖrZ   Úppc64lezcrashes on ppc64lec                  óò   — t        dt        j                  ¬«      } t        j                  | j                  ddt
        ¬«      }|j                  d«      }t        |d¬«       t        |j                  d¬«       y	)
z4Check linalg works with non-aligned memory (float64)i$  r‡   r;  r  r‘  r”  TrL  N)	r2   rN   r•  r–  r—  r”   r  r
   rR   r˜  s     rX   Útest_aligned_memrœ  7  sT   € ô
 	ˆsœ"Ÿ(™(Ô#€Aô 	�‰�a—f‘f Q¨c¼Ô?€AØ	�	‰	�(Ó€Aäˆ�tÕÜˆ�‰˜ÖrZ   c                  óò   — t        dt        j                  ¬«      } t        j                  | j                  ddt
        ¬«      }|j                  d«      }t        |d¬«       t        |j                  d¬«       y	)
z>Check that complex objects don't need to be completely alignediH  r‡   r¦  r  r‘  r”  TrL  N)	r1   rN   r•  r–  r—  r•   r  r
   rR   r˜  s     rX   Útest_aligned_mem_complexrž  F  sT   € ô 	ˆdœ"Ÿ(™(Ô#€Aô 	�‰�a—f‘f Q¨c¼ÔA€AØ	�	‰	�(Ó€Aäˆ�tÕäˆ�‰˜ÖrZ   c                 ó‚  — t        |«      }t        t        |«      «      D �]  }|d d  }t        ||   t        j
                  «      sŒ't	        j                  ||   j                  ||   j                  j                  z  dz   t        j                  ¬«      }t	        j                  |j                  d||   j                  ||   j                  ¬«      }|j                  ||   j                  «      }||   |d<   |||<    | |i |¤Ž t        ||   j                  «      dkD  s�Œ||   j                  ||<    | |i |¤Ž �Œ y )Nr¦  r‡   r;  r‘  .rE   )rS  r¢   r_   r]   rN   r=   r1   rÈ   rV   rp  r•  r–  r—  r  r8   rR   )Úfuncr‚  r@  r§   rv   rt  s         rX   Úcheck_lapack_misalignedr¡  T  s  € Ü�‹:€DÜ”3�t“9Óó #ˆØ‘ˆGˆÜ�a˜‘dœBŸJ™JÕ'ä—‘˜!˜A™$Ÿ)™) A a¡D§J¡J×$7Ñ$7Ñ7¸Ñ9ÄÇÁÔJˆBÜ—‘˜rŸw™w¨q¸¸!¹¿	¹	Ø%& q¡T§Z¡Zô1ˆBà—‘˜A˜a™DŸJ™JÓ'ˆBØ˜‘dˆBˆs‰GØˆAˆa‰DÙ�!Ð�vÒÜ�1�Q‘4—:‘:‹ Ô"Ø˜‘t—v‘v��!‘Ù�aÐ"˜6Ô"ñ#rZ   z0Ticket #1152, triggers a segfault in rare cases.)Úrunra  c                  ó  — t        j                  dt        ¬«      } t        j                  d«      j	                  d«      }t        j                  dt         j
                  ¬«      }t        j                  |j                  ddt        ¬«      }|j	                  d«      }t        j                  d«      }t        |«      \  }}t        |ft        d¬	«      ft        |ft        d¬	«      ft        |ft        d¬	«      ft        |ft        d¬	«      ft        ||f|ft        d¬
«      ft        ||ft        dd¬«      ft         | ft        d¬	«      ft         |ft        d¬	«      ft         |ft        d¬	«      ft"        |ft        «       ft"        |ft        d¬	«      ft$        | ft        d¬	«      ft&        |ft        d¬	«      ft(        |ft        d¬	«      ft*        |ft        d¬	«      ft,        |ft        d¬	«      ffD ]  \  }}}t/        |||«       Œ y )Nri  r‡   r  r”  i N  r;  r‘  TrL  )rY  r[  )rN   r>   r”   r2   r  r•  r–  r—  rÇ   r   r
   r=  r   r   r   r   r   r   r   r   r   r   r   r¡  )	r  ÚRrt  r°   ÚLUÚpivr   r‚  r@  s	            rX   Útest_lapack_misalignedr§  f  s½  € ô 	�‰ˆrœÔ€AÜ
�	‰	�#‹×Ñ˜xÓ(€AÜ
�	‰	�%œrŸx™xÔ(€AÜ
�‰�a—f‘f Q¨c¼Ô?€AØ	�	‰	�(Ó€AÜ
�‰�‹€AÜ˜‹l�G€Bˆä�1�$œ¨Ô.Ð/Ü�q�dœD¨TÔ2Ð3Ü�!�”t¨Ô-Ð.Ü˜˜œd¨tÔ4Ð5Ü˜˜S˜	 1�~¤t¸Ô'=Ð>Ü�Q˜�FœD¨T¸tÔDÐEÜ�1�$œ¨Ô.Ð/Ü�1�$œ¨Ô.Ð/Ü�1�$œ¨Ô.Ð/Ü�q�dœD›FÐ#Ü�q�dœD¨TÔ2Ð3Ü˜�tœT¨dÔ3Ð4Ü�!�”t¨Ô-Ð.Ü�!�”t¨Ô-Ð.Ü˜!˜œt°Ô5Ð6Ü�Q�Dœ$¨4Ô0Ð1ð!!ò 4Ñˆˆt�Vô$ 	   d¨FÕ3ñ%4rZ   c                   ól   — e 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y)ÚTestOverwritec                 óJ   — t        t        dg«       t        t        ddg«       y ©Nr  )r?   r
   rf  s    rX   Útest_eigzTestOverwrite.test_eigˆ  s   € ÜœC & Ô*ÜœC &¨&Ð!1Õ2rZ   c                 óJ   — t        t        dg«       t        t        ddg«       y r«  )r?   r   rf  s    rX   Ú	test_eighzTestOverwrite.test_eighŒ  s   € ÜœD 6 (Ô+ÜœD 6¨6Ð"2Õ3rZ   c                 ó&   — t        t        dg«       y ©Nr:  )r?   r   rf  s    rX   r¾  zTestOverwrite.test_eig_banded�  ó   € ÜœJ¨¨Õ1rZ   c                 ó&   — t        t        dg«       y r«  )r?   r   rf  s    rX   Útest_eigvalszTestOverwrite.test_eigvals“  ó   € ÜœG f XÕ.rZ   c                 ó&   — t        t        dg«       y r«  )r?   r   rf  s    rX   Útest_eigvalshzTestOverwrite.test_eigvalsh–  s   € ÜœH v hÕ/rZ   c                 ó&   — t        t        dg«       y r°  )r?   r   rf  s    rX   r´  z!TestOverwrite.test_eigvals_banded™  s   € ÜœN¨V¨HÕ5rZ   c                 ó&   — t        t        dg«       y r«  )r?   r   rf  s    rX   Útest_hessenbergzTestOverwrite.test_hessenbergœ  r±  rZ   c                 ó&   — t        t        dg«       y r«  )r?   r   rf  s    rX   Útest_lu_factorzTestOverwrite.test_lu_factorŸ  s   € ÜœI¨ xÕ0rZ   c                 óx   ‡— t        j                  g d¢g d¢g d¢g«      }t        |«      Št        ˆfd„dg«       y )Nrl   rI  )r  r¦  r¦  c                 ó   •— t        ‰| «      S rd  )r   )r°   Úxlus    €rX   r²  z-TestOverwrite.test_lu_solve.<locals>.<lambda>¥  s   ø€ ¤h¨s°AÓ&6€ rZ   )rm   )rN   r,   r   r?   )ru   rû  r¾  s     @rX   Útest_lu_solvezTestOverwrite.test_lu_solve¢  s.   ø€ Ü�H‰H’i¢ªIÐ6Ó7ˆÜ˜‹lˆÜÓ6¸¸Õ?rZ   c                 ó&   — t        t        dg«       y r«  )r?   r   rf  s    rX   Útest_luzTestOverwrite.test_lu§  ó   € ÜœB  Õ)rZ   c                 ó&   — t        t        dg«       y r«  )r?   r   rf  s    rX   Útest_qrzTestOverwrite.test_qrª  rÂ  rZ   c                 ó&   — t        t        dg«       y r«  )r?   r   rf  s    rX   Útest_rqzTestOverwrite.test_rq­  rÂ  rZ   c                 ó&   — t        t        dg«       y r«  )r?   r   rf  s    rX   Ú
test_schurzTestOverwrite.test_schur°  s   € ÜœE F 8Õ,rZ   c                 ó`   — t        d„ dgt        j                  t        j                  g¬«       y )Nc                 ó   — t        | d«      S )Nr•   )r   ©rv   s    rX   r²  z2TestOverwrite.test_schur_complex.<locals>.<lambda>´  s   € ¤e¨A¨yÓ&9€ rZ   r  )Údtypes)r?   rN   r3   r­   rf  s    rX   Útest_schur_complexz TestOverwrite.test_schur_complex³  s!   € ÜÑ9¸F¸8Ü$&§J¡J´·
±
Ð#;ö	=rZ   c                 óB   — t        t        dg«       t        d„ dg«       y )Nr  c                 ó   — t        | d¬«      S )Nr�  rå  )r   rË  s    rX   r²  z(TestOverwrite.test_svd.<locals>.<lambda>¹  s   € ¤c¨!¸7Ô&C€ rZ   )r?   r   rf  s    rX   Útest_svdzTestOverwrite.test_svd·  s   € ÜœC & Ô*ÜÑCÀfÀXÕNrZ   c                 ó&   — t        t        dg«       y r«  )r?   r   rf  s    rX   Útest_svdvalszTestOverwrite.test_svdvals»  r´  rZ   N)rŽ   r�   r�   r¬  r®  r¾  r³  r¶  r´  r¹  r»  r¿  rÁ  rÄ  rÆ  rÈ  rÍ  rÐ  rÒ  r–   rZ   rX   r©  r©  ‡  sT   „ ò3ò4ò2ò/ò0ò6ò2ò1ò@ò
*ò*ò*ò-ò=òOó/rZ   r©  c                 óX  — t        j                  | dft        ¬«      j                  |«      }t        j                  |«      j
                  }d|z  }t        |«      }t        |j                  | df«       t        ||j                  «       |d¬«       t        |j                  «      }t        |j                  d«       t        ||j                  «       |¬«       | d	kD  rÎ|sËt         j                  j                  d«      }|j                  | d	«      |j                  d	| «      z  }|d
|j                  | d«      z  |j                  d| «      z  z   }|j                  |«      }t        |d¬«      }t        |j                  | d	f«       t        |d¬«      }t        |j                  | df«       y y y )NrL   r‡   r#  rE   g³zê]Ê‚>r$  ©rL   rE   r+  ro   ç-Cëâ6?çü©ñÒMbP?©Úrcondç�íµ ÷Æ°>rp   )rN   rÇ   r”   rS   r%  r&  r   r   r8   r   ÚmeanrR   rO   r  rP   )rT   rV   Úskip_bigÚXr&  rÄ   ÚYrc   s           rX   Ú_check_orthrÞ  ¿  sL  € Ü
�‰��A�œeÔ$×+Ñ+¨EÓ2€Aä
�(‰(�5‹/×
Ñ
€CØ
�‰*€CäˆQ‹€AÜ�—‘˜1˜a˜&Ô!Ü�A�q—v‘v“x c°Õ7äˆQ�S‰S‹	€AÜ�—‘˜&Ô!Ü�A�q—v‘v“x cÕ*àˆ1‚u‘XÜ�i‰i×#Ñ# AÓ&ˆØ�H‰H�Q˜‹N˜SŸX™X a¨›^Ñ+ˆØ��s—x‘x  1“~Ñ%¨¯©°°A«Ñ6Ñ6ˆØ�H‰H�U‹Oˆä�˜$ÔˆÜ�Q—W‘W˜q !˜fÔ%ä�˜$ÔˆÜ�Q—W‘W˜q %˜jÕ)ð €urZ   r¦  z"test only on 64-bit, else too slowc                  ó|   — d} 	 t        | t        j                  d¬«       y # t        $ r}t	        d«      |‚d }~ww xY w)Ni€–˜ T)rÛ  z.memory error perhaps caused by orth regression)rÞ  rN   r­   ÚMemoryErrorÚAssertionError)rT   râ  s     rX   Útest_orth_memory_efficiencyrâ  Ú  sA   € ð 	€AðÜ�A”r—z‘z¨DÖ1øÜò ÜØ<ó
àð	ûðús   „! ¡	;ª6¶;c                  óÜ   — t         j                  t         j                  t         j                  t         j                  g} g d¢}t        j                  | |«      D ]  \  }}t        ||«       Œ y )N©rE   rL   rm   ri  r  )rN   r3   r­   r4   rª   Ú	itertoolsÚproductrÞ  )rÌ  rX  r„   rT   s       rX   Ú	test_orthrç  ë  sO   € Ü�j‰jœ"Ÿ*™*¤b§l¡l´B·M±MÐB€FÚ€EÜ×"Ñ" 6¨5Ó1ò ‰ˆˆAÜ�A�rÕñrZ   r„   c                 óà   — t        j                  d| ¬«      }t        j                  d| ¬«      }t        |«      }|j                  t        |«      j                  k(  sJ ‚|j
                  dk(  sJ ‚y ©Nr†   r‡   rL   )rN   rŒ   r>   r   rV   r8   )r„   rv   ru  Úoas       rX   Útest_orth_emptyrë  ñ  sW   € ä
�‰�˜rÔ"€AÜ	�‰�˜Ô	€Bä	ˆa‹€BØ�8‰8”t˜B“x—~‘~Ò%Ð%Ð%Ø�8‰8�vÒÐÑrZ   c                   óT  — e Zd Zd„ Zej
                  j                  deee	j                  ee	j                  g«      d„ «       Zej
                  j                  dddg«      ej
                  j                  dddg«      ej
                  j                  dd	d
g«      d„ «       «       «       Zy)ÚTestNullSpacec                 óÒ  — t         j                  j                  d«      }t         j                  t         j                  t         j
                  t         j                  g}g d¢}t        j                  ||«      D �]ì  \  }}t        j                  d|f|¬«      }t        j                  |«      j                  }d|z  }t        |«      }	t        |	j                  ||dz
  f«       t        ||	z  d|¬«       t        |j                   «      }	t        |	j                  d«       t        |j                   |	z  d|¬«       |j#                  d|dz  z   |«      }t        |«      }	t        |	j                  ||dz
  |dz  z
  f«       t        ||	z  d|¬«       |d	kD  s�Œt         j                  j                  d«      }|j%                  |d	«      |j%                  d	|«      z  }|d
|j%                  |d«      z  |j%                  d|«      z  z   }|j'                  |«      }t        |d¬«      }	t        |	j                  ||d	z
  f«       t        |d¬«      }	t        |	j                  ||dz
  f«       �Œï y )NrE   rä  rL   r‡   r#  r   r+  rÔ  ro   rÕ  rÖ  r×  rÙ  rp   )rN   rO   r  r3   r­   r4   rª   rå  ræ  rÇ   r%  r&  r%   r   r8   r   rR   ÚrandnrP   rS   )
ru   rc   rÌ  rX  r„   rT   rÜ  r&  rÄ   rÝ  s
             rX   Útest_null_spacezTestNullSpace.test_null_spaceü  sé  € Ü�i‰i×#Ñ# AÓ&ˆä—*‘*œbŸj™j¬"¯,©,¼¿¹ÐFˆÚ"ˆä×&Ñ& v¨uÓ5ó 	2‰EˆB�Ü—‘˜˜A˜ bÔ)ˆAä—(‘(˜2“,×"Ñ"ˆCØ˜‘*ˆCä˜1“ˆAÜ˜Ÿ™ 1 a¨¡c (Ô+Ü˜A ™E 1¨3Õ/ä˜1Ÿ3™3“ˆAÜ˜Ÿ™ &Ô)Ü˜AŸC™C !™G Q¨SÕ1à—	‘	˜!˜a ™d™( AÓ&ˆAÜ˜1“ˆAÜ˜Ÿ™ 1 a¨!¡e¨a°©d¡lÐ"3Ô4Ü˜A ™E 1¨3Õ/à�1ŒuÜ—i‘i×+Ñ+¨AÓ.�Ø—H‘H˜Q “N S§X¡X¨a°£^Ñ3�Ø˜˜sŸx™x¨¨1›~Ñ-°·±¸¸A³Ñ>Ñ>�Ø—H‘H˜R“L�ä˜q¨Ô-�Ü˜QŸW™W q¨!¨a©% jÔ1ä˜q¨Ô-�Ü˜QŸW™W q¨!¨a©% jÖ1ñ;	2rZ   r„   c                 óà   — t        j                  d|¬«      }t        j                  d|¬«      }t        |«      }|j                  dk(  sJ ‚|j
                  t        |«      j
                  k(  sJ ‚y ré  )rN   rŒ   r>   r%   r8   rV   )ru   r„   rv   ru  Únsas        rX   Útest_null_space_emptyz#TestNullSpace.test_null_space_empty!  sY   € ä�H‰H�V 2Ô&ˆÜ�V‰V�A˜RÔ ˆÜ˜‹mˆà�y‰y˜FÒ"Ð"Ð"Ø�y‰yœJ r›N×0Ñ0Ò0Ð0Ñ0rZ   rI  TFr‚   ræ  r9  r�  c                 ó(  — t         j                  j                  d«      }d}|j                  d|dz  z   |f«      }t	        |j                  «       |||¬«      }t        ||z  dt        j                  |j                  «      j                  dz  ¬«       y )	Nl   š'–YþœeN ri  rE   rL   )rI  r‚   ræ  r   r  r+  )
rN   rO   r<  Ústandard_normalr%   r{   r   r%  rV   r&  )ru   rI  r‚   ræ  rc   rT   rÜ  rÝ  s           rX   Útest_null_space_optionsz%TestNullSpace.test_null_space_options*  s{   € ô �i‰i×#Ñ#Ð$;Ó<ˆØˆØ×Ñ  Q¨¡T¡¨1 Ó.ˆÜ�q—v‘v“x¨[À|Ø%2ô4ˆä˜˜A™˜q¤r§x¡x°·±Ó'8×'<Ñ'<¸SÑ'@ÖArZ   N)rŽ   r�   r�   rð  r‘   r’   r“   r^   r”   rN   r3   r•   r4   ró  rö  r–   rZ   rX   rí  rí  û  s¨   „ ò#2ðJ ‡[�[×Ñ˜T C¨°·
±
¸GÀRÇ\Á\Ð#RÓSñ1ó Tð1ð ‡[�[×Ñ˜]¨T°5¨MÓ:Ø‡[�[×Ñ˜^¨d°E¨]Ó;Ø‡[�[×Ñ˜_¨w¸Ð.@ÓAñBó Bó <ó ;ñBrZ   rí  c            	      óB  — t        dt        «      } | d d …d d…f   }| d d …dd …f   }t        t        ||«      t        j
                  dz  gdz  d¬«       t        t        ||«      t        j
                  dz  gdz  d¬«       ||fD ]:  }t        t        ||«      t	        j                  |j                  d   «      d¬«       Œ< t	        j                  g d¢g d¢g d	¢g d
¢g«      }d}t        t        |d d …d d…f   |d d …dd …f   «      d   |d¬«       t        t        |d d …dd …f   |d d …d d…f   «      d   |d¬«       d}t        t        |d d …d d…f   |d d …dgf   «      |d¬«       t        t        |d d …dgf   |d d …d d…f   «      |d¬«       d}t        t        |d d …d d…f   |d d …dgf   «      |d¬«       t        t        |d d …dgf   |d d …d d…f   «      |d¬«       d}t        t        |d d …d d…f   |d d …dd …f   «      |dgd¬«       t        t        t        |d   |«       t        t        t        ||d   «       t        t        t        |d d |«       t	        j                  g d¢g d¢g d¢g d¢g d¢g«      }t	        j                  g d¢g d¢g d¢g d¢g d¢g«      }t	        j                  t        j
                  dz  ddg«      }t        t        ||«      |d¬«       dgdgg}ddgddgg}t        t        ||«      dd¬«       t        t        ||«      dd¬«       t	        j                  d«      }t	        j                  d«      }t        t        ||«      t	        j                  d«      «       t	        j                  d«      }t	        j                  d«      }t        t        ||«      t	        j                  d«      «       t	        j                  d«      }t	        j                  d«      }t        t        ||«      t	        j                  d«      «       y ) Nr¦  rm   r%  r*  r+  rE   )gñ�·‘4á?gVðR¦fÔ?g8Ô!“Ž @g•ÂÐë‚6ç?)gN÷$Ð—Wý?gÂã�Jìô¿gÑ~ý™Î'@gÊ÷3:]$°¿)g¢v•MÀg© çÀø¿Û¿g÷PT#™õ¿g eŸ‚,ßæ?)gºßÎ€ì–ë?gÜò¥+�íÕ?gòNô…G@g˜êS<Ê¿g™"Ó	´÷?rL   r   rz  r¼  g¦®LÔ0âç?g•Ä¹»°-ß?gyßôv†Õ?rœ   r   )r   rE   r   )r   r   rE   r   rn  rZ  r©   r†   rˆ   r‹   rž   rŽ  )r"   r”   r   r!   rN   Úpir1   r8   r,   r  r  rŒ   )ÚHrW   rË   rû  ra  rv   r°   s          rX   Útest_subspace_anglesrú  6  s´  € Ü�”EÓ€AØ	Š!ˆRˆaˆRˆ%‰€AØ	Š!ˆQ‰Rˆ%‰€AÜ”O A qÓ)¬B¯E©E°B©J¨<¸!Ñ+;À%ÕHÜ”O A qÓ)¬B¯E©E°B©J¨<¸!Ñ+;À%ÕHØ�ˆVò $ˆÜœ¨¨1Ó-¬r¯x©x¸¿¹À¹
Ó/CØ"ö	$ð$ô
 	�‰Ú	UÚ	WÚ	XÚ	Vð	Xó	Y€Að
 !€HÜ”O A¢a¨¨!¨ e¡H¨a²°1±2°©hÓ7¸Ñ:¸HØõ ä”O A¢a¨© e¡H¨a²°2°A°2°©hÓ7¸Ñ:¸HØõ à €HÜ”O A¢a¨¨!¨ e¡H¨a²°A°3°©iÓ8¸(ÈÕOÜ”O A¢a¨!¨ f¡I¨q²°B°Q°B°©xÓ8¸(ÈÕOØ €HÜ”O A¢a¨¨!¨ e¡H¨a²°A°3°©iÓ8¸(ÈÕOÜ”O A¢a¨!¨ f¡I¨q²°B°Q°B°©xÓ8¸(ÈÕOØ €HÜ”O A¢a¨¨!¨ e¡H¨a²°1±2°©hÓ7¸(ÀA¸Øõ ô ”*œo¨q°©t°QÔ7Ü”*œo¨q°!°A±$Ô7Ü”*œo¨q°°"¨v°qÔ9ô 	�‰’)ÚÚÚÚð	ó 	€Aô
 	�‰’)ÚÚÚÚð	ó 	€Aô
 �x‰xœŸ™˜q™ ! Q˜Ó(€HÜ”O A qÓ)¨8¸%Õ@ð
 ˆ�A�3ˆ€AØ
�!ˆ�q˜!�fÐ€AÜ”O A qÓ)¨2°EÕ:Ü”O A qÓ)¨2°EÕ:ô 	�‰�Ó€AÜ
�‰�Ó€AÜ”O A qÓ)¬2¯8©8°D«>Ô:Ü
�‰�Ó€AÜ
�‰�Ó€AÜ”O A qÓ)¬2¯8©8°D«>Ô:Ü
�‰�Ó€AÜ
�‰�Ó€AÜ”O A qÓ)¬2¯8©8°D«>Õ:rZ   c                   ó`   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTestCDF2RDFc                 ó0   — t        j                  d||«      S )Nz...ij,...jk->...ik)rN   Úeinsum)ru   rv   r°   s      rX   ÚmatmulzTestCDF2RDF.matmul}  s   € Ü�y‰yÐ-¨q°!Ó4Ð4rZ   c                 ó\   — t        | j                  ||«      | j                  ||«      «       y rd  )r   rÿ  )ru   rw   rf   rû  s       rX   Úassert_eig_validzTestCDF2RDF.assert_eig_valid€  s&   € Ü!Ø�K‰K˜˜1ÓØ�K‰K˜˜1Óõ	
rZ   c                 óÆ   — t        j                  d«      }t        j                  d«      t        j                  d«      }}t        ||«      \  }}| j                  |||«       y )Nr†   r   )rN   rŒ   r&   r  ©ru   rÜ  rw   rf   Úwrr¯   s         rX   Útest_single_array0x0realz$TestCDF2RDF.test_single_array0x0real†  sK   € ä�H‰H�VÓˆÜ�x‰x˜‹{œBŸH™H VÓ,ˆ1ˆÜ˜˜A“‰ˆˆBØ×Ñ˜b " aÕ(rZ   c                 óÂ   — t        j                  ddgddgg«      }t         j                  j                  |«      \  }}t	        ||«      \  }}| j                  |||«       y )NrE   rL   rm   rœ   ©rN   r,   r/   r
   r&   r  r  s         rX   Útest_single_array2x2_realz%TestCDF2RDF.test_single_array2x2_real�  sT   € Ü�H‰H�q˜!�f˜q "˜gÐ&Ó'ˆÜ�y‰y�}‰}˜QÓ‰ˆˆ1Ü˜˜A“‰ˆˆBØ×Ñ˜b " aÕ(rZ   c                 óÂ   — t        j                  ddgddgg«      }t         j                  j                  |«      \  }}t	        ||«      \  }}| j                  |||«       y )NrE   rL   r³   r  r  s         rX   Útest_single_array2x2_complexz(TestCDF2RDF.test_single_array2x2_complex“  sT   € Ü�H‰H�q˜!�f˜r 1˜gÐ&Ó'ˆÜ�y‰y�}‰}˜QÓ‰ˆˆ1Ü˜˜A“‰ˆˆBØ×Ñ˜b " aÕ(rZ   c                 óÈ   — t        j                  g d¢g d¢g d¢g«      }t         j                  j                  |«      \  }}t	        ||«      \  }}| j                  |||«       y )Nrl   rn   r  r  s         rX   Útest_single_array3x3_realz%TestCDF2RDF.test_single_array3x3_real™  sN   € Ü�H‰H’i¢ªIÐ6Ó7ˆÜ�y‰y�}‰}˜QÓ‰ˆˆ1Ü˜˜A“‰ˆˆBØ×Ñ˜b " aÕ(rZ   c                 óÈ   — t        j                  g d¢g d¢g d¢g«      }t         j                  j                  |«      \  }}t	        ||«      \  }}| j                  |||«       y ©Nrl   )r   r;  ro   )r   r  r;  r  r  s         rX   Útest_single_array3x3_complexz(TestCDF2RDF.test_single_array3x3_complexŸ  sN   € Ü�H‰H’i¢ªJÐ7Ó8ˆÜ�y‰y�}‰}˜QÓ‰ˆˆ1Ü˜˜A“‰ˆˆBØ×Ñ˜b " aÕ(rZ   c                 ó  — t         j                  j                  d«      }t        dd«      D ]Z  }|j                  d||f«      }t         j                  j                  |«      \  }}t        ||«      \  }}| j                  |||«       Œ\ y )Nr  rE   r  r  ©rN   rO   r<  r¢   r/   r
   r&   r  ©ru   rc   r  rÜ  rw   rf   r  r¯   s           rX   Útest_random_1d_stacked_arraysz)TestCDF2RDF.test_random_1d_stacked_arrays¥  sv   € Ü�i‰i×#Ñ# DÓ)ˆä�q˜!“ò 	-ˆAØ—
‘
˜C  A˜;Ó'ˆAÜ—9‘9—=‘= Ó#‰DˆAˆqÜ˜Q “]‰FˆB�Ø×!Ñ! " b¨!Õ,ñ		-rZ   c                 ó  — t         j                  j                  d«      }t        dd«      D ][  }|j                  dd||f«      }t         j                  j                  |«      \  }}t        ||«      \  }}| j                  |||«       Œ] y )Nr  rE   r  ri  r  r  s           rX   Útest_random_2d_stacked_arraysz)TestCDF2RDF.test_random_2d_stacked_arrays®  sx   € Ü�i‰i×#Ñ# DÓ)ˆä�q˜!“ò 	-ˆAØ—
‘
˜B  A q˜>Ó*ˆAÜ—9‘9—=‘= Ó#‰DˆAˆqÜ˜Q “]‰FˆB�Ø×!Ñ! " b¨!Õ,ñ		-rZ   c                 ó„   — t        j                  d«      t        j                  d«      }}t        t        t
        ||«       y )Nr–   )rL   )rN   rŒ   r,   r  r  r&   ©ru   rw   rf   s      rX   Útest_low_dimensionality_errorz)TestCDF2RDF.test_low_dimensionality_error·  s)   € Ü�x‰x˜‹|œRŸX™X d›^ˆ1ˆÜ”j¤'¨1¨aÕ0rZ   c                 ó¤   — t        j                  d«      t        j                  d«      j                  dd«      }}t        t        t
        ||«       y )Nrm   rp   rL   ©rN   r2   r  r  r  r&   r  s      rX   r  z!TestCDF2RDF.test_not_square_error»  s6   € ä�y‰y˜‹|œRŸY™Y q›\×1Ñ1°!°QÓ7ˆ1ˆÜ”j¤'¨1¨aÕ0rZ   c                 ó°   — t        j                  g d¢g d¢g d¢g«      }t         j                  j                  |«      \  }}t	        t
        t        ||«       y r  ©rN   r,   r/   r
   r  r  r&   ©ru   rÜ  rw   rf   s       rX   Útest_swapped_v_w_errorz"TestCDF2RDF.test_swapped_v_w_errorÀ  s;   € ä�H‰H’i¢ªJÐ7Ó8ˆÜ�y‰y�}‰}˜QÓ‰ˆˆ1Ü”j¤'¨1¨aÕ0rZ   c                 ó¤   — t        j                  d«      t        j                  d«      j                  dd«      }}t        t        t
        ||«       y )Nrm   rõ   r;  r  r  s      rX   Útest_non_associated_errorz%TestCDF2RDF.test_non_associated_errorÆ  s6   € ä�y‰y˜‹|œRŸY™Y r›]×2Ñ2°1°aÓ8ˆ1ˆÜ”j¤'¨1¨aÕ0rZ   c                 ór  — t        j                  g d¢g d¢g d¢g«      }t         j                  j                  |«      \  }}t	        t
        t        ||«       t        j                  g d¢g d¢g d¢gg d¢g d¢g d¢gg«      }t         j                  j                  |«      \  }}t	        t
        t        ||«       y )Nrl   r~   )rL   ro   y      @      ð¿r  r  s       rX   Útest_not_conjugate_pairsz$TestCDF2RDF.test_not_conjugate_pairsË  sŠ   € ä�H‰H’i¢ªLÐ9Ó:ˆÜ�y‰y�}‰}˜QÓ‰ˆˆ1Ü”j¤'¨1¨aÔ0ô �H‰HÚš	¢<Ð0Úš	¢<Ð0ð
ó ˆô �y‰y�}‰}˜QÓ‰ˆˆ1Ü”j¤'¨1¨aÕ0rZ   N)rŽ   r�   r�   rÿ  r  r  r  r
  r  r  r  r  r  r  r  r   r"  r–   rZ   rX   rü  rü  {  sH   „ ò5ò
ò)ò)ò)ò)ò)ò-ò-ò1ò1ò
1ò1ó
1rZ   rü  )F)‘rå  ÚplatformÚsysr-  ÚnumpyrN   Únumpy.testingr   r   r   r   r   r   r‘   r	   r  Úscipy.linalgr
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   Úscipy.linalg.lapackr(   Úscipy.linalg._miscr)   Úscipy.linalg._decomp_qzr*   Úscipy.statsr+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   Úscipy.linalg._testutilsr?   Úscipy.sparse._sputilsr@   Úscipy._lib._testutilsrA   Úscipy.linalg.blasrB   Úscipy.conftestrC   Úscipy.__config__rD   Ú
test_basicrF   ÚmachineÚIS_WASMr”   rY   r­   ÚREAL_DTYPESrª   rM   r  rh   rj   r˜   rb  rÞ  rþ  r8  r€  r’   r}  Úxfail_on_32bitÚparallel_threads_limitrw  r„  rŠ  rŒ  rž  r¢  r„  rž  rÓ  Úblas_providerÚblas_versionr÷  r  rj  ry  r™  rœ  rž  r¡  Úxfailr§  r©  rÞ  r~  rV   Úintprp  râ  rç  r“   r^   r•   rë  rí  rú  rü  r–   rZ   rX   ú<module>r<     sÞ  ðÛ Û Û 
Û ã ÷5÷ 5ó Ý *÷N÷ N÷ N÷ N÷ N÷ N÷ N÷ Nõ 1Ý #Ý 4Ý #÷;÷ ;÷ ;÷ ;÷ ;ñ ;õ 8Ý (å 3Ý 'Ý .Ý #å 1à�<‰<˜<Ñ'ÒUÐ+;¨8×+;Ñ+;Ó+=ÐAUÐ+U€ð (-°Eó ð  �z‰z˜2Ÿ:™:Ð&€Ø—,‘, §¡Ð.€Ø	�~Ñ	%€ò
÷4'=ñ '=÷TY4ñ Y4÷xz$ñ z$÷x	~!ñ ~!÷BI$ñ I$÷Vz/ñ z/ôz�Mô ð ‡�×Ñ�GÐ$;ÐÓ<Ø‡�×ÑÐAÓBØ‡�×#Ñ# AÓ&Ø‡�×Ñ�rÓØ‡�×Ñ�IÐ&BÐÓCñó Dó ó 'ó Có =ð
ò#÷;ñ ;÷|Eñ E÷xñ x÷vN-ñ N-÷b}4ñ }4÷@Y#ñ Y#ðx  $Ð #€�ØÐ+Ñ,¨VÑ4°VÑ<€ØÐ*Ñ+¨FÑ3°IÑ>€÷p'ñ p'÷fG5ñ G5÷T>ñ >÷<-ñ -ò6
ð ‡�×ÑÐ$�H×$Ñ$Ó&¨)Ñ3Ø/ð ó 1ñ
ó1ð
òò#ð$ ‡�×Ò�uØLð ó Nñ4óNð4÷>5/ñ 5/óp*ð6 ‡�×ÒØ‡�×Ñ�H�B—H’H˜RŸWšWÓ%×.Ò.°Ñ2Ø?ð ó AñóAó ðòð ‡�×Ò˜  U¨B¯J©J¸ÀÇÁÐNÓOñó Pð÷8Bñ 8BòvB;÷J\1ò \1rZ   