§
    fŠtjnÖ ã                   ó´  — 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/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8 d dl9m:Z: d dl;m<Z< d dl=m>Z> d d	lm?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQ d d
lRmSZS d dlTmUZU d dlVmWZW d dlXmYZY d dlZm[Z[ d dl\m]Z] ej        dk    p ej^        ¦   «         dv Z_de`fd„ZaejF        ejb        gZcejG        ejd        gZeeceez   Zfd„ Zg G d„ d¦  «        Zh G d„ d¦  «        Zi G d„ d¦  «        Zj G d„ d¦  «        Zk G d„ d¦  «        Zl G d„ d ¦  «        Zm G d!„ d"em¦  «        Znejo         p                    e_d#¬$¦  «        ejo         q                    d%¦  «        ejo         r                    d&¦  «        ejo         s                    d'¦  «        d(„ ¦   «         ¦   «         ¦   «         ¦   «         Ztd)„ Zu G d*„ d+¦  «        Zv G d,„ d-¦  «        Zw G d.„ d/¦  «        Zx G d0„ d1¦  «        Zy G d2„ d3¦  «        Zz G d4„ d5¦  «        Z{dxZ|Z}e]d6         d7         d8         Z|e]d6         d7         d9         Z} G d:„ d;¦  «        Z~ G d<„ d=¦  «        Z G d>„ d?¦  «        Z€ G d@„ dA¦  «        Z�dB„ Z‚ejo         p                     ej^        ¦   «         dCk    dD¬$¦  «        dE„ ¦   «         ZƒdF„ Z„dG„ Z…ejo         †                    ddH¬I¦  «        dJ„ ¦   «         Z‡ G dK„ dL¦  «        ZˆdYdM„Z‰ejo        jŠ        ejo         p                     ej‹        ejŒ        ¦  «        j�        dNk     dO¬$¦  «        dP„ ¦   «         ¦   «         ZŽdQ„ Z�ejo         �                    dRe‘e`ejF        e’ejG        g¦  «        dS„ ¦   «         Z“ G dT„ dU¦  «        Z”dV„ Z• G dW„ dX¦  «        Z–dS )Zé    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)	ÚdgbtrfÚdgbtrsÚzgbtrfÚzgbtrsÚdsbevÚdsbevdÚdsbevxÚzhbevdÚzhbevx)Ú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Ú
emscripten)Úwasm32Úwasm64Fc                 ó¸  — |t           v rdt          j                             | | ¦  «        t          j                             | | ¦  «        dz  z   }||                     ¦   «         j        z   dz  }n-t          j                             | | ¦  «        }||j        z   dz  }|r*|t          d| z  ¦  «        t          j        | ¦  «        z  z  }|                     |¦  «        S )z7Generate random sym/hermitian array of the given size nù              ð?é   )	ÚCOMPLEX_DTYPESÚnpÚrandomÚrandÚconjÚTr>   rF   Úastype)ÚnÚposdefÚdtypeÚAs       ú\/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/scipy/linalg/tests/test_decomp.pyÚ_random_hermitian_matrixr_   +   sµ   € ð •ÐÐÝŒI�NŠN˜1˜aÑ Ô ¥2¤9§>¢>°!°QÑ#7Ô#7¸Ñ#<Ñ<ˆØ�—’‘””‰^˜QÑˆˆåŒI�NŠN˜1˜aÑ Ô ˆØ�”‰W�a‰Kˆàð !Ø	�T�!�A‘#‰YŒY•r”v˜a‘y”yÑ Ñ ˆà�8Š8�E‰?Œ?Ðó    c                 óž  — t          | t          ¦  «        r| }|                     |¦  «        dz  dz
  }nLt          | t          ¦  «        r(t	          | j        ¦  «        dk    r| j        d         }| }nt          d¦  «        ‚t          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'.
    rR   é   r   zinput type not supported.ç      à?)Ú
isinstanceÚintrU   rE   Úlenr@   Ú	TypeErrorr3   ÚrvsrX   rW   r5   )Údim_or_eigvÚrngÚdimÚdÚvÚhs         r^   Úsymrandro   B   sÃ   € õ �+�sÑ#Ô#ð 5ØˆØ�JŠJ�s‰OŒO˜AÑ Ñ!ˆˆÝ
�[¥'Ñ
*Ô
*ð 5Ý
ˆkÔÑ
 Ô
  AÒ
%Ð
%ØÔ Ô"ˆØˆˆåÐ3Ñ4Ô4Ð4åŒ˜ÑÔ€AØ	Œ�Š‰
Œ
•T˜!‘W”WÑ˜qÑ €AàˆQŒS�‰U‰€AØ€Hr`   c                   óx   — e Zd Zd„ Zd„ Zd„ Zd„ Zej         	                    de
eeeeg¦  «        d„ ¦   «         ZdS )ÚTestEigValsc                 ó°   — g d¢g d¢g d¢g}t          |¦  «        }dt          d¦  «        z   dz  ddt          d¦  «        z
  dz  g}t          ||¦  «         d S )N©rb   rR   é   ©rR   é   é   é	   é]   rR   r   ©r   r>   r   ©ÚselfÚaÚwÚexact_ws       r^   Útest_simplezTestEigVals.test_simple^   sc   € ØˆYˆY˜	˜	˜	 9 9 9Ð-ˆÝ�A‰JŒJˆØ•d˜2‘h”h‘J ‘> 1 q­¨b©¬¡z°1¡nÐ5ˆÝ! ! WÑ-Ô-Ð-Ð-Ð-r`   c                 ó  — t          g d¢g d¢g d¢gd¦  «        j        }|                     ¦   «         }|j        }t          |¦  «        }dt	          d¦  «        z   dz  ddt	          d¦  «        z
  dz  g}t          ||¦  «         d S )Nrs   ru   rl   rx   ry   rR   r   )r4   rX   Úcopyr   r>   r   r{   s       r^   Útest_simple_trzTestEigVals.test_simple_trd   s„   € Ý�9�9�9˜i˜i˜i¨¨¨Ð3°SÑ9Ô9Ô;ˆØ�FŠF‰HŒHˆØŒCˆÝ�A‰JŒJˆØ•d˜2‘h”h‘J ‘> 1 q­¨b©¬¡z°1¡nÐ5ˆÝ! ! WÑ-Ô-Ð-Ð-Ð-r`   c                 ó°   — g d¢g d¢g d¢g}t          |¦  «        }dt          d¦  «        z   dz  ddt          d¦  «        z
  dz  g}t          ||¦  «         d S )Nrs   ©rR   rv   y      @      ð?y      "@      ð?y      W@      @rR   r   rz   r{   s       r^   Útest_simple_complexzTestEigVals.test_simple_complexl   sm   € ØˆYˆY˜	˜	˜	 < < <Ð0ˆÝ�A‰JŒJˆØ�˜e™œÑ$ aÑ'ØØ�˜e™œÑ$ aÑ'ð)ˆõ 	" ! WÑ-Ô-Ð-Ð-Ð-r`   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 S )	Nrs   ru   F©Úcheck_finiterx   ry   rR   r   rz   r{   s       r^   Útest_finitezTestEigVals.test_finitet   sj   € ØˆYˆY˜	˜	˜	 9 9 9Ð-ˆÝ�A EÐ*Ñ*Ô*ˆØ•d˜2‘h”h‘J ‘> 1 q­¨b©¬¡z°1¡nÐ5ˆÝ! ! WÑ-Ô-Ð-Ð-Ð-r`   Údtc                 ór  — 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 ‚d S )N©r   r   ©r\   ©r   rR   T©Úhomogeneous_eigvals©rR   r   )rT   Úemptyr   r@   r\   rF   )r|   r‹   r}   r~   s       r^   Ú
test_emptyzTestEigVals.test_emptyz   sµ   € åŒH�V 2Ð&Ñ&Ô&ˆÝ�A‰JŒJˆØŒw˜$ŠˆˆˆØŒw�'¥"¤&¨°"Ð"5Ñ"5Ô"5Ñ6Ô6Ô<Ò<Ð<Ð<Ð<å�A¨4Ð0Ñ0Ô0ˆØŒw˜&Ò Ð Ð Ð ØŒw�'¥"¤&¨°"Ð"5Ñ"5Ô"5Ñ6Ô6Ô<Ò<Ð<Ð<Ð<Ð<Ð<r`   N)Ú__name__Ú
__module__Ú__qualname__r€   rƒ   r†   rŠ   ÚpytestÚmarkÚparametrizere   Úfloatr;   Úcomplexr<   r”   © r`   r^   rq   rq   \   sŠ   € € € € € ð.ð .ð .ð.ð .ð .ð.ð .ð .ð.ð .ð .ð „[×Ò˜T C¨°¸À)Ð#LÑMÔMð=ð =ñ NÔMð=ð =ð =r`   rq   c            	       ó@  — e 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                             deeej        eej        g¦  «        d„ ¦   «         Zej                             dddg¦  «        ej                             dddg¦  «        ej                             dddg¦  «        ej                             dddg¦  «        ej                             dej        ej        g¦  «        d„ ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ZdS )ÚTestEigc                 óZ  — 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 ]2}t	          ||d d …|f         z  ||         |d d …|f         z  ¦  «         Œ3t          |dd¬¦  «        \  }}t          d¦  «        D ]7}t	          |j        |d d …|f         z  ||         |d d …|f         z  ¦  «         Œ8d S )Nrs   ru   rx   ry   rR   r   rb   rt   ©ç      @r   éÿÿÿÿr�   ©r   rb   ©r   rR   ©ÚleftÚright)r4   r
   r>   r1   r   rB   ÚrangerX   ©	r|   r}   r~   rm   r   Úv0Úv1Úv2Úis	            r^   r€   zTestEig.test_simpleˆ   s8  € Ý�9�9�9˜i˜i˜i¨¨¨Ð3Ñ4Ô4ˆÝ�1‰vŒv‰ˆˆ1Ø•d˜2‘h”h‘J ‘> 1 q­¨b©¬¡z°1¡nÐ5ˆÝ�A�q˜1�T "™XœX a™Z™<¨Ñ*Ð+Ñ,Ô,ˆÝ�;�;�;ÑÔˆÝ�A�q˜1�T "™XœX a™Z™<¨Ñ*Ð+Ñ,Ô,ˆØ•$�r‘(”(‰]ˆØ•$�r‘(”(‰]ˆØ•$�r‘(”(‰]ˆÝ! ! WÑ-Ô-Ð-Ý! " a¨¨¨¨1¨¤g­d°1°T´7©m¬mÑ&;Ñ<Ô<Ð<Ý! " a¨¨¨¨1¨¤g­d°1°T´7©m¬mÑ&;Ñ<Ô<Ð<Ý! " a¨¨¨¨1¨¤g­d°1°T´7©m¬mÑ&;Ñ<Ô<Ð<Ý�q‘”ð 	Að 	AˆAÝ% a¨!¨A¨A¨A¨q¨D¬'¡k°1°Q´4¸¸!¸!¸!¸Q¸$¼±<Ñ@Ô@Ð@Ð@Ý�1˜1 AÐ&Ñ&Ô&‰ˆˆ1Ý�q‘”ð 	Cð 	CˆAÝ% a¤c¨A¨a¨a¨a°¨d¬G¡m°Q°q´T¸!¸A¸A¸A¸q¸D¼'±\ÑBÔBÐBÐBð	Cð 	Cr`   c                 óô  — t          ddgddgg¦  «        }t          |dd¬¦  «        \  }}}t          |t          ddg¦  «        ¦  «         t          d¦  «        D ]2}t          ||d d …|f         z  ||         |d d …|f         z  ¦  «         Œ3t          d¦  «        D ][}t          |                     ¦   «         j        |d d …|f         z  ||                              ¦   «         |d d …|f         z  ¦  «         Œ\d S )Nrb   rR   éþÿÿÿr¦   ù      ð?       @y      ð?       À)r4   r
   r   r©   rW   rX   ©r|   r}   r~   ÚvlÚvrr®   s         r^   Útest_simple_complex_eigzTestEig.test_simple_complex_eigœ   s  € Ý�A�q�6˜B ˜7Ð#Ñ$Ô$ˆÝ˜ ¨Ð+Ñ+Ô+‰	ˆˆ2ˆrÝ! !¥U¨D°$¨<Ñ%8Ô%8Ñ9Ô9Ð9Ý�q‘”ð 	Cð 	CˆAÝ% a¨"¨Q¨Q¨Q°¨T¬(¡l°A°a´D¸¸A¸A¸A¸q¸D¼±MÑBÔBÐBÐBÝ�q‘”ð 	<ð 	<ˆAÝ% a§f¢f¡h¤h¤j°2°a°a°a¸°d´8Ñ&;Ø&'¨¤d§i¢i¡k¤k°"°Q°Q°Q¸°T´(Ñ&:ñ<ô <ð <ð <ð	<ð 	<r`   c                 ó¼  — t          g d¢g d¢g d¢g¦  «        }t          |dd¬¦  «        \  }}}t          d¦  «        D ]2}t          ||d d …|f         z  ||         |d d …|f         z  ¦  «         Œ3t          d¦  «        D ][}t          |                     ¦   «         j        |d d …|f         z  ||                              ¦   «         |d d …|f         z  ¦  «         Œ\d S )Nrs   r…   rb   r¦   rt   )r4   r
   r©   r   rW   rX   r²   s         r^   r†   zTestEig.test_simple_complex¦   sý   € Ý�9�9�9˜i˜i˜i¨¨¨Ð6Ñ7Ô7ˆÝ˜ ¨Ð+Ñ+Ô+‰	ˆˆ2ˆrÝ�q‘”ð 	Cð 	CˆAÝ% a¨"¨Q¨Q¨Q°¨T¬(¡l°A°a´D¸¸A¸A¸A¸q¸D¼±MÑBÔBÐBÐBÝ�q‘”ð 	<ð 	<ˆAÝ% a§f¢f¡h¤h¤j°2°a°a°a¸°d´8Ñ&;Ø&'¨¤d§i¢i¡k¤k°"°Q°Q°Q¸°T´(Ñ&:ñ<ô <ð <ð <ð	<ð 	<r`   c                 ó8  — dgg}dgg}t          ||d¬¦  «        \  }}t          |d         d¦  «         t          |d         dk    ¦  «         t          |d¦  «         t          ||¦  «        \  }}t          |t          j        ¦  «         t          |d¦  «         d S )Nrb   r   Tr�   ©rb   r   r�   )r
   r   r   r   rT   Úinf)r|   r}   Úbr~   r´   s        r^   Útest_gh_3054zTestEig.test_gh_3054¯   sŸ   € ØˆSˆEˆØˆSˆEˆÝ�A�q¨dÐ3Ñ3Ô3‰ˆˆ2Ý˜˜$œ Ñ#Ô#Ð#Ý��$”˜1’ÑÔÐÝ˜˜AÑÔÐå�A�q‘	”	‰ˆˆ2Ý�Q�œÑÔÐÝ˜˜AÑÔÐÐÐr`   ç‚vIhÂ%<=c           	      ó€  — |�!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         |||¬¦  «         Œ+|€4t          |	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k    }|	d|f         |	d|f         z  }t	          ||¦  «        \  }	}
t          ||¦  «        }||
z  }||
z  |	z  }||z
  }t          |j        d         ¦  «        D ]K}t          j        t          |d d …|f         ¦  «        ¦  «        rt          |d d …|f         d|||¬¦  «         ŒL|	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        |	¦  «                 ¦  «        ¦  «         d S )Nú
Tr�   rb   r   ©ÚrtolÚatolÚerr_msggH¯¼šò×z>)rÁ   rÀ   rÂ   )rÂ   rÁ   rÀ   y       €      ð¿rQ   g»½×Ùß|Û=)Útol©rÂ   )rC   rT   rF   r@   r
   r   r©   r   Úlexsortr“   rf   r1   ÚonesÚsizeÚallrD   Úreal_if_closer8   ÚabsÚimagrA   )r|   r]   ÚBÚ
atol_homogÚ
rtol_homogrÁ   rÀ   ÚB0Úmsgr~   r´   ÚwtÚval1Úval2r®   ÚpermÚpermtÚlengthÚbeta_nonzeroÚwhÚresÚw_finÚwt_fins                          r^   Ú_check_gen_eigzTestEig._check_gen_eig»   sv  € àˆ=Ý˜1‘:”:�w q™zœzˆqˆAØˆBˆBå˜‘
”
ˆAØˆBÝ”˜œÐ ˆAØ�1ÐÐ˜!ÐÐˆõ �A�r¨tÐ4Ñ4Ô4‰ˆˆ2Ý�Q˜°Ð5Ñ5Ô5ˆØ�2‰v˜˜!˜Q˜Q˜Q˜$œÑˆØ�2‰v˜˜!˜Q˜Q˜Q˜$œÑˆÝ�t”z !”}Ñ%Ô%ð 	Kð 	KˆAÝ˜D    A œJ¨¨Q¨Q¨Q°¨T¬
Ø!+°*ÀcðKñ Kô Kð Kð Kð ˆ:Ý˜A˜a   ˜dœG QÑ'Ô'Ð'Ý˜B˜q ! ! !˜tœH aÑ(Ô(Ð(åŒz˜!‰}Œ}ˆÝ”
˜2‘”ˆÝ˜˜!˜!˜!˜T˜'œ
 B q q q¨% x¤L°tÀ$Ø #ð	%ñ 	%ô 	%ð 	%õ ”�#˜b™'œ'Ñ"Ô"ˆå•s˜2‘w”w‘”ð 	'ð 	'ˆAÝ˜R    1 œX™œˆF�1‰IˆIå˜¥¤¨¬Ñ 4Ô 4¸cØ!¨ð	.ñ 	.ô 	.ð 	.ð ˜!˜Q˜Q˜Q˜$œ 1šˆØˆq�,ˆÔ ! A | OÔ"4Ñ4ˆõ �A�r‘
”
‰ˆˆ2Ý�Q˜‰^Œ^ˆØ�2‰vˆØ�2‰v˜‰zˆØ�T‰kˆÝ�s”y ”|Ñ$Ô$ð 	Cð 	CˆAÝŒv•h˜s 1 1 1 a 4œyÑ)Ô)Ñ*Ô*ð CÝ  A A A q D¤	¨1Ø%)°¸cðCñ Cô Cð Cøð •(˜1‘+”+”ˆØ•H˜R‘L”LÔ!ˆð •bÔ& r¨%¡x°UÐ;Ñ;Ô;Ñ;ˆØ•rÔ'¨¨6©	°uÐ=Ñ=Ô=Ñ=ˆå•s˜5‘z”z E¤JÑ.Ñ/Ô/ˆÝ�˜F™œ f¤kÑ1Ñ2Ô2ˆå˜˜dœ V¨E¤]Ø!¨°cð	;ñ 	;ô 	;ð 	;õ ”�#˜b™'œ'Ñ"Ô"ˆÝ•s˜2‘w”w‘”ð 	'ð 	'ˆAÝ˜R    1 œX™œˆF�1‰IˆIÝ˜¥¤¨¬Ñ 4Ô 4¸cÐBÑBÔBÐBõ 	�˜R™œ¥$ q­¬°Q©¬Ô'8Ñ"9Ô"9Ñ:Ô:Ð:Ð:Ð:r`   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  |                      ||dd¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )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Á   )r4   rT   ÚerrstaterÜ   ©r|   r]   rÌ   s      r^   Útest_singularzTestEig.test_singular  s2  € õ Ð'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'ð	)ñ *ô *ˆõ
 Ð'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'ð	)ñ *ô *ˆõ Œ[˜XÐ&Ñ&Ô&ð 	Dð 	DØ×Ò  1°¸UÐÑCÔCÐCð	Dð 	Dð 	Dñ 	Dô 	Dð 	Dð 	Dð 	Dð 	Dð 	Dð 	Dð 	Døøøð 	Dð 	Dð 	Dð 	Dð 	Dð 	Ds   ÁA9Á9A=Â A=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  |                      ||¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )N)rb   r   rt   )rR   r£   r£   )r£   rR   r£   )r£   r£   rR   )rb   r£   r   )r£   rb   r   ©r   r   r   ©rt   rt   rt   rû   rü   )r5   r4   r9   rF   rT   Úblockrý   rÜ   )r|   ÚMÚKÚDÚZÚI3r]   rÌ   s           r^   Útest_falkerzTestEig.test_falker  s8  € å•�y�y�yÑ!Ô!Ñ"Ô"ˆÝ�;�;�;   ¨[¨[¨[Ð9Ñ:Ô:ˆÝ�:�:�:˜z˜z˜z¨9¨9¨9Ð5Ñ6Ô6ˆÝ�&‰MŒMˆÝ�‰VŒVˆÝŒH�r˜1�g  A 2˜wÐ'Ñ(Ô(ˆÝŒH�q˜"�g  1˜vÐ&Ñ'Ô'ˆåŒ[˜XÐ&Ñ&Ô&ð 	&ð 	&Ø×Ò  1Ñ%Ô%Ð%ð	&ð 	&ð 	&ñ 	&ô 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&øøøð 	&ð 	&ð 	&ð 	&ð 	&ð 	&s   Â7CÃCÃ"Cc                 óä   — d„ }t          j        d¬¦  «        5  t          d¦  «        D ]-} ||dz  dz  ¬¦  «        \  }}|                      ||¦  «         Œ.	 d d d ¦  «         d S # 1 swxY w Y   d S )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é÷ÿÿÿrR   )rb   r   r   r   )r   rb   r   r   r   )r   r   rb   r   )r   r   r   rb   rb   r�   )ÚomegaÚc1Úc2r]   rÌ   s        r^   Úmatricesz)TestEig.test_bad_geneig.<locals>.matrices&  s}   € Ø�e˜Q‘h‘ˆBØ�5‘ˆBØ��Ø��Ø�Q˜˜A�Ø�Q˜˜2�ð ˆAð ��Ø��Ø�Q˜˜B˜3�Ø�Q˜˜A�ð ˆAð �a�4ˆKr`   rû   rü   éd   ç      @)r  )rT   rý   r©   rÜ   )r|   r  Úkr]   rÌ   s        r^   Útest_bad_geneigzTestEig.test_bad_geneig#  sÛ   € ð	ð 	ð 	õ Œ[˜XÐ&Ñ&Ô&ð 	*ð 	*Ý˜3‘Z”Zð *ð *�Ø�x a¨¡d¨3¡hÐ/Ñ/Ô/‘��1Ø×#Ò# A qÑ)Ô)Ð)Ð)ð*ð	*ð 	*ð 	*ñ 	*ô 	*ð 	*ð 	*ð 	*ð 	*ð 	*ð 	*ð 	*øøøð 	*ð 	*ð 	*ð 	*ð 	*ð 	*s   ™>A%Á%A)Á,A)c                 óì  — t           j                             d¦  «        }t          d|¦  «        }|                      |d ¦  «         t          d|¦  «        }|                      ||¦  «         |                     d¦  «        d|                     d¦  «        z  z   }|                      |d ¦  «         |                     d¦  «        d|                     d¦  «        z  z   }|                      ||¦  «         d S )NéÒ  rt   r  rQ   )rT   rU   ÚRandomStatero   rÜ   )r|   rj   r]   rÌ   s       r^   Útest_make_eigvalszTestEig.test_make_eigvals:  sß   € õ Œi×#Ò# DÑ)Ô)ˆÝ�A�s‰OŒOˆØ×Ò˜A˜tÑ$Ô$Ð$Ý�A�s‰OŒOˆØ×Ò˜A˜qÑ!Ô!Ð!à�JŠJ�vÑÔ  C§J¢J¨vÑ$6Ô$6Ñ!6Ñ6ˆØ×Ò˜A˜tÑ$Ô$Ð$Ø�JŠJ�vÑÔ  C§J¢J¨vÑ$6Ô$6Ñ!6Ñ6ˆØ×Ò˜A˜qÑ!Ô!Ð!Ð!Ð!r`   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 ]2}t	          ||d d …|f         z  ||         |d d …|f         z  ¦  «         Œ3d S )Nrs   ru   Frˆ   rx   ry   rR   r   rb   rt   r¡   r�   r¤   r¥   )r
   r>   r4   r1   r   rB   r©   rª   s	            r^   Útest_check_finitezTestEig.test_check_finiteH  sÏ  € ØˆYˆY˜	˜	˜	 9 9 9Ð-ˆÝ�1 5Ð)Ñ)Ô)‰ˆˆ1Ø•d˜2‘h”h‘J ‘> 1 q­¨b©¬¡z°1¡nÐ5ˆÝ�A�q˜1�T "™XœX a™Z™<¨Ñ*Ð+Ñ,Ô,ˆÝ�;�;�;ÑÔˆÝ�A�q˜1�T "™XœX a™Z™<¨Ñ*Ð+Ñ,Ô,ˆØ•$�r‘(”(‰]ˆØ•$�r‘(”(‰]ˆØ•$�r‘(”(‰]ˆÝ! ! WÑ-Ô-Ð-Ý! " a¨¨¨¨1¨¤g­d°1°T´7©m¬mÑ&;Ñ<Ô<Ð<Ý! " a¨¨¨¨1¨¤g­d°1°T´7©m¬mÑ&;Ñ<Ô<Ð<Ý! " a¨¨¨¨1¨¤g­d°1°T´7©m¬mÑ&;Ñ<Ô<Ð<Ý�q‘”ð 	Að 	AˆAÝ% a¨!¨A¨A¨A¨q¨D¬'¡k°1°Q´4¸¸!¸!¸!¸Q¸$¼±<Ñ@Ô@Ð@Ð@ð	Að 	Ar`   c                 óŒ   — t          j        d¦  «                             dd¦  «        }t          t          t
          |¦  «         dS )z:Check that passing a non-square array raises a ValueError.rw   rt   rR   N)rT   r:   ÚreshapeÚassert_raisesÚ
ValueErrorr
   )r|   r]   s     r^   Útest_not_square_errorzTestEig.test_not_square_errorY  s7   € åŒI�a‰LŒL× Ò   AÑ&Ô&ˆÝ•j¥# qÑ)Ô)Ð)Ð)Ð)r`   c                 óä   — t          d¦  «        }t          j        d¦  «                             dd¦  «        }t	          t
          t          ||¦  «         t	          t
          t          ||¦  «         dS )zOCheck that passing arrays of with different shapes
        raises a ValueError.rR   ç      "@rt   N)rF   rT   r:   r  r  r  r
   rþ   s      r^   Útest_shape_mismatchzTestEig.test_shape_mismatch^  sZ   € õ �‰FŒFˆÝŒI�c‰NŒN×"Ò" 1 aÑ(Ô(ˆÝ•j¥# q¨!Ñ,Ô,Ð,Ý•j¥# q¨!Ñ,Ô,Ð,Ð,Ð,r`   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¬¦  «                             ¦   «         sJ ‚t          j        |dd¬¦  «                             ¦   «         sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )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@Úfloat64rŽ   )ç       @ç      @ç      $@r$  )r¢   r  ç      &@g      =@)r  ç      @g      *@g      ?@)r!  r*  g      1@g     €A@rû   z%invalid value encountered in multiplyr(  ç›+¡†›„=©rÁ   ç       @)	rT   r4   r
   ÚwarningsÚcatch_warningsÚfilterwarningsÚRuntimeWarningÚiscloseÚany)r|   r]   rÌ   r  ÚVs        r^   Útest_gh_11577zTestEig.test_gh_11577f  s“  € õ ŒHÐ/Ð/Ð/Ø/Ð/Ð/Ø/Ð/Ð/Ø0Ð0Ð0ð2ð :CðDñ Dô Dˆõ ŒHÐ,Ð,Ð,Ø,Ð,Ð,Ø,Ð,Ð,Ø-Ð-Ð-ð/ð 7@ðAñ Aô Aˆõ
 �1�a‰yŒy‰ˆˆ1õ Ô$Ñ&Ô&ð 	8ð 	8åÔ#ØÐAÅ>ñSô Sð Så”:˜a ¨5Ð1Ñ1Ô1×5Ò5Ñ7Ô7Ð7Ð7Ð7Ý”:˜a ¨5Ð1Ñ1Ô1×5Ò5Ñ7Ô7Ð7Ð7Ð7Ð7ð	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8øøøð 	8ð 	8ð 	8ð 	8ð 	8ð 	8s   Á+A2C+Ã+C/Ã2C/r‹   c                 ó  — 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 ‚d S )Nr�   rŽ   rR   r�   Tr�   r’   )rT   r“   r
   rF   r@   r\   r   )r|   r‹   r}   r~   r´   Úw_nÚvr_ns          r^   r”   zTestEig.test_emptyƒ  s  € åŒH�V 2Ð&Ñ&Ô&ˆÝ�A‘”‰ˆˆ2å�œ˜q¨Ð+Ñ+Ô+Ñ,Ô,‰	ˆˆTàŒw˜$ŠˆˆˆØŒw˜#œ)Ò#Ð#Ð#Ð#å˜�BœH VÑ,Ô,Ñ-Ô-Ð-ØŒx˜6Ò!Ð!Ð!Ð!ØŒx˜4œ:Ò%Ð%Ð%Ð%å�A¨4Ð0Ñ0Ô0‰ˆˆ2ØŒw˜&Ò Ð Ð Ð ØŒw˜#œ)Ò#Ð#Ð#Ð#àŒx˜6Ò!Ð!Ð!Ð!ØŒx˜4œ:Ò%Ð%Ð%Ð%Ð%Ð%r`   Ú	include_BFTr§   r¨   r‘   r\   c                 óò  — d}d}t           j                             d¦  «        }|                     ||z   ¦  «                             |¦  «        }	|                     ||z   ¦  «                             |¦  «        }
t	          ||¬¦  «        }|rt          |	f|
|dœ|¤Ž}nt          |	fd|i|¤Ž}t          |d         ¦  «        D ]´}t          |d         ¦  «        D ]œ}|r!t          |	||f         f|
||f         |dœ|¤Ž}nt          |	||f         fd|i|¤Ž}|s|rDt          t          |¦  «        ¦  «        D ]&}t          ||         ||f         ||         ¦  «         Œ'Œ„t          |||f         |¦  «         Œ�Œµd S )	N©rt   rR   )é   r=  l   ›F)QÒ)r¨   r‘   )rº   r§   r§   r   rb   )	rT   rU   Údefault_rngrY   Údictr
   r©   rf   r   )r|   r:  r§   r¨   r‘   r\   Úbatch_shapeÚ
core_shaperj   r]   rÌ   ÚkwargsrÙ   r®   ÚjÚrefr  s                    r^   Útest_nd_inputzTestEig.test_nd_input˜  sÊ  € ð ˆØˆ
ÝŒi×#Ò# MÑ2Ô2ˆØ�JŠJ�{ ZÑ/Ñ0Ô0×7Ò7¸Ñ>Ô>ˆØ�JŠJ�{ ZÑ/Ñ0Ô0×7Ò7¸Ñ>Ô>ˆÝ˜EÐ7JÐKÑKÔKˆàð 	.Ý�aÐ2˜1 4Ð2Ð2¨6Ð2Ð2ˆCˆCå�aÐ-Ð-˜dÐ- fÐ-Ð-ˆCå�{ 1”~Ñ&Ô&ð 	4ð 	4ˆAÝ˜; qœ>Ñ*Ô*ð 
4ð 
4�Øð <Ý˜a  1 œgÐF¨¨1¨a¨4¬°tÐFÐF¸vÐFÐF�C�Cå˜a  1 œgÐ;Ð;¨DÐ;°FÐ;Ð;�Càð 4˜5ð 4Ý"¥3 s¡8¤8™_œ_ð >ð >˜Ý'¨¨A¬¨q°!¨t¬°c¸!´fÑ=Ô=Ð=Ð=ð>õ $ C¨¨1¨¤I¨sÑ3Ô3Ð3Ð3ð
4ð	4ð 	4r`   N)r¼   r¼   r¼   r¼   )r•   r–   r—   r€   rµ   r†   r»   rÜ   rÿ   r	  r  r  r  r  r"  r6  r˜   r™   rš   re   r›   rT   r;   rœ   r<   r”   Ú
complex128rE  r�   r`   r^   rŸ   rŸ   †   sð  € € € € € ðCð Cð Cð(<ð <ð <ð<ð <ð <ð
ð 
ð 
ð AFØ49ðH;ð H;ð H;ð H;ðTDð Dð Dð"&ð &ð &ð*ð *ð *ð."ð "ð "ðAð Að Að"*ð *ð *ð
-ð -ð -ð8ð 8ð 8ð: „[×Ò˜T C¨°´
¸GÀRÄ\Ð#RÑSÔSð&ð &ñ TÔSð&ð( „[×Ò˜[¨5°$¨-Ñ8Ô8Ø„[×Ò˜V e¨T ]Ñ3Ô3Ø„[×Ò˜W u¨d mÑ4Ô4Ø„[×ÒÐ2°U¸D°MÑBÔBØ„[×Ò˜W r¤z°2´=Ð&AÑBÔBð4ð 4ñ CÔBñ CÔBñ 5Ô4ñ 4Ô3ñ 9Ô8ð
4ð 4ð 4r`   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                             deeej        eej        g¦  «        d„ ¦   «         ZdS )ÚTestEigBandedc                 ó.   — |                       ¦   «          d S ©N)Úcreate_bandmat©r|   s    r^   Úsetup_methodzTestEigBanded.setup_method¹  s   € Ø×ÒÑÔÐÐÐr`   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 ]P}t          | j        |¦  «        | j        ||z
  dz
  ||…f<   t          | j        |¦  «        | j        ||z
  dz
  ||…f<   ŒQd| j         z  | j        z   dz   }t!          ||ft"          ¬¦  «        | _        t          | j        ¦  «        | j        d| j         z  dd…f<   t+          | j         ¦  «        D ]p}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<   Œqt!          ||ft&          ¬¦  «        | _        t          | j        ¦  «        | j        d| j         z  dd…f<   t+          | j         ¦  «        D ]p}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<   Œqdt1          |¦  «        z  | _        | j        dz  | _        dS )zbCreate the full matrix `self.fullmat` and
           the corresponding band matrix `self.bandmat`.é
   rR   ç      ð?rb   ç      ð¿r£   ç       Àr°   rQ   ç      Àr'  NrŽ   r   ù      ð?      ð?)ÚKLÚKUr5   r6   Úsym_matÚherm_matÚreal_matÚcomp_matr7   r
   Úrealr8   Ú	w_sym_linÚevec_sym_linÚ
w_herm_linÚevec_herm_linr9   r›   Úbandmat_symrœ   Úbandmat_hermr©   Úbandmat_realÚbandmat_compr:   rº   Úbc)r|   ÚNÚewÚevÚargsÚLDABr®   s          r^   rK  zTestEigBanded.create_bandmat¼  s¢  € ð ˆØˆŒØˆŒõ �T ! S™\œ\Ñ*Ô*Ý�t A a¡C¨™œ°Ñ3Ô3ñ4Ý6:½4ÀÀ!ÁÀT¹?¼?ÈAÑ6NÔ6NñOå�t A a¡C¨™œ°Ñ3Ô3ñ4å6:½4ÀÀ!ÁÀT¹?¼?ÈAÑ6NÔ6NñOˆŒõ
 �d 1 d™mœmÑ,Ô,Ø�d¥4¨¨!©¨S¡>¤>°2Ñ6Ô6Ñ6ñ7à�d¥4¨¨!©¨S¡>¤>°1Ñ5Ô5Ñ5ñ6õ  ¥ Q q¡S¨$¡¤°Ñ4Ô4ñ5õ  ¥ Q q¡S¨$¡¤°Ñ3Ô3ñ	4ˆŒõ �d 1 c™lœlÑ+Ô+Ý¥ Q q¡S¨$¡¤°Ñ4Ô4ñ5Ý7;½DÀÀ1ÁÀd¹O¼OÈQÑ7OÔ7OñPå¥ Q q¡S¨#¡¤°Ñ3Ô3ñ4å6:½4ÀÀ!ÁÀT¹?¼?ÈAÑ6NÔ6NñOˆŒð
 �D¥ a¨¡¤Ñ.Ô.Ñ.Ý¥ Q q¡S¨$¡¤°Ñ4Ô4ñ5à�d¥4¨¨!©¨T¡?¤?°AÑ6Ô6Ñ6ñ7õ  ¥ Q q¡S¨#¡¤°Ñ3Ô3ñ4õ  ¥ Q q¡S¨$¡¤°Ñ3Ô3ñ	4ˆŒõ ”˜DœLÑ)Ô)‰ˆˆBØŒWˆÝ�r‰{Œ{ˆØ˜DœˆŒØ˜q˜q˜q $˜wœKˆÔå”˜DœMÑ*Ô*‰ˆˆBØŒWˆÝ�r‰{Œ{ˆØ˜Tœ(ˆŒØ    4 œ[ˆÔð
 Œw˜‰{ˆÝ  $¨ µ%Ð8Ñ8Ô8ˆÔÝ! 4¨ )µ7Ð;Ñ;Ô;ˆÔÝ�t‘”ð 	Fð 	FˆAÝ.2°4´<ÀÑ.CÔ.CˆDÔ˜T !™V A™X q¨ s˜]Ñ+Ý/3°D´MÀ1Ñ/EÔ/EˆDÔ˜d 1™f Q™h¨¨!¨˜mÑ,Ð,ð �”‰y˜4œ7Ñ" QÑ&ˆÝ! 4¨ )µ5Ð9Ñ9Ô9ˆÔÝ*.¨t¬}Ñ*=Ô*=ˆÔ˜!˜DœG™) Q Q Q˜,Ñ'Ý�t”w‘”ð 	Cð 	CˆAå6:¸4¼=È!ÈAÉ#Ñ6NÔ6NˆDÔ˜a ¤™i¨™k¨!™m¨Q¨q©S°¨UÐ2Ñ3å8<¸T¼]Ø>?¸RÀ¹Tñ9Cô 9CˆDÔ˜a ¤™i¨™k¨!™m¨Q¨q°©s°1©u¨WÐ4Ñ5Ð5õ " 4¨ )µ7Ð;Ñ;Ô;ˆÔÝ*.¨t¬}Ñ*=Ô*=ˆÔ˜!˜DœG™) Q Q Q˜,Ñ'Ý�t”w‘”ð 	Cð 	CˆAå6:¸4¼=È!ÈAÉ#Ñ6NÔ6NˆDÔ˜a ¤™i¨™k¨!™m¨Q¨q©S°¨UÐ2Ñ3å8<¸T¼]Ø>?¸RÀ¹Tñ9Cô 9CˆDÔ˜a ¤™i¨™k¨!™m¨Q¨q°©s°1©u¨WÐ4Ñ5Ð5ð •V˜A‘Y”Y‘ˆŒØ”&˜FÑ#ˆŒˆˆr`   c                 ó  — t          | j        d¬¦  «        \  }}}|dd…t          |¦  «        f         }t          t	          |¦  «        | j        ¦  «         t          t          |¦  «        t          | j        ¦  «        ¦  «         dS )zTCompare dsbev eigenvalues and eigenvectors with
           the result of linalg.eig.rb   ©Ú	compute_vN)r,   r`  r8   r   rA   r\  rÊ   r]  ©r|   r~   ÚevecÚinfoÚevec_s        r^   Ú
test_dsbevzTestEigBanded.test_dsbev  sv   € õ ˜dÔ.¸!Ð<Ñ<Ô<‰ˆˆ4�Ø�Q�Q�Q� ™
œ
�]Ô#ˆÝ!¥$ q¡'¤'¨4¬>Ñ:Ô:Ð:Ý!¥# e¡*¤*­c°$Ô2CÑ.DÔ.DÑEÔEÐEÐEÐEr`   c                 ó  — t          | j        d¬¦  «        \  }}}|dd…t          |¦  «        f         }t          t	          |¦  «        | j        ¦  «         t          t          |¦  «        t          | j        ¦  «        ¦  «         dS )zUCompare dsbevd eigenvalues and eigenvectors with
           the result of linalg.eig.rb   rk  N)r-   r`  r8   r   rA   r\  rÊ   r]  rm  s        r^   Útest_dsbevdzTestEigBanded.test_dsbevd  sv   € õ ˜tÔ/¸1Ð=Ñ=Ô=‰ˆˆ4�Ø�Q�Q�Q� ™
œ
�]Ô#ˆÝ!¥$ q¡'¤'¨4¬>Ñ:Ô:Ð:Ý!¥# e¡*¤*­c°$Ô2CÑ.DÔ.DÑEÔEÐEÐEÐEr`   c           	      óJ  — t          | j        ¦  «        \  }}t          | j        ddd|dd¬¦  «        \  }}}}}|dd…t	          |¦  «        f         }t          t          |¦  «        | j        ¦  «         t          t          |¦  «        t          | j	        ¦  «        ¦  «         dS )zUCompare dsbevx eigenvalues and eigenvectors
           with the result of linalg.eig.ç        rb   rR   ©rl  r©   N)
r@   rW  r.   r`  r8   r   rA   r\  rÊ   r]  ©r|   re  r~   rn  ÚnumÚifailro  rp  s           r^   Útest_dsbevxzTestEigBanded.test_dsbevx  s¢   € õ �T”\Ñ"Ô"‰ˆˆ1å$*¨4Ô+;¸SÀ#ÀqÈ!Ø56¸að%Añ %Aô %AÑ!ˆˆ4��e˜Tà�Q�Q�Q� ™
œ
�]Ô#ˆÝ!¥$ q¡'¤'¨4¬>Ñ:Ô:Ð:Ý!¥# e¡*¤*­c°$Ô2CÑ.DÔ.DÑEÔEÐEÐEÐEr`   c                 ó  — t          | j        d¬¦  «        \  }}}|dd…t          |¦  «        f         }t          t	          |¦  «        | j        ¦  «         t          t          |¦  «        t          | j        ¦  «        ¦  «         dS )zUCompare zhbevd eigenvalues and eigenvectors
           with the result of linalg.eig.rb   rk  N)r/   ra  r8   r   rA   r^  rÊ   r_  rm  s        r^   Útest_zhbevdzTestEigBanded.test_zhbevd(  sv   € õ ˜tÔ0¸AÐ>Ñ>Ô>‰ˆˆ4�Ø�Q�Q�Q� ™
œ
�]Ô#ˆÝ!¥$ q¡'¤'¨4¬?Ñ;Ô;Ð;Ý!¥# e¡*¤*­c°$Ô2DÑ.EÔ.EÑFÔFÐFÐFÐFr`   c           	      óJ  — t          | j        ¦  «        \  }}t          | j        ddd|dd¬¦  «        \  }}}}}|dd…t	          |¦  «        f         }t          t          |¦  «        | j        ¦  «         t          t          |¦  «        t          | j	        ¦  «        ¦  «         dS )zUCompare zhbevx eigenvalues and eigenvectors
           with the result of linalg.eig.ru  rb   rR   rv  N)
r@   rX  r0   ra  r8   r   rA   r^  rÊ   r_  rw  s           r^   Útest_zhbevxzTestEigBanded.test_zhbevx0  s¢   € õ �T”]Ñ#Ô#‰ˆˆ1å$*¨4Ô+<¸cÀ3ÈÈ1Ø56¸að%Añ %Aô %AÑ!ˆˆ4��e˜Tà�Q�Q�Q� ™
œ
�]Ô#ˆÝ!¥$ q¡'¤'¨4¬?Ñ;Ô;Ð;Ý!¥# e¡*¤*­c°$Ô2DÑ.EÔ.EÑFÔFÐFÐFÐFr`   c                 óT  — 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        ¦  «         d
S )z?Compare eigenvalues of eigvals_banded with those of linalg.eig.rR   rw   r®   ©ÚselectÚselect_rangerb   çñhãˆµøä>rm   Frˆ   N)
r   r`  r[  r   rA   r\  ra  r^  rT   Úlonglong)r|   Úw_symÚw_hermÚind1Úind2Ú	w_sym_indÚ
w_herm_indÚv_lowerÚv_upperÚ	w_sym_valÚ
w_herm_vals              r^   Útest_eigvals_bandedz!TestEigBanded.test_eigvals_banded;  sK  € å˜tÔ/Ñ0Ô0ˆØ”
ˆÝ!¥$ u¡+¤+¨t¬~Ñ>Ô>Ð>å Ô 1Ñ2Ô2ˆØ”ˆÝ!¥$ v¡,¤,°´Ñ@Ô@Ð@ð ˆÝŒ{˜1‰~Œ~ˆÝ" 4Ô#3Ø*-¸TÀ4¸LðJñ Jô Jˆ	å!¥$ y¡/¤/Ø"&¤.°°d¸1±f°Ô"=ñ	?ô 	?ð 	?å# DÔ$5Ø+.¸dÀD¸\ðKñ Kô Kˆ
å!¥$ zÑ"2Ô"2Ø"&¤/°$°t¸A±v°+Ô">ñ	@ô 	@ð 	@ð ”. Ô&¨Ñ/ˆØ”. Ô&¨Ñ/ˆÝ" 4Ô#3Ø*-¸WÀgÐ<NðPñ Pô Pˆ	å!¥$ y¡/¤/Ø"&¤.°°d¸1±f°Ô"=ñ	?ô 	?ð 	?ð ”/ $Ô'¨&Ñ0ˆØ”/ $Ô'¨&Ñ0ˆÝ# DÔ$5Ø+.Ø29¸7Ð1CðEñ Eô Eˆ
õ 	"¥$ zÑ"2Ô"2Ø"&¤/°$°t¸A±v°+Ô">ñ	@ô 	@ð 	@õ ˜tÔ/¸eÐDÑDÔDˆØ”
ˆÝ!¥$ u¡+¤+¨t¬~Ñ>Ô>Ð>Ð>Ð>r`   c           
      óî  — 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        ¦  «        ¦  «         dS )zXCompare eigenvalues and eigenvectors of eig_banded
           with those of linalg.eig. NrR   rw   r®   r€  rb   rƒ  rm   Frˆ   )r   r`  r8   r[  r   rA   r\  rÊ   r]  ra  r^  r_  )r|   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                      r^   Útest_eig_bandedzTestEigBanded.test_eig_bandede  s  € õ % TÔ%5Ñ6Ô6‰ˆˆxØ˜Q˜Q˜Q¥¨¬
Ñ 3Ô 3Ð3Ô4ˆ	Ý!¥$ u¡+¤+¨t¬~Ñ>Ô>Ð>Ý!¥# i¡.¤.µ#°dÔ6GÑ2HÔ2HÑIÔIÐIå& tÔ'8Ñ9Ô9Ñˆ�	Ø˜q˜q˜q¥'¨&¬+Ñ"6Ô"6Ð6Ô7ˆ
Ý!¥$ v¡,¤,°´Ñ@Ô@Ð@Ý!¥# j¡/¤/µ3°tÔ7IÑ3JÔ3JÑKÔKÐKð ˆØˆÝ",¨TÔ-=Ø47Ø;?À¸,ð#Hñ #Hô #HÑˆ	�<õ 	"¥$ y¡/¤/Ø"&¤.°°d¸1±f°Ô"=ñ	?ô 	?ð 	?å!¥# lÑ"3Ô"3Ý"% dÔ&7¸¸¸¸4ÀÀQÁ¸;¸Ô&GÑ"HÔ"Hñ	Jô 	Jð 	Jõ %/¨tÔ/@Ø69Ø=AÀ4¸Lð%Jñ %Jô %JÑ!ˆ
�Mõ 	"¥$ zÑ"2Ô"2Ø"&¤/°$°t¸A±v°+Ô">ñ	@ô 	@ð 	@å!¥# mÑ"4Ô"4Ý"% dÔ&8¸¸¸¸DÀÀaÁ¸K¸Ô&HÑ"IÔ"Iñ	Kô 	Kð 	Kð ”. Ô&¨Ñ/ˆØ”. Ô&¨Ñ/ˆÝ",¨TÔ-=Ø47Ø;BÀGÐ:Lð#Nñ #Nô #NÑˆ	�<õ 	"¥$ y¡/¤/Ø"&¤.°°d¸1±f°Ô"=ñ	?ô 	?ð 	?å!¥# lÑ"3Ô"3Ý"% dÔ&7¸¸¸¸4ÀÀQÁ¸;¸Ô&GÑ"HÔ"Hñ	Jô 	Jð 	Jð ”/ $Ô'¨&Ñ0ˆØ”/ $Ô'¨&Ñ0ˆÝ$.¨tÔ/@Ø69Ø=DÀgÐ<Nð%Pñ %Pô %PÑ!ˆ
�Mõ 	"¥$ zÑ"2Ô"2Ø"&¤/°$°t¸A±v°+Ô">ñ	@ô 	@ð 	@å!¥# mÑ"4Ô"4Ý"% dÔ&8¸¸¸¸DÀÀaÁ¸K¸Ô&HÑ"IÔ"Iñ	Kô 	Kð 	Kõ % TÔ%5ÀEÐJÑJÔJ‰ˆˆxØ˜Q˜Q˜Q¥¨¬
Ñ 3Ô 3Ð3Ô4ˆ	Ý!¥$ u¡+¤+¨t¬~Ñ>Ô>Ð>Ý!¥# i¡.¤.µ#°dÔ6GÑ2HÔ2HÑIÔIÐIÐIÐIr`   c                 ó²  — t          | j        ¦  «        \  }}t          | j        | j        | j        ¦  «        \  }}}t          |d| j        z  dd…f         ¦  «        }t          | j        | j        z   ¦  «        D ]3}|t          |d| j        z  dz
  |z
  |dz   |…f         |dz   ¦  «        z  }Œ4t          | j        d¬¦  «        \  }}	}
t          ||
¦  «         dS )zZCompare dgbtrf  LU factorisation with the LU factorisation result
           of linalg.lu.rR   Nrb   r   ©Ú	permute_l)
r@   rY  r(   rb  rU  rV  r5   r©   r   r   ©r|   r  re  Úlu_symm_bandÚipivro  Úur®   Úp_linÚl_linÚu_lins              r^   Útest_dgbtrfzTestEigBanded.test_dgbtrfŸ  óã   € õ �T”]Ñ#Ô#‰ˆˆ1Ý#)¨$Ô*;¸T¼WÀdÄgÑ#NÔ#NÑ ˆ�d˜Dõ �˜a ¤™i¨¨¨˜lÔ+Ñ,Ô,ˆÝ�t”w ¤Ñ(Ñ)Ô)ð 	?ð 	?ˆAØ•�l 1 T¤W¡9¨Q¡;¨q¡=°!°A±#°a°%Ð#7Ô8¸!¸A¹#Ñ>Ô>Ñ>ˆAˆAå  ¤¸!Ð<Ñ<Ô<Ñˆˆu�eÝ! ! UÑ+Ô+Ð+Ð+Ð+r`   c                 ó²  — t          | j        ¦  «        \  }}t          | j        | j        | j        ¦  «        \  }}}t          |d| j        z  dd…f         ¦  «        }t          | j        | j        z   ¦  «        D ]3}|t          |d| j        z  dz
  |z
  |dz   |…f         |dz   ¦  «        z  }Œ4t          | j        d¬¦  «        \  }}	}
t          ||
¦  «         dS )zZCompare zgbtrf  LU factorisation with the LU factorisation result
           of linalg.lu.rR   Nrb   r   r›  )
r@   rZ  r*   rc  rU  rV  r5   r©   r   r   r�  s              r^   Útest_zgbtrfzTestEigBanded.test_zgbtrf­  r¥  r`   c                 óö   — t          | j        | j        | j        ¦  «        \  }}}t	          || j        | j        | j        |¦  «        \  }}t          j        | j        | j        ¦  «        }t          ||¦  «         dS )zhCompare dgbtrs  solutions for linear equation system  A*x = b
           with solutions of linalg.solve.N)
r(   rb  rU  rV  r)   rº   r7   r   rY  r   ©r|   rž  rŸ  ro  ÚyÚy_lins         r^   Útest_dgbtrszTestEigBanded.test_dgbtrs»  sm   € õ $*¨$Ô*;¸T¼WÀdÄgÑ#NÔ#NÑ ˆ�d˜DÝ˜ t¤w°´¸¼ÀÑFÔF‰ˆˆ4å”˜Tœ]¨D¬FÑ3Ô3ˆÝ! ! UÑ+Ô+Ð+Ð+Ð+r`   c                 óö   — t          | j        | j        | j        ¦  «        \  }}}t	          || j        | j        | j        |¦  «        \  }}t          j        | j        | j        ¦  «        }t          ||¦  «         dS )zhCompare zgbtrs  solutions for linear equation system  A*x = b
           with solutions of linalg.solve.N)
r*   rc  rU  rV  r+   rd  r7   r   rZ  r   r©  s         r^   Útest_zgbtrszTestEigBanded.test_zgbtrsÅ  sm   € õ $*¨$Ô*;¸T¼WÀdÄgÑ#NÔ#NÑ ˆ�d˜DÝ˜ t¤w°´¸¼À$ÑGÔG‰ˆˆ4å”˜Tœ]¨D¬GÑ4Ô4ˆÝ! ! UÑ+Ô+Ð+Ð+Ð+r`   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 ‚d S )Nr�   rŽ   r   rb   r�   T©Úeigvals_only)rT   r“   r   r4   r@   r\   )r|   r‹   Úa_bandr~   rm   r8  Úv_ns          r^   r”   zTestEigBanded.test_emptyÏ  sÜ   € å”˜&¨Ð+Ñ+Ô+ˆÝ˜&Ñ!Ô!‰ˆˆ1å�bœh¨¨A¨°°A°Ð'7¸rÐBÑBÔBÑCÔC‰ˆˆSàŒw˜$ŠˆˆˆØŒw˜#œ)Ò#Ð#Ð#Ð#àŒw˜&Ò Ð Ð Ð ØŒw˜#œ)Ò#Ð#Ð#Ð#å�v¨DÐ1Ñ1Ô1ˆØŒw˜$ŠˆˆˆØŒw˜#œ)Ò#Ð#Ð#Ð#Ð#Ð#r`   N)r•   r–   r—   rM  rK  rq  rs  rz  r|  r~  r�  r™  r¤  r§  r¬  r®  r˜   r™   rš   re   r›   rT   r;   rœ   r<   r”   r�   r`   r^   rH  rH  ¸  s-  € € € € € ðð ð ðM$ð M$ð M$ðbFð Fð FðFð Fð Fð	Fð 	Fð 	FðGð Gð Gð	Gð 	Gð 	Gð(?ð (?ð (?ðT8Jð 8Jð 8Jðt,ð ,ð ,ð,ð ,ð ,ð,ð ,ð ,ð,ð ,ð ,ð „[×Ò˜T C¨°´
¸GÀRÄ\Ð#RÑSÔSð$ð $ñ TÔSð$ð $ð $r`   rH  c                   ó2   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestEigTridiagonalc                 ó.   — |                       ¦   «          d S rJ  )Úcreate_trimatrL  s    r^   rM  zTestEigTridiagonal.setup_methodá  s   € Ø×ÒÑÔÐÐÐr`   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         | _
        dS )z>Create the full matrix `self.fullmat`, `self.d`, and `self.e`.rO  rP  rb   rQ  r£   N)r6   rl   Úer5   Úfull_matr7   r
   r[  r8   r~   rn  )r|   re  rf  rg  rh  s        r^   r·  z TestEigTridiagonal.create_trimatä  s£   € àˆõ �a˜‘”ˆŒÝ�a˜‘c˜4‘”ˆŒÝ˜dœf™œ­¨T¬V°RÑ(8Ô(8Ñ8½4ÀÄÈ¹?¼?ÑJˆŒå”˜DœMÑ*Ô*‰ˆˆBØŒWˆÝ�r‰{Œ{ˆØ�D”ˆŒØ�q�q�q˜$�w”KˆŒ	ˆ	ˆ	r`   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¬	¦  «         dS )
zTest error conditions.Nr£   rQ   rP  ©Úlapack_driverÚfoor®   ©r   r£   r€  )r  r  r#   rl   r¹  rg   rL  s    r^   Útest_degeneratez"TestEigTridiagonal.test_degenerateó  sÅ   € õ 	•jÕ"6¸¼ÀÄÀsÈÀsÄÑLÔLÐLå•iÕ!5°t´v¸t¼vÈ¹{ÑKÔKÐKå•iÕ!5°t´v¸t¼vØ$&ð	(ñ 	(ô 	(ð 	(å•jÕ"6¸¼ÀÄØ$)ð	+ñ 	+ô 	+ð 	+õ 	•jÕ"6¸¼ÀÄØ ¨wð	8ñ 	8ô 	8ð 	8ð 	8ð 	8r`   c           
      ó"  — dD ]@}t          | j        | j        |¬¦  «        }t          t	          |¦  «        | j        ¦  «         ŒAdD ],}t          t          t           | j        | j        |dd¬¦  «         Œ-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   …         ¦  «         �ŒdS )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   rb   ©r�  r‚  r½  rR   rw   rƒ  rm   N)	r#   rl   r¹  r   rA   r~   r  r  rf   )	r|   Údriverr~   Úw_indr‡  rˆ  r‹  rŒ  Úw_vals	            r^   Útest_eigvalsh_tridiagonalz,TestEigTridiagonal.test_eigvalsh_tridiagonal  sÅ  € ð Kð 	7ð 	7ˆFÝ$ T¤V¨T¬VÀ6ÐJÑJÔJˆAÝ%¥d¨1¡g¤g¨t¬vÑ6Ô6Ð6Ð6à0ð 	/ð 	/ˆFÝ�*Õ&:¸D¼FÀDÄFØ(.°sØ'-ð/ñ /ô /ð /ð /ð 1ð 	Hñ 	HˆFå(Ø”˜œ s¸!½SÀÄ¹[¼[È¹]Ð9KØ$ð&ñ &ô &ˆEõ &¥d¨5¡k¤k°4´6Ñ:Ô:Ð:ð ˆDØˆDÝ(Ø”˜œ s¸$À¸Ø$ð&ñ &ô &ˆEõ &¥d¨5¡k¤k°4´6¸$¸tÀA¹v¸+Ô3FÑGÔGÐGð ”f˜T”l VÑ+ˆGØ”f˜T”l VÑ+ˆGÝ(Ø”˜œ s¸'À7Ð9KØ$ð&ñ &ô &ˆEõ &¥d¨5¡k¤k°4´6¸$¸tÀA¹v¸+Ô3FÑGÔGÐGÑGð+	Hð 	Hr`   c                 ón  — 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         ¦  «        ¦  «         �ŒÒdS )zWCompare eigenvalues and eigenvectors of eigh_tridiagonal
           with those of eig. rÂ  r¼  )rÅ  rÃ  rÄ  rÆ  rÇ  NrÃ  r®   r¤   rÈ  rÉ  r   rb   rÊ  rR   rw   rƒ  rm   )r  r  r$   rl   r¹  r8   r   rA   r~   rÊ   rn  rf   )	r|   rË  r~   rn  rp  r‡  rˆ  r‹  rŒ  s	            r^   Útest_eigh_tridiagonalz(TestEigTridiagonal.test_eigh_tridiagonal$  sÆ  € õ 	•jÕ"2°D´F¸D¼FØ$+ð	-ñ 	-ô 	-ð 	-àAð 	Bð 	BˆFÝ& t¤v¨t¬vÀVÐLÑLÔL‰GˆAˆtØ˜˜˜�G A™JœJ˜Ô'ˆEÝ%¥d¨1¡g¤g¨t¬vÑ6Ô6Ð6Ý%¥c¨%¡j¤jµ#°d´i±.´.ÑAÔAÐAÐAå•jÕ"2°D´F¸D¼FØ$*°3ÀVð	Mñ 	Mô 	Mð 	Mà0ð 	Fñ 	FˆFàˆDÝ�t”v‘;”;˜q‘=ˆDÝ&Ø”˜œ s¸$À¸Ø$ð&ñ &ô &‰GˆAˆtõ &¥d¨1¡g¤g¨t¬vÑ6Ô6Ð6Ý%¥c¨$¡i¤iµ°T´Y±´Ñ@Ô@Ð@ØˆDØˆDÝ&Ø”˜œ s¸$À¸Ø$ð&ñ &ô &‰GˆAˆtõ &¥d¨1¡g¤g¨t¬v°d¸4À¹6°kÔ/BÑCÔCÐCÝ%¥c¨$¡i¤iÝ&)¨$¬)°A°A°A°t¸DÀ¹F°{°NÔ*CÑ&DÔ&DñFô Fð Fð ”f˜T”l VÑ+ˆGØ”f˜T”l VÑ+ˆGÝ&Ø”˜œ s¸'À7Ð9KØ$ð&ñ &ô &‰GˆAˆtõ &¥d¨1¡g¤g¨t¬v°d¸4À¹6°kÔ/BÑCÔCÐCÝ%¥c¨$¡i¤iÝ&)¨$¬)°A°A°A°t¸DÀ¹F°{°NÔ*CÑ&DÔ&DñFô Fð Fñ Fð3	Fð 	Fr`   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 ‚dS )zSee gh-20075rR  Tr°  rb   r®   r�   r€  rR   rP  rm   )r°   r   r   r�   r¸   N)rT   r4   r$   Úndimr   rÇ   r@   )r|   r}   rº   Úxr5  s        r^   Útest_eigh_tridiagonal_1x1z,TestEigTridiagonal.test_eigh_tridiagonal_1x1N  s  € åŒH�d�VÑÔˆÝŒH�R‰LŒLˆÝ˜Q °Ð5Ñ5Ô5ˆØŒv˜Š{ˆ{ˆ{ˆ{Ý˜˜1ÑÔÐÝ  1¨S¸vÐFÑFÔF‰ˆˆ1ØŒv˜Š{ˆ{ˆ{ˆ{ØŒv˜Š{ˆ{ˆ{ˆ{Ý˜˜1ÑÔÐÝ˜�5 2 $ ™=œ=Ñ)Ô)Ð)å  1¨S¸wÐGÑGÔG‰ˆˆ1ØŒv˜Š{ˆ{ˆ{ˆ{ØŒw˜$ŠˆˆˆØŒw˜&Ò Ð Ð Ð Ð Ð r`   N)	r•   r–   r—   rM  r·  rÀ  rÎ  rÐ  rÔ  r�   r`   r^   rµ  rµ  à  sv   € € € € € ðð ð ð ð  ð  ð8ð 8ð 8ð Hð  Hð  HðD(Fð (Fð (FðT!ð !ð !ð !ð !r`   rµ  c                   ó  — e Zd Zd„ Zd„ Zd„ Zd„ Zed„ ¦   «         Ze	j
                             de¦  «        e	j
                             dd¦  «        d	„ ¦   «         ¦   «         Ze	j
                             dd¦  «        d
„ ¦   «         Ze	j
                             dd¦  «        e	j
                             dd¦  «        d„ ¦   «         ¦   «         Zd„ Ze	j
                             deeej        eej        g¦  «        d„ ¦   «         ZdS )ÚTestEighc           	      óL  — 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¬¦  «         d S )Nrb   rR   rt   r=  )Útype)Úsubset_by_valueÚsubset_by_indexr   ©rÚ  r°   ©rÙ  Úwrong©rË  ÚgvxÚevrÚgvd)rË  rÚ  )r  r  r   rT   rÆ   rL  s    r^   Útest_wrong_inputszTestEigh.test_wrong_inputsb  s  € å•j¥$­¬°°A°©¬Ñ8Ô8Ð8å•j¥$­¬°°A°©¬½¼À!ÀQÀ¹¼ÑIÔIÐIå•j¥$­¬°°A°©¬½¼À!ÀQÀ¹¼ÑIÔIÐIå•j¥$­¬°°A°©¬½¼À!ÀQÀ¹¼Øð	ñ 	ô 	ð 	õ 	•j¥$­¬°°A°©¬½¼À!ÀQÀ¹¼Ø'(¨! f¸qÀ!¸fð	Fñ 	Fô 	Fð 	Fõ 	•j¥$­¬°°A°©¬½¼À!ÀQÀ¹¼Ø'(¨! fð	.ñ 	.ô 	.ð 	.õ 	•j¥$­¬°°A°©¬½¼À!ÀQÀ¹¼Ø')¨1 gð	/ñ 	/ô 	/ð 	/õ 	•j¥$­¬°°A°©¬½¼À!ÀQÀ¹¼Ø'(¨! fð	.ñ 	.ô 	.ð 	.õ 	•j¥$­¬°°A°©¬½¼À!ÀQÀ¹¼Ø'(¨! fð	.ñ 	.ô 	.ð 	.õ 	•j¥$­¬°°A°©¬ÀÐHÑHÔHÐHå•j¥$­¬°°A°©¬¸ÀeÐLÑLÔLÐLå•j¥$­¬°°A°©¬½¼À!ÀQÀ¹¼Ø"ð	$ñ 	$ô 	$ð 	$õ 	•j¥$­¬°°A°©¬½¼À!ÀQÀ¹¼Ø"°Q¸°Fð	<ñ 	<ô 	<ð 	<å•j¥$­¬°°A°©¬½¼À!ÀQÀ¹¼Ø"°Q¸°Fð	<ñ 	<ô 	<ð 	<ð 	<ð 	<r`   c           	      óŽ   — t          t          t          t          j        ddg¦  «        t          j        ddg¦  «        ¦  «         d S )Nrt   )r  r'   r   rT   rÆ   rL  s    r^   Útest_nonpositive_bzTestEigh.test_nonpositive_bˆ  s4   € Ý•k¥4­¬°!°Q°©¬½"¼'À1ÀaÀ&¹/¼/ÑJÔJÐJÐJÐJr`   c                 óê  — t          t          ¦  «        D ]Ý\  }}t          d|¬¦  «        }t          |ddg¬¦  «        \  }}t	          |j        d         t          |¦  «        ¦  «         t          |dk    |dk     z  ¦  «        sJ ‚t          dd|¬¦  «        }t          ||ddg¬¦  «        \  }}t	          |j        d         t          |¦  «        ¦  «         t          |dk    |dk     z  ¦  «        sJ ‚ŒÞd S )	Né   rŽ   r°   rR   rÜ  rb   T)r[   r\   )Ú	enumerateÚDTYPESr_   r   r   r@   rf   rÈ   )r|   Úindr‹   r}   r~   rm   rº   s          r^   Útest_value_subsetszTestEigh.test_value_subsetsŒ  s   € Ý ¥Ñ(Ô(ð 
	+ð 
	+‰GˆC�å(¨°2Ð6Ñ6Ô6ˆAÝ˜¨B°¨7Ð3Ñ3Ô3‰DˆAˆqÝ˜œ œ¥S¨¡V¤VÑ,Ô,Ð,Ý˜˜Bš 1 q¢5Ñ)Ñ*Ô*Ð*Ð*Ð*å(¨°DÀÐCÑCÔCˆAÝ˜˜1¨r°1¨gÐ6Ñ6Ô6‰DˆAˆqÝ˜œ œ¥S¨¡V¤VÑ,Ô,Ð,Ý˜˜Bš 1 q¢5Ñ)Ñ*Ô*Ð*Ð*Ð*Ð*ð
	+ð 
	+r`   c                 ó¤   — t          ddgddgg¦  «        }t          ddgddgg¦  «        }t          |¦  «        \  }}t          ||¦  «        \  }}d S )Nrb   rR   é   rt   rv   )r4   r   )r|   r}   rº   r~   Úzs        r^   Útest_eigh_integerzTestEigh.test_eigh_integer™  sZ   € Ý�A�q�6˜A˜q˜6Ð"Ñ#Ô#ˆÝ�A�q�6˜A˜q˜6Ð"Ñ#Ô#ˆÝ�A‰wŒw‰ˆˆ1Ý�A�q‰zŒz‰ˆˆ1ˆ1ˆ1r`   c                 óú   — dd l }|j                             d¦  «                             ¦   «         }t	          j        |¦  «        }t          t          t          |¦  «         t          t          t          |¦  «         d S )Nr   rR   )	Úscipy.sparseÚsparseÚidentityÚtocscrT   Ú
atleast_2dr  r  r   )r|   Úscipyr}   rº   s       r^   Útest_eigh_of_sparsezTestEigh.test_eigh_of_sparseŸ  sj   € ð 	ÐÐÐØŒL×!Ò! !Ñ$Ô$×*Ò*Ñ,Ô,ˆÝŒM˜!ÑÔˆÝ•j¥$¨Ñ*Ô*Ð*Ý•j¥$¨Ñ*Ô*Ð*Ð*Ð*r`   Údtype_rË  )rg  Úevdrà  Úevxc                 ó¼   — t          d|¬¦  «        }t          ||¬¦  «        \  }}t          ||z  ||z  z
  ddt          j        |¦  «        j        z  d¬¦  «         d S )Nræ  )rZ   r\   rÞ  ru  éè  ©rÁ   rÀ   )r_   r   r   rT   ÚfinfoÚeps)r|   rË  r÷  r}   r~   rm   s         r^   Útest_various_drivers_standardz&TestEigh.test_various_drivers_standard¨  su   € õ % r°Ð8Ñ8Ô8ˆÝ�A˜fÐ%Ñ%Ô%‰ˆˆ1Ý˜˜A™  Q¡™¨Ø!¥"¤(¨6Ñ"2Ô"2Ô"6Ñ6Øð	!ñ 	!ô 	!ð 	!ð 	!ð 	!r`   c                 ób  — 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¬¦  «         d S )Nrb   rÞ  rP  çVçž¯Ò<r-  rQ   r   )r   r   r4   )r|   rË  r~   rm   s       r^   Útest_1x1_lworkzTestEigh.test_1x1_lwork±  s¶   € å�a�S�E &Ð)Ñ)Ô)‰ˆˆ1Ý˜�5 " ™;œ;¨UÐ3Ñ3Ô3Ð3Ý˜�5 2 $ ™=œ=¨uÐ5Ñ5Ô5Ð5õ �b�T�F 6Ð*Ñ*Ô*‰ˆˆ1Ý˜�5 ! ™:œ:¨EÐ2Ñ2Ô2Ð2Ý˜�5 2 $ ™=œ=¨uÐ5Ñ5Ô5Ð5Ð5Ð5r`   rØ  rs   )Úgvrá  rß  c                 ót  — t          j        d¦  «        }t          d¦  «        }t          dd¬¦  «        }t          ||||¬¦  «        \  }}|dk    r!t	          ||z  |||z  z  z
  d|d¬¦  «         d S |d	k    r!t	          ||z  |z  ||z  z
  d|d¬¦  «         d S t	          ||z  |z  ||z  z
  d|d¬¦  «         d S )
Ng     ˆ³@ræ  T)r[   )r}   rº   rË  rØ  rb   ru  rü  rR   )rT   Úspacingr_   r   r   )r|   rË  rØ  rÁ   r}   rº   r~   rm   s           r^   Ú test_various_drivers_generalizedz)TestEigh.test_various_drivers_generalized¼  sè   € õ Œz˜%Ñ Ô ˆÝ$ RÑ(Ô(ˆÝ$ R°Ð5Ñ5Ô5ˆÝ�a˜1 V°$Ð7Ñ7Ô7‰ˆˆ1Ø�1Š9ˆ9Ý˜A ™E A q¨1¡u¡IÑ-¨r¸À2ÐFÑFÔFÐFÐFÐFØ�QŠYˆYÝ˜A ™E A™I¨¨A©Ñ-¨r¸À2ÐFÑFÔFÐFÐFÐFå˜A ™E A™I¨¨A©Ñ-¨r¸À2ÐFÑFÔFÐFÐFÐFr`   c                 óØ  — 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¦  «        ¦  «         d S )
Nrv   rb   rR   rÛ  )rb   ç333333ó?çÍÌÌÌÌÌô?ç      ø?rR   gffffffö?rÜ  r  r	  )r_   r   r   rf   r   rT   r5   r4   )r|   r}   r~   Úw2rº   Úw3s         r^   Útest_eigvalsh_new_argszTestEigh.test_eigvalsh_new_argsÊ  sÝ   € Ý$ QÑ'Ô'ˆÝ�Q¨¨A¨Ð/Ñ/Ô/ˆÝ•S˜‘V”V˜QÑÔÐå�a¨!¨Q¨Ð0Ñ0Ô0ˆÝ•S˜‘W”W˜aÑ Ô Ð Ý˜˜2ÑÔÐåŒGÐ)Ð)Ð)Ñ*Ô*ˆÝ�a¨!¨S¨Ð2Ñ2Ô2ˆÝ•S˜‘W”W˜aÑ Ô Ð Ý˜�BœH c¨3 ZÑ0Ô0Ñ1Ô1Ð1Ð1Ð1r`   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 ‚d S )Nr�   rŽ   rR   r�   Tr°  )rT   r“   r   rF   r@   r\   r   )r|   r‹   r}   r~   rm   r8  r³  s          r^   r”   zTestEigh.test_emptyØ  så   € åŒH�V 2Ð&Ñ&Ô&ˆÝ�A‰wŒw‰ˆˆ1å�œ˜q¨Ð+Ñ+Ô+Ñ,Ô,‰ˆˆSàŒw˜$ŠˆˆˆØŒw˜#œ)Ò#Ð#Ð#Ð#àŒw˜&Ò Ð Ð Ð ØŒw˜#œ)Ò#Ð#Ð#Ð#å� Ð&Ñ&Ô&ˆÝ˜�2œ8 D™>œ>Ñ*Ô*Ð*àŒw˜$ŠˆˆˆØŒw˜#œ)Ò#Ð#Ð#Ð#Ð#Ð#r`   N)r•   r–   r—   râ  rä  rê  rî  rK   rö  r˜   r™   rš   rè  rÿ  r  r  r  re   r›   rT   r;   rœ   r<   r”   r�   r`   r^   rÖ  rÖ  a  s‰  € € € € € ð$<ð $<ð $<ðLKð Kð Kð+ð +ð +ðð ð ð ð+ð +ñ Ôð+ð „[×Ò˜X vÑ.Ô.Ø„[×Ò˜XÐ'BÑCÔCð!ð !ñ DÔCñ /Ô.ð!ð „[×Ò˜XÐ'BÑCÔCð6ð 6ñ DÔCð6ð „[×Ò˜V YÑ/Ô/Ø„[×Ò˜XÐ';Ñ<Ô<ð
Gð 
Gñ =Ô<ñ 0Ô/ð
Gð2ð 2ð 2ð „[×Ò˜T C¨°´
¸GÀRÄ\Ð#RÑSÔSð$ð $ñ TÔSð$ð $ð $r`   rÖ  c                   óD  — 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                             e d¬¦  «        ej        j        d„ ¦   «         ¦   «         Zej                             dg d¢¦  «        ej                             dg d¢¦  «        ej                             de¦  «        d„ ¦   «         ¦   «         ¦   «         Zej                             deeej        eej        g¦  «        ej                             dg d¢¦  «        d„ ¦   «         ¦   «         ZdS )ÚTestSVD_GESDDÚgesddc                 ó‚   — t          t          t          dggd¬¦  «         t          t          t          dggd¬¦  «         d S )NrP  r¼  r¾  )r  rg   r   r  rL  s    r^   rÀ  zTestSVD_GESDD.test_degenerateî  s>   € Ý•i¥¨ t f¸BÐ?Ñ?Ô?Ð?Ý•j¥#¨¨ v¸UÐCÑCÔCÐCÐCÐCr`   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  |¦  «         ŒÜd S )Nrs   ©rb   ræ  rt   ru   ©TF©Úfull_matricesr½  rt   r   ©r   r½  r   rX   rF   r9   r@   r\   Úcharr©   rf   ©r|   r}   r  r   ÚsÚvhÚsigmar®   s           r^   r€   zTestSVD_GESDD.test_simpleò  sü   € ØˆYˆY˜
˜
˜
 I I IÐ.ˆØ*ð 	9ð 	9ˆMÝ˜1¨MØ)-Ô);ð=ñ =ô =‰HˆAˆq�"å% a¤c¨A¡g­s°1©v¬vÑ6Ô6Ð6Ý% b¤d¨R¡iµ°Q±´Ñ8Ô8Ð8Ý˜1œ7 1œ: r¤x°¤{Ð3°Q´W´\ÑBÔBˆEÝ�3˜q™6œ6‘]”]ð #ð #�Ø œd��a˜�d‘�Ý% a¨%¡i°"¡n°aÑ8Ô8Ð8Ð8ð	9ð 	9r`   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  |¦  «         ŒÜd S )Nrs   ru   r  r  rt   r   r  r  s           r^   Útest_simple_singularz"TestSVD_GESDD.test_simple_singularþ  sü   € ØˆYˆY˜	˜	˜	 9 9 9Ð-ˆØ*ð 	9ð 	9ˆMÝ˜1¨MØ)-Ô);ð=ñ =ô =‰HˆAˆq�"å% a¤c¨A¡g­s°1©v¬vÑ6Ô6Ð6Ý% b¤d¨R¡iµ°Q±´Ñ8Ô8Ð8Ý˜1œ7 1œ: r¤x°¤{Ð3°Q´W´\ÑBÔBˆEÝ�3˜q™6œ6‘]”]ð #ð #�Ø œd��a˜�d‘�Ý% a¨%¡i°"¡n°aÑ8Ô8Ð8Ð8ð	9ð 	9r`   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  |¦  «         ŒÂd S )Nrs   ©r=  rv   rw   r  r  r   ©r   r½  r   rX   rF   r@   r9   r\   r  r©   rf   r  s           r^   Útest_simple_underdetz"TestSVD_GESDD.test_simple_underdet
  sà   € ØˆYˆY˜	˜	˜	Ð"ˆØ*ð 	9ð 	9ˆMÝ˜1¨MØ)-Ô);ð=ñ =ô =‰HˆAˆq�"å% a¤c¨A¡g­s°1´7¸1´:©¬Ñ?Ô?Ð?Ý˜1œ7 1œ: r¤x°¤{Ð3°Q´W´\ÑBÔBˆEÝ�3˜q™6œ6‘]”]ð #ð #�Ø œd��a˜�d‘�Ý% a¨%¡i°"¡n°aÑ8Ô8Ð8Ð8ð	9ð 	9r`   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  |¦  «         Œçd S )	Nrb   rR   r=  rv   rt   r  r  r   r"  r  s           r^   Útest_simple_overdetz!TestSVD_GESDD.test_simple_overdet  s  € Ø�ˆV�a˜�V˜a ˜VÐ$ˆØ*ð 	9ð 	9ˆMÝ˜1¨MØ)-Ô);ð=ñ =ô =‰HˆAˆq�"å% a¤c¨A¡g­s°1´7¸1´:©¬Ñ?Ô?Ð?Ý% b¤d¨R¡iµ°Q±´Ñ8Ô8Ð8Ý˜1œ7 1œ: r¤x°¤{Ð3°Q´W´\ÑBÔBˆEÝ�3˜q™6œ6‘]”]ð #ð #�Ø œd��a˜�d‘�Ý% a¨%¡i°"¡n°aÑ8Ô8Ð8Ð8ð	9ð 	9r`   c           
      ó¾  — t           j                             d¦  «        }d}d}t          d¦  «        D �](}|                     ||g¦  «        |                     ||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  |¦  «         ŒòŒ÷�Œ*d S )	Nr  ræ  rì   rt   r  r  rb   r   )rT   rU   r  r©   r   r½  r   rX   rF   r@   r9   r\   r  rf   )r|   rj   rZ   Úmr®   r}   r  r   r  r  r  s              r^   Útest_randomzTestSVD_GESDD.test_random!  sq  € ÝŒi×#Ò# DÑ)Ô)ˆØˆØˆÝ�q‘”ð 
	Añ 
	AˆAØ—j’j ! Q Ñ(Ô(¨#¯*ª*°a¸°VÑ*<Ô*<Ð=ð 	Að 	A�Ø%2ð Að A�MÝ" 1°MØ15Ô1Cð Eñ  Eô  E‘H�A�q˜"å-¨a¬c°A©gµs¸1¼7À1¼:±´ÑGÔGÐGÝ-¨b°2´4©i½¸R¼XÀa¼[Ñ9IÔ9IÑJÔJÐJÝ! 1¤7¨1¤:¨r¬x¸¬{Ð";¸Q¼W¼\ÑJÔJ�EÝ"¥3 q¡6¤6™]œ]ð +ð +˜Ø&'¨¤d˜˜a ˜d™˜Ý-¨a°%©i¸"©n¸aÑ@Ô@Ð@Ð@ðAñ	Að
	Að 
	Ar`   c                 óP  — g d¢g d¢g d¢g}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  |¦  «         �Œd S )Nrs   )rb   y               @rt   ru   r  r  rb   r   )r   r½  r   rW   rX   rF   r@   r9   r\   r  r©   rf   r  s           r^   r†   z!TestSVD_GESDD.test_simple_complex1  s  € ØˆYˆY˜
˜
˜
 I I IÐ.ˆØ*ð 	9ñ 	9ˆMÝ˜1¨MØ)-Ô);ð=ñ =ô =‰HˆAˆq�"å% a§f¢f¡h¤h¤j°1¡nµc¸!¼'À!¼*±o´oÑFÔFÐFÝ% b§g¢g¡i¤i¤k°BÑ&6½¸B¼HÀQ¼KÑ8HÔ8HÑIÔIÐIÝ˜1œ7 1œ: r¤x°¤{Ð3°Q´W´\ÑBÔBˆEÝ�3˜q™6œ6‘]”]ð #ð #�Ø œd��a˜�d‘�Ý% a¨%¡i°"¡n°aÑ8Ô8Ð8Ñ8ð	9ð 	9r`   c           
      óä  — t           j                             d¦  «        }d}d}t          d¦  «        D �];}dD �]4}|                     ||g¦  «        |                     ||g¦  «        fD �]}|d|                     t	          |j        ¦  «        ¦  «        z  z   }t          ||| j        ¬¦  «        \  }}}	t          | 	                    ¦   «         j
        |z  t          |j        d         ¦  «        ¦  «         t          |j        d         |	j        d	         f|j        j        ¦  «        }
t          t          |¦  «        ¦  «        D ]}||         |
||f<   Œt          ||
z  |	z  |¦  «         �Œ�Œ6�Œ=d S )
Nr  ræ  rì   rt   r  rQ   r  rb   r   )rT   rU   r  r©   Úlistr@   r   r½  r   rW   rX   rF   r9   r\   r  rf   )r|   rj   rZ   r'  r®   r  r}   r   r  r  r  s              r^   Útest_random_complexz!TestSVD_GESDD.test_random_complex=  s�  € ÝŒi×#Ò# DÑ)Ô)ˆØˆØˆÝ�q‘”ð 	Añ 	AˆAØ!.ð Añ A�ØŸ*š* a¨ VÑ,Ô,¨c¯jªj¸!¸Q¸Ñ.@Ô.@ÐAð Añ A�AØ˜B˜sŸzšz­$¨q¬w©-¬-Ñ8Ô8Ñ8Ñ8�AÝ" 1°MØ15Ô1Cð Eñ  Eô  E‘H�A�q˜"å-¨a¯fªf©h¬h¬j¸1©nÝ.1°!´'¸!´*©o¬oñ?ô ?ð ?õ
 " 1¤7¨1¤:¨r¬x¸¬{Ð";¸Q¼W¼\ÑJÔJ�EÝ"¥3 q¡6¤6™]œ]ð +ð +˜Ø&'¨¤d˜˜a ˜d™˜Ý-¨a°%©i¸"©n¸aÑ@Ô@Ð@Ñ@ñAñAð	Að 	Ar`   c                 ó  — t           j                             d¦  «        }g d¢}|D ]f}t           j        t           j        t           j        t           j        fD ]5} |j        |Ž                      |¦  «        }t          || j
        ¬¦  «         Œ6Œgd S )Nr  ))rñ   rø   )rð   é2   )é<   r  r¼  )rT   rU   r  r;   r&  r<   rF  rV   rY   r   r½  )r|   rj   ÚsizesÚszr‹   r}   s         r^   Útest_crash_1580zTestSVD_GESDD.test_crash_1580Q  s”   € ÝŒi×#Ò# DÑ)Ô)ˆØ/Ð/Ð/ˆØð 	9ð 	9ˆBÝ”z¥2¤:­r¬|½R¼]ÐKð 9ð 9�Ø�C”H˜b�M×(Ò(¨Ñ,Ô,�å�A TÔ%7Ð8Ñ8Ô8Ð8Ð8ð9ð	9ð 	9r`   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  |¦  «         d S )Nrs   r  ru   F)r‰   r½  rt   r   r  )r|   r}   r   r  r  r  r®   s          r^   r  zTestSVD_GESDD.test_check_finiteZ  sß   € ØˆYˆY˜
˜
˜
 I I IÐ.ˆÝ�q u¸DÔ<NÐOÑOÔO‰ˆˆ1ˆbÝ! !¤#¨¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! "¤$¨¡)­S°©V¬VÑ4Ô4Ð4Ý�q”w˜q”z 2¤8¨A¤;Ð/°´´Ñ>Ô>ˆÝ•s˜1‘v”v‘”ð 	ð 	ˆAØ˜Aœ$ˆE�!�Q�$‰KˆKÝ! ! e¡)¨b¡.°!Ñ4Ô4Ð4Ð4Ð4r`   c                 ór   — t          j        g d¢g d¢g d¢g d¢g¦  «        }t          || j        ¬¦  «         d S )N)çKÚ}\UUÅ?ç“vWUUå?r5  ru  ru  ru  )ru  r5  r6  r5  ru  ru  )ru  ru  r5  r6  r5  ru  )ru  ru  ru  r5  r6  r5  r¼  )rT   r4   r   r½  )r|   rº   s     r^   Útest_gh_5039zTestSVD_GESDD.test_gh_5039d  s^   € õ ŒHØ=Ð=Ð=Ø=Ð=Ð=Ø=Ð=Ð=Ø=Ð=Ð=ð?ñ@ô @ˆõ
 	ˆA˜TÔ/Ð0Ñ0Ô0Ð0Ð0Ð0r`   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
¦  «         d S )NihB  )Úfree_mbrb   l        rŽ   r¿  F©r  r   rP  r�   )rI   rT   r9   r;   r   r   )r|   r]   r   r  r  s        r^   Útest_large_matrixzTestSVD_GESDD.test_large_matrixu  s‡   € õ 	 %Ð(Ñ(Ô(Ð(ÝŒH�a˜�Z¥r¤zÐ2Ñ2Ô2ˆØˆˆ%‰Ý�q¨Ð.Ñ.Ô.‰ˆˆ1ˆbÝ˜˜!œ˜cÑ"Ô"Ð"Ý˜˜$œ " U¤)Ñ+¨SÑ1Ô1Ð1Ð1Ð1r`   r'  ©r   rb   rR   rZ   r\   c                 óâ  — t          j        ||f|¬¦  «        }t          ||¦  «        }|j        j        }|dv r|                     ¦   «         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        |¦  «        ¦  «         d S )NrŽ   ÚFDFr<  ©Ú
compute_uv)	rT   r9   Úminr\   r  Úlowerr   r   r@   )r|   r'  rZ   r\   r}   r  ÚdcharÚ
real_dcharr   r  rm   s              r^   Útest_shape_dtypezTestSVD_GESDD.test_shape_dtype  s¼  € õ ŒH�a˜�V 5Ð)Ñ)Ô)ˆÝ��1‰IŒIˆØ””ˆØ&+¨t m m�U—[’[‘]”]�]¸ˆ
å�a‘&”&‰ˆˆ1ˆaÝ�Q”W˜q !˜fÑ%Ô%Ð%Ý�Q”W˜eÑ$Ô$Ð$Ý�Q”W˜q˜dÑ#Ô#Ð#Ý�Q”W�bœh zÑ2Ô2Ñ3Ô3Ð3Ý�Q”W˜q !˜fÑ%Ô%Ð%Ý�Q”W˜eÑ$Ô$Ð$å�a uÐ-Ñ-Ô-‰ˆˆ1ˆaÝ�Q”W˜q !˜fÑ%Ô%Ð%Ý�Q”W˜eÑ$Ô$Ð$Ý�Q”W˜q˜dÑ#Ô#Ð#Ý�Q”W�bœh zÑ2Ô2Ñ3Ô3Ð3Ý�Q”W˜q !˜fÑ%Ô%Ð%Ý�Q”W˜eÑ$Ô$Ð$å�˜eÐ$Ñ$Ô$ˆÝ�Q”W˜q˜dÑ#Ô#Ð#Ý�Q”W�bœh zÑ2Ô2Ñ3Ô3Ð3Ð3Ð3r`   r‹   ©r'  rZ   ©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 ‚d S )Nrt   rŽ   r�   Fr<  r   rA  )rT   rF   r   r“   r   rò  r\   )r|   r‹   r'  rZ   Úa0Úu0Ús0r«   r}   r   r  rm   s               r^   r”   zTestSVD_GESDD.test_emptyœ  sÉ  € õ ŒV�A˜RÐ Ñ Ô ˆÝ˜‘W”W‰
ˆˆB�åŒH�a˜�V 2Ð&Ñ&Ô&ˆÝ�a‘&”&‰ˆˆ1ˆaÝ˜�2œ; q™>œ>Ñ*Ô*Ð*Ý˜�2œ8 D™>œ>Ñ*Ô*Ð*Ý˜�2œ; q™>œ>Ñ*Ô*Ð*àŒw˜"œ(Ò"Ð"Ð"Ð"ØŒw˜"œ(Ò"Ð"Ð"Ð"ØŒw˜"œ(Ò"Ð"Ð"Ð"å�a uÐ-Ñ-Ô-‰ˆˆ1ˆaÝ˜�2œ8 Q¨ FÑ+Ô+Ñ,Ô,Ð,Ý˜�2œ8 D™>œ>Ñ*Ô*Ð*Ý˜�2œ8 Q¨ FÑ+Ô+Ñ,Ô,Ð,àŒw˜"œ(Ò"Ð"Ð"Ð"ØŒw˜"œ(Ò"Ð"Ð"Ð"ØŒw˜"œ(Ò"Ð"Ð"Ð"å�˜eÐ$Ñ$Ô$ˆÝ˜�2œ8 D™>œ>Ñ*Ô*Ð*àŒw˜"œ(Ò"Ð"Ð"Ð"Ð"Ð"r`   N)r•   r–   r—   r½  rÀ  r€   r  r#  r%  r(  r†   r,  r2  r  r7  r˜   r™   ÚskipifrJ   Úslowr=  rš   rè  rG  re   r›   rT   r;   rœ   r<   r”   r�   r`   r^   r  r  ë  sß  € € € € € Ø€MðDð Dð Dð
9ð 
9ð 
9ð
9ð 
9ð 
9ð	9ð 	9ð 	9ð
9ð 
9ð 
9ðAð Að Að 
9ð 
9ð 
9ðAð Að Að(9ð 9ð 9ð5ð 5ð 5ð1ð 1ð 1ð" „[×Ò˜I˜Ð.FÐÑGÔGØ„[Ôð2ð 2ñ Ôñ HÔGð2ð „[×Ò˜S ) ) )Ñ,Ô,Ø„[×Ò˜S ) ) )Ñ,Ô,Ø„[×Ò˜W fÑ-Ô-ð4ð 4ñ .Ô-ñ -Ô,ñ -Ô,ð4ð4 „[×Ò˜T C¨°´
¸GÀRÄ\Ð#RÑSÔSØ„[×Ò˜ZÐ)AÐ)AÐ)AÑBÔBð#ð #ñ CÔBñ TÔSð#ð #ð #r`   r  c                   ó   — e Zd ZdZdS )ÚTestSVD_GESVDÚgesvdN)r•   r–   r—   r½  r�   r`   r^   rQ  rQ  º  s   € € € € € Ø€M€M€Mr`   rQ  zout of memory in WASMr8  z#out of memory in 32-bit CI workflowrR   rO  c                  ó¾   — t          j        dt           j        ¬¦  «        } t          t          ¦  «        5  t          | ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )N)i¿  iŠÏ  rŽ   )rT   rÆ   r&  r  r  r   )Údfs    r^   Útest_svd_gesdd_nofegfaultrU  À  s—   € õ 
„wˆ}¥B¤JÐ/Ñ/Ô/€BÝ	•zÑ	"Ô	"ð ð ÝˆB‰Œˆðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   µAÁAÁAc                  óÖ   — t          j        d¦  «        } t           j        | d<   t          j        t
          d¬¦  «        5  t          | d¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NrR   r�   ÚNaN)ÚmatchFrˆ   )rT   rF   Únanr˜   r	   r  r   ©r]   s    r^   Útest_gesdd_nan_error_messager[  Ì  s¦   € Ý
Œˆq‰	Œ	€AÝŒf€A€d�GÝ	Œ•z¨Ð	/Ñ	/Ô	/ð #ð #ÝˆA˜EÐ"Ñ"Ô"Ð"ð#ð #ð #ñ #ô #ð #ð #ð #ð #ð #ð #ð #øøøð #ð #ð #ð #ð #ð #s   ¿AÁA"Á%A"c                   óÈ   — e Zd Ze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dS )ÚTestSVDValsr‹   c                 óX  — g gt          j        d¦  «        t          j        d¦  «        fD ]~}t          j        ||¬¦  «        }t	          |¦  «        }t          |t          j        d¦  «        ¦  «         t	          t          j        d|¬¦  «        ¦  «        }|j        |j        k    sJ ‚Œd S )Nr’   ©r   rt   rŽ   r   rR   )rT   r“   rÆ   r4   r   r   rF   r\   )r|   r‹   r}   r  rM  s        r^   r”   zTestSVDVals.test_emptyÕ  s¡   € à�•r”x Ñ'Ô'­¬°©¬Ð8ð 	'ð 	'ˆAÝ”˜ "Ð%Ñ%Ô%ˆAÝ˜‘
”
ˆAÝ˜�BœH Q™KœKÑ(Ô(Ð(å�œ ¨Ð,Ñ,Ô,Ñ-Ô-ˆBØ”7˜bœhÒ&Ð&Ð&Ð&Ð&ð	'ð 	'r`   c                 óØ   — g d¢g d¢g d¢g}t          |¦  «        }t          t          |¦  «        dk    ¦  «         t          |d         |d         cxk    o|d         k    nc ¦  «         d S )Nrs   ru   rt   r   rb   rR   ©r   r   rf   ©r|   r}   r  s      r^   r€   zTestSVDVals.test_simpleß  sy   € ØˆYˆY˜	˜	˜	 9 9 9Ð-ˆÝ�A‰JŒJˆÝ•�A‘”˜!’ÑÔÐÝ��!”˜˜!œÐ$Ð$Ò$Ð$  !¤Ò$Ð$Ð$Ð$Ñ%Ô%Ð%Ð%Ð%r`   c                 ó²   — g d¢g d¢g}t          |¦  «        }t          t          |¦  «        dk    ¦  «         t          |d         |d         k    ¦  «         d S )Nrs   r!  rR   r   rb   ra  rb  s      r^   r#  z TestSVDVals.test_simple_underdetå  sW   € ØˆYˆY˜	˜	˜	Ð"ˆÝ�A‰JŒJˆÝ•�A‘”˜!’ÑÔÐÝ��!”˜˜!œ’ÑÔÐÐÐr`   c                 ó¸   — ddgddgddgg}t          |¦  «        }t          t          |¦  «        dk    ¦  «         t          |d         |d         k    ¦  «         d S )Nrb   rR   r=  rv   rt   r   ra  rb  s      r^   r%  zTestSVDVals.test_simple_overdetë  s]   € Ø�ˆV�a˜�V˜a ˜VÐ$ˆÝ�A‰JŒJˆÝ•�A‘”˜!’ÑÔÐÝ��!”˜˜!œ’ÑÔÐÐÐr`   c                 óØ   — g d¢g d¢g d¢g}t          |¦  «        }t          t          |¦  «        dk    ¦  «         t          |d         |d         cxk    o|d         k    nc ¦  «         d S )Nrs   )rb   ræ  ù              @ru   rt   r   rb   rR   ra  rb  s      r^   r†   zTestSVDVals.test_simple_complexñ  sy   € ØˆYˆY˜˜˜ Y Y YÐ/ˆÝ�A‰JŒJˆÝ•�A‘”˜!’ÑÔÐÝ��!”˜˜!œÐ$Ð$Ò$Ð$  !¤Ò$Ð$Ð$Ð$Ñ%Ô%Ð%Ð%Ð%r`   c                 ó²   — g d¢g d¢g}t          |¦  «        }t          t          |¦  «        dk    ¦  «         t          |d         |d         k    ¦  «         d S )Nrs   )r=  y              @rw   rR   r   rb   ra  rb  s      r^   Útest_simple_underdet_complexz(TestSVDVals.test_simple_underdet_complex÷  sW   € ØˆYˆY˜
˜
˜
Ð#ˆÝ�A‰JŒJˆÝ•�A‘”˜!’ÑÔÐÝ��!”˜˜!œ’ÑÔÐÐÐr`   c                 ó¸   — ddgddgddgg}t          |¦  «        }t          t          |¦  «        dk    ¦  «         t          |d         |d         k    ¦  «         d S )Nrb   rR   r=  rv   rf  r   ra  rb  s      r^   Útest_simple_overdet_complexz'TestSVDVals.test_simple_overdet_complexý  s]   € Ø�ˆV�a˜�V˜b !˜WÐ%ˆÝ�A‰JŒJˆÝ•�A‘”˜!’ÑÔÐÝ��!”˜˜!œ’ÑÔÐÐÐr`   c                 óÜ   — g d¢g d¢g d¢g}t          |d¬¦  «        }t          t          |¦  «        dk    ¦  «         t          |d         |d         cxk    o|d         k    nc ¦  «         d S )	Nrs   ru   Frˆ   rt   r   rb   rR   ra  rb  s      r^   r  zTestSVDVals.test_check_finite  s€   € ØˆYˆY˜	˜	˜	 9 9 9Ð-ˆÝ�A EÐ*Ñ*Ô*ˆÝ•�A‘”˜!’ÑÔÐÝ��!”˜˜!œÐ$Ð$Ò$Ð$  !¤Ò$Ð$Ð$Ð$Ñ%Ô%Ð%Ð%Ð%r`   c                 óŒ   — t           j                             d¦  «        }|                     d¦  «        }t          |¦  «         d S )Nr  )iÜ  ið
  )rT   rU   r>  r   )r|   rj   r}   s      r^   Útest_crash_2609zTestSVDVals.test_crash_2609	  s7   € åŒi×#Ò# DÑ)Ô)ˆØ�JŠJ�|Ñ$Ô$ˆå�‰
Œ
ˆ
ˆ
ˆ
r`   N)r•   r–   r—   r˜   r™   rš   re   r›   rT   r;   rœ   r<   r”   r€   r#  r%  r†   rh  rj  r  rO  rm  r�   r`   r^   r]  r]  Ó  sÚ   € € € € € à„[×Ò˜T C¨°´
¸GÀRÄ\Ð#RÑSÔSð'ð 'ñ TÔSð'ð&ð &ð &ðð ð ðð ð ð&ð &ð &ðð ð ðð ð ð&ð &ð &ð „[Ôðð ñ Ôðð ð r`   r]  c                   ó   — e Zd Zd„ ZdS )ÚTestDiagSVDc                 óZ   — t          t          g d¢dd¦  «        g d¢g d¢g d¢g¦  «         d S )N©rb   r   r   rt   r  )r   r   rL  s    r^   r€   zTestDiagSVD.test_simple  sK   € Ý!¥'¨)¨)¨)°Q¸Ñ":Ô":Ø#, 9 9¨i¨i¨i¸¸¸Ð"Cñ	Eô 	Eð 	Eð 	Eð 	Er`   N)r•   r–   r—   r€   r�   r`   r^   ro  ro    s(   € € € € € ðEð Eð Eð Eð Er`   ro  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„ Z6e7j8         9                    d5g d6¢¦  «        e7j8         9                    d7g d6¢¦  «        e7j8         9                    d8d9d:g¦  «        e7j8         9                    d;e:¦  «        d<„ ¦   «         ¦   «         ¦   «         ¦   «         Z;e7j8         9                    d=g d>¢¦  «        d?„ ¦   «         Z<d@„ Z=dAS )BÚTestQRc                 ó°   — g d¢g d¢g d¢g}t          |¦  «        \  }}t          |j        |z  t          d¦  «        ¦  «         t          ||z  |¦  «         d S ©N©é   rR   rt   ©rR   rx   rt   ©rv   rt   rw   rt   ©r   r   rX   rF   ©r|   r}   ÚqÚrs       r^   r€   zTestQR.test_simple  s_   € ØˆYˆY˜	˜	˜	 9 9 9Ð-ˆÝ�!‰uŒu‰ˆˆ1Ý! !¤#¨¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¡%¨Ñ+Ô+Ð+Ð+Ð+r`   c                 ó  — g d¢g d¢g d¢g}t          |¦  «        \  }}g d¢}t          ||d¦  «        \  }}t          ||z  |¦  «         t          ||¦  «         t          |t          d¦  «        d¦  «        \  }}t          ||¦  «         d S )Nrv  rx  ry  rs   r§   rt   ©r   r   r   rF   ©r|   r}   r|  r}  ÚcÚqcÚr2s          r^   Útest_simple_leftzTestQR.test_simple_left  sœ   € ØˆYˆY˜	˜	˜	 9 9 9Ð-ˆÝ�!‰uŒu‰ˆˆ1ØˆIˆIˆÝ˜Q  6Ñ*Ô*‰ˆˆBÝ! ! a¡%¨Ñ,Ô,Ð,Ý! ! RÑ(Ô(Ð(Ý˜Q¥ A¡¤¨Ñ/Ô/‰ˆˆBÝ! ! RÑ(Ô(Ð(Ð(Ð(r`   c                 ó  — g d¢g d¢g d¢g}t          |¦  «        \  }}g d¢}t          ||¦  «        \  }}t          ||z  |¦  «         t          ||¦  «         t          |t          d¦  «        ¦  «        \  }}t          ||¦  «         d S )Nrv  rx  ry  rs   rt   r  r€  s          r^   Útest_simple_rightzTestQR.test_simple_right)  s˜   € ØˆYˆY˜	˜	˜	 9 9 9Ð-ˆÝ�!‰uŒu‰ˆˆ1ØˆIˆIˆÝ˜Q Ñ"Ô"‰ˆˆBÝ! ! a¡%¨Ñ,Ô,Ð,Ý! ! RÑ(Ô(Ð(Ý˜A�s 1™vœvÑ&Ô&‰ˆˆAÝ! ! RÑ(Ô(Ð(Ð(Ð(r`   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          ||¦  «         d S )	Nrv  rx  ry  T©Úpivotingrb   r£   rt   ©
rT   rC   r   rÊ   r5   r   rÈ   r   rX   rF   ©r|   r}   r|  r}  Úprl   Úq2rƒ  s           r^   Útest_simple_pivotingzTestQR.test_simple_pivoting3  sö   € ÝŒJ˜	˜	˜	 9 9 9¨i¨i¨iÐ8Ñ9Ô9ˆÝ�Q Ð&Ñ&Ô&‰ˆˆ1ˆaÝ•�Q‘”‰LŒLˆÝ•”�q˜˜˜”u  # 2 #¤’Ñ'Ô'Ñ(Ô(Ð(Ý! !¤#¨¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¡%¨¨1¨1¨1¨a¨4¬Ñ1Ô1Ð1Ý�A�a�a�a˜�d”G‘”‰ˆˆBÝ! ! RÑ(Ô(Ð(Ý! ! RÑ(Ô(Ð(Ð(Ð(r`   c                 ó    — g d¢g d¢g d¢g}t          |d¬¦  «        \  }}}g d¢}t          ||dd¦  «        \  }}}t          ||z  |¦  «         d S )Nrv  rx  ry  Trˆ  rs   r§   ©r   r   r   ©r|   r}   r|  r}  Újpvtr�  r‚  s          r^   Útest_simple_left_pivotingz TestQR.test_simple_left_pivoting>  sn   € ØˆYˆY˜	˜	˜	 9 9 9Ð-ˆÝ˜ DÐ)Ñ)Ô)‰
ˆˆ1ˆdØˆIˆIˆÝ! ! Q¨°Ñ5Ô5‰ˆˆAˆtÝ! ! a¡%¨Ñ,Ô,Ð,Ð,Ð,r`   c                 ó    — g d¢g d¢g d¢g}t          |d¬¦  «        \  }}}g d¢}t          ||d¬¦  «        \  }}}t          ||z  |¦  «         d S )Nrv  rx  ry  Trˆ  rs   r�  r‘  s          r^   Útest_simple_right_pivotingz!TestQR.test_simple_right_pivotingE  so   € ØˆYˆY˜	˜	˜	 9 9 9Ð-ˆÝ˜ DÐ)Ñ)Ô)‰
ˆˆ1ˆdØˆIˆIˆÝ! ! Q°Ð6Ñ6Ô6‰ˆˆAˆtÝ! ! a¡%¨Ñ,Ô,Ð,Ð,Ð,r`   c                 óª   — g d¢g d¢g}t          |¦  «        \  }}t          |j        |z  t          d¦  «        ¦  «         t          ||z  |¦  «         d S )Nrv  rx  rR   rz  r{  s       r^   Útest_simple_trapzTestQR.test_simple_trapL  óY   € ØˆYˆY˜	˜	˜	Ð"ˆÝ�!‰uŒu‰ˆˆ1Ý! !¤#¨¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¡%¨Ñ+Ô+Ð+Ð+Ð+r`   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          ||¦  «         d S )Nrv  rx  Trˆ  rb   r£   rR   rŠ  r‹  s           r^   Útest_simple_trap_pivotingz TestQR.test_simple_trap_pivotingR  sð   € ÝŒJ˜	˜	˜	 9 9 9Ð-Ñ.Ô.ˆÝ�Q Ð&Ñ&Ô&‰ˆˆ1ˆaÝ•�Q‘”‰LŒLˆÝ•”�q˜˜˜”u  # 2 #¤’Ñ'Ô'Ñ(Ô(Ð(Ý! !¤#¨¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¡%¨¨1¨1¨1¨a¨4¬Ñ1Ô1Ð1Ý�A�a�a�a˜�d”G‘”‰ˆˆBÝ! ! RÑ(Ô(Ð(Ý! ! RÑ(Ô(Ð(Ð(Ð(r`   c                 ó°   — ddgddgddgg}t          |¦  «        \  }}t          |j        |z  t          d¦  «        ¦  «         t          ||z  |¦  «         d S ©Nrw  rR   rx   rv   rt   rz  r{  s       r^   Útest_simple_tallzTestQR.test_simple_tall]  s_   € à�ˆV�a˜�V˜a ˜VÐ$ˆÝ�!‰uŒu‰ˆˆ1Ý! !¤#¨¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¡%¨Ñ+Ô+Ð+Ð+Ð+r`   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          ||¦  «         d S )
Nrw  rR   rx   rv   rt   Trˆ  rb   r£   rŠ  r‹  s           r^   Útest_simple_tall_pivotingz TestQR.test_simple_tall_pivotingd  sö   € åŒJ˜˜A˜  A ¨¨A¨Ð/Ñ0Ô0ˆÝ�Q Ð&Ñ&Ô&‰ˆˆ1ˆaÝ•�Q‘”‰LŒLˆÝ•”�q˜˜˜”u  # 2 #¤’Ñ'Ô'Ñ(Ô(Ð(Ý! !¤#¨¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¡%¨¨1¨1¨1¨a¨4¬Ñ1Ô1Ð1Ý�A�a�a�a˜�d”G‘”‰ˆˆBÝ! ! RÑ(Ô(Ð(Ý! ! RÑ(Ô(Ð(Ð(Ð(r`   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	¦  «         d S )
Nrw  rR   rx   rv   rt   Úeconomic©Úmoder<  ©rR   rR   ©r   r   rX   rF   r   r@   r{  s       r^   Útest_simple_tall_ezTestQR.test_simple_tall_ep  sŠ   € à�ˆV�a˜�V˜a ˜VÐ$ˆÝ�!˜*Ð%Ñ%Ô%‰ˆˆ1Ý! !¤#¨¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¡%¨Ñ+Ô+Ð+Ý�Q”W˜fÑ%Ô%Ð%Ý�Q”W˜fÑ%Ô%Ð%Ð%Ð%r`   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          ||¦  «         d S )Nrw  rR   rx   rv   rt   Tr¡  ©r‰  r£  rb   r£   r¢  rŠ  r‹  s           r^   Útest_simple_tall_e_pivotingz"TestQR.test_simple_tall_e_pivotingy  sÿ   € åŒJ˜˜A˜  A ¨¨A¨Ð/Ñ0Ô0ˆÝ�Q ¨JÐ7Ñ7Ô7‰ˆˆ1ˆaÝ•�Q‘”‰LŒLˆÝ•”�q˜˜˜”u  # 2 #¤’Ñ'Ô'Ñ(Ô(Ð(Ý! !¤#¨¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¡%¨¨1¨1¨1¨a¨4¬Ñ1Ô1Ð1Ý�A�a�a�a˜�d”G *Ð-Ñ-Ô-‰ˆˆBÝ! ! RÑ(Ô(Ð(Ý! ! RÑ(Ô(Ð(Ð(Ð(r`   c                 ó   — 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          ||¦  «         d S )Nrw  rR   rx   rv   rt   r¡  r¢  rb   r§   ©rb   rR   r   T©Úoverwrite_c©r   r   r   r4   rF   r€  s          r^   Útest_simple_tall_leftzTestQR.test_simple_tall_left…  sê   € Ø�ˆV�a˜�V˜a ˜VÐ$ˆÝ�!˜*Ð%Ñ%Ô%‰ˆˆ1Ø�ˆFˆÝ˜Q  6Ñ*Ô*‰ˆˆBÝ! ! a¡%¨Ñ,Ô,Ð,Ý! ! RÑ(Ô(Ð(Ý�)�)�)ÑÔˆÝ˜Q  6°tÐ<Ñ<Ô<‰ˆˆBÝ! ! a¨¨¨¤e¡)¨RÑ0Ô0Ð0Ý˜A�s 1™vœv vÑ.Ô.‰ˆˆAÝ! " aÑ(Ô(Ð(Ð(Ð(r`   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          ||¦  «         d S )Nrw  rR   rx   rv   rt   r¡  T©r£  r‰  rb   r§   )r   r   r   r   rF   )r|   r}   r|  r}  r’  r�  r‚  Úkpvts           r^   Útest_simple_tall_left_pivotingz%TestQR.test_simple_tall_left_pivoting’  s¯   € Ø�ˆV�a˜�V˜a ˜VÐ$ˆÝ˜ 
°TÐ:Ñ:Ô:‰
ˆˆ1ˆdØ�ˆFˆÝ! ! Q¨°Ñ5Ô5‰ˆˆAˆtÝ˜4 Ñ&Ô&Ð&Ý! ! a¡%¨Ñ,Ô,Ð,Ý! !¥S¨¡V¤V¨V°TÑ:Ô:‰ˆˆAˆtÝ! " aÑ(Ô(Ð(Ð(Ð(r`   c                 ó  — ddgddgddgg}t          |d¬¦  «        \  }}g d¢}t          ||¦  «        \  }}t          ||z  |¦  «         t          ||¦  «         t          |t          d¦  «        ¦  «        \  }}t          ||¦  «         d S )	Nrw  rR   rx   rv   rt   r¡  r¢  rs   r  ©r|   r}   r|  r}  r�  Úcqrƒ  s          r^   Útest_simple_tall_rightzTestQR.test_simple_tall_rightœ  sŸ   € Ø�ˆV�a˜�V˜a ˜VÐ$ˆÝ�!˜*Ð%Ñ%Ô%‰ˆˆ1ØˆIˆIˆÝ˜Q Ñ"Ô"‰ˆˆBÝ! ! a¡%¨Ñ,Ô,Ð,Ý! ! RÑ(Ô(Ð(Ý˜A�s 1™vœvÑ&Ô&‰ˆˆAÝ! " aÑ(Ô(Ð(Ð(Ð(r`   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          ||¦  «         d S )Nrw  rR   rx   rv   rt   Tr¡  r¨  rs   rˆ  r  ©r|   r}   r|  r}  r’  r�  r¶  s          r^   Útest_simple_tall_right_pivotingz&TestQR.test_simple_tall_right_pivoting¦  s¡   € Ø�ˆV�a˜�V˜a ˜VÐ$ˆÝ˜ D¨zÐ:Ñ:Ô:‰
ˆˆ1ˆdØˆIˆIˆÝ! ! Q°Ð6Ñ6Ô6‰ˆˆAˆtÝ! ! a¡%¨Ñ,Ô,Ð,Ý! !¥S¨¡V¤V°dÐ;Ñ;Ô;‰ˆˆAˆtÝ! " aÑ(Ô(Ð(Ð(Ð(r`   c                 óþ   — g d¢g d¢g}t          |¦  «        \  }}t          |j        |z  t          d¦  «        ¦  «         t          ||z  |¦  «         t	          |j        d¦  «         t	          |j        d¦  «         d S )N©rw  rR   rv   rx  rR   r¤  ©rR   rt   r¥  r{  s       r^   Útest_simple_fatzTestQR.test_simple_fat¯  s}   € àˆYˆY˜	˜	˜	Ð"ˆÝ�!‰uŒu‰ˆˆ1Ý! !¤#¨¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¡%¨Ñ+Ô+Ð+Ý�Q”W˜fÑ%Ô%Ð%Ý�Q”W˜fÑ%Ô%Ð%Ð%Ð%r`   c                 óV  — 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          ||¦  «         d S )
Nr¼  rx  Trˆ  rb   r£   rR   r¤  r½  ©rT   rC   r   rÊ   r5   r   rÈ   r   rX   rF   r   r@   r‹  s           r^   Útest_simple_fat_pivotingzTestQR.test_simple_fat_pivoting¸  s  € åŒJ˜	˜	˜	 9 9 9Ð-Ñ.Ô.ˆÝ�Q Ð&Ñ&Ô&‰ˆˆ1ˆaÝ•�Q‘”‰LŒLˆÝ•”�q˜˜˜”u  # 2 #¤’Ñ'Ô'Ñ(Ô(Ð(Ý! !¤#¨¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¡%¨¨1¨1¨1¨a¨4¬Ñ1Ô1Ð1Ý�Q”W˜fÑ%Ô%Ð%Ý�Q”W˜fÑ%Ô%Ð%Ý�A�a�a�a˜�d”G‘”‰ˆˆBÝ! ! RÑ(Ô(Ð(Ý! ! RÑ(Ô(Ð(Ð(Ð(r`   c                 ó  — g d¢g d¢g}t          |d¬¦  «        \  }}t          |j        |z  t          d¦  «        ¦  «         t          ||z  |¦  «         t	          |j        d¦  «         t	          |j        d¦  «         d S )Nrv  ©rR   rx   rv   r¡  r¢  rR   r¤  r½  r¥  r{  s       r^   Útest_simple_fat_ezTestQR.test_simple_fat_eÆ  s„   € àˆYˆY˜	˜	˜	Ð"ˆÝ�!˜*Ð%Ñ%Ô%‰ˆˆ1Ý! !¤#¨¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¡%¨Ñ+Ô+Ð+Ý�Q”W˜fÑ%Ô%Ð%Ý�Q”W˜fÑ%Ô%Ð%Ð%Ð%r`   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          ||¦  «         d S )Nrv  rÃ  Tr¡  r¨  rb   r£   rR   r¤  r½  r¢  rÀ  r‹  s           r^   Útest_simple_fat_e_pivotingz!TestQR.test_simple_fat_e_pivotingÏ  s  € åŒJ˜	˜	˜	 9 9 9Ð-Ñ.Ô.ˆÝ�Q ¨JÐ7Ñ7Ô7‰ˆˆ1ˆaÝ•�Q‘”‰LŒLˆÝ•”�q˜˜˜”u  # 2 #¤’Ñ'Ô'Ñ(Ô(Ð(Ý! !¤#¨¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¡%¨¨1¨1¨1¨a¨4¬Ñ1Ô1Ð1Ý�Q”W˜fÑ%Ô%Ð%Ý�Q”W˜fÑ%Ô%Ð%Ý�A�a�a�a˜�d”G *Ð-Ñ-Ô-‰ˆˆBÝ! ! RÑ(Ô(Ð(Ý! ! RÑ(Ô(Ð(Ð(Ð(r`   c                 ó  — g d¢g d¢g}t          |d¬¦  «        \  }}ddg}t          ||d¦  «        \  }}t          ||z  |¦  «         t          ||¦  «         t          |t          d¦  «        d¦  «        \  }}t          ||¦  «         d S )Nrv  rÃ  r¡  r¢  rb   rR   r§   r  r€  s          r^   Útest_simple_fat_leftzTestQR.test_simple_fat_leftÝ  s�   € ØˆYˆY˜	˜	˜	Ð"ˆÝ�!˜*Ð%Ñ%Ô%‰ˆˆ1Ø�ˆFˆÝ˜Q  6Ñ*Ô*‰ˆˆBÝ! ! a¡%¨Ñ,Ô,Ð,Ý! ! RÑ(Ô(Ð(Ý˜A�s 1™vœv vÑ.Ô.‰ˆˆAÝ! " aÑ(Ô(Ð(Ð(Ð(r`   c                 ó  — g d¢g d¢g}t          |dd¬¦  «        \  }}}ddg}t          ||dd¦  «        \  }}}t          ||z  |¦  «         t          |t          d¦  «        dd¦  «        \  }}}t          ||¦  «         d S )	Nrv  rÃ  r¡  Tr±  rb   rR   r§   r  r‘  s          r^   Útest_simple_fat_left_pivotingz$TestQR.test_simple_fat_left_pivotingç  s™   € ØˆYˆY˜	˜	˜	Ð"ˆÝ˜ 
°TÐ:Ñ:Ô:‰
ˆˆ1ˆdØ�ˆFˆÝ! ! Q¨°Ñ5Ô5‰ˆˆAˆtÝ! ! a¡%¨Ñ,Ô,Ð,Ý! !¥S¨¡V¤V¨V°TÑ:Ô:‰ˆˆAˆtÝ! " aÑ(Ô(Ð(Ð(Ð(r`   c                 ó  — g d¢g d¢g}t          |d¬¦  «        \  }}ddg}t          ||¦  «        \  }}t          ||z  |¦  «         t          ||¦  «         t          |t          d¦  «        ¦  «        \  }}t          ||¦  «         d S )Nrv  rÃ  r¡  r¢  rb   rR   r  rµ  s          r^   Útest_simple_fat_rightzTestQR.test_simple_fat_rightð  s™   € ØˆYˆY˜	˜	˜	Ð"ˆÝ�!˜*Ð%Ñ%Ô%‰ˆˆ1Ø�ˆFˆÝ˜Q Ñ"Ô"‰ˆˆBÝ! ! a¡%¨Ñ,Ô,Ð,Ý! ! RÑ(Ô(Ð(Ý˜A�s 1™vœvÑ&Ô&‰ˆˆAÝ! " aÑ(Ô(Ð(Ð(Ð(r`   c                 ó  — g d¢g d¢g}t          |dd¬¦  «        \  }}}ddg}t          ||d¬¦  «        \  }}}t          ||z  |¦  «         t          |t          d¦  «        d¬¦  «        \  }}}t          ||¦  «         d S )	Nrv  rÃ  Tr¡  r¨  rb   rR   rˆ  r  r¹  s          r^   Útest_simple_fat_right_pivotingz%TestQR.test_simple_fat_right_pivotingú  s›   € ØˆYˆY˜	˜	˜	Ð"ˆÝ˜ D¨zÐ:Ñ:Ô:‰
ˆˆ1ˆdØ�ˆFˆÝ! ! Q°Ð6Ñ6Ô6‰ˆˆAˆtÝ! ! a¡%¨Ñ,Ô,Ð,Ý! !¥S¨¡V¤V°dÐ;Ñ;Ô;‰ˆˆAˆtÝ! " aÑ(Ô(Ð(Ð(Ð(r`   c                 óÔ   — g d¢g d¢g d¢g}t          |¦  «        \  }}t          |                     ¦   «         j        |z  t	          d¦  «        ¦  «         t          ||z  |¦  «         d S ©N©rt   ù      @      @rv   ©rv   rR   y       @      @©rt   rR   rì  rt   )r   r   rW   rX   rF   r{  s       r^   r†   zTestQR.test_simple_complex  sg   € Øˆ\ˆ\˜<˜<˜<¨¨¨Ð3ˆÝ�!‰uŒu‰ˆˆ1Ý! !§&¢&¡(¤(¤*¨q¡.µ#°a±&´&Ñ9Ô9Ð9Ý! ! a¡%¨Ñ+Ô+Ð+Ð+Ð+r`   c                 óø   — g d¢g d¢g d¢g}t          |¦  «        \  }}g d¢}t          ||d¦  «        \  }}t          ||z  |¦  «         t          |t          d¦  «        d¦  «        \  }}t          ||¦  «         d S )NrÑ  rÓ  rÔ  ©rb   rR   rÒ  r§   rt   r  ©r|   r}   r|  r}  r�  r‚  s         r^   Útest_simple_complex_leftzTestQR.test_simple_complex_left	  sŒ   € Øˆ\ˆ\˜<˜<˜<¨¨¨Ð3ˆÝ�!‰uŒu‰ˆˆ1ØˆLˆLˆÝ˜A˜q &Ñ)Ô)‰ˆˆAÝ! ! a¡%¨Ñ,Ô,Ð,Ý˜A�s 1™vœv vÑ.Ô.‰ˆˆAÝ! ! RÑ(Ô(Ð(Ð(Ð(r`   c                 óô   — g d¢g d¢g d¢g}t          |¦  «        \  }}g d¢}t          ||¦  «        \  }}t          ||z  |¦  «         t          |t          d¦  «        ¦  «        \  }}t          ||¦  «         d S )NrÑ  rÓ  rÔ  rÖ  rt   r  r×  s         r^   Útest_simple_complex_rightz TestQR.test_simple_complex_right  sˆ   € Øˆ\ˆ\˜<˜<˜<¨¨¨Ð3ˆÝ�!‰uŒu‰ˆˆ1ØˆLˆLˆÝ˜A˜qÑ!Ô!‰ˆˆAÝ! ! a¡%¨Ñ,Ô,Ð,Ý˜A�s 1™vœvÑ&Ô&‰ˆˆAÝ! ! RÑ(Ô(Ð(Ð(Ð(r`   c                 ó   — 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          ||¦  «         d S )Nrw  y       @      @rR   rx   y      @      @rt   r¡  r¢  rb   ù       @       @r§   r«  Tr¬  r®  r€  s          r^   Ú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Ô0Ð0Ý˜A�s 1™vœv vÑ.Ô.‰ˆˆAÝ! " aÑ(Ô(Ð(Ð(Ð(r`   c                 ó¾   — g d¢g d¢g d¢g}t          |¦  «        \  }}g d¢}t          ||dd¬¦  «        \  }}t          |                     ¦   «         |z  |¦  «         d S )NrÑ  rÓ  rÔ  rÖ  r§   T©Ú	conjugate©r   r   r   rW   r×  s         r^   Ú"test_simple_complex_left_conjugatez)TestQR.test_simple_complex_left_conjugate(  sn   € Øˆ\ˆ\˜<˜<˜<¨¨¨Ð3ˆÝ�!‰uŒu‰ˆˆ1ØˆLˆLˆÝ˜A˜q &°DÐ9Ñ9Ô9‰ˆˆAÝ! !§&¢&¡(¤(¨Q¡,°Ñ3Ô3Ð3Ð3Ð3r`   c                 óÂ   — ddgddgddgg}t          |d¬¦  «        \  }}ddg}t          ||d	d
¬¦  «        \  }}t          |                     ¦   «         |z  |¦  «         d S )Nrt   rÒ  rv   rÜ  rR   r¡  r¢  rb   r§   Trß  rá  r×  s         r^   Ú'test_simple_complex_tall_left_conjugatez.TestQR.test_simple_complex_tall_left_conjugate/  su   € Ø�ˆY˜˜D˜	 A q 6Ð*ˆÝ�!˜*Ð%Ñ%Ô%‰ˆˆ1Ø�ˆIˆÝ˜A˜q &°DÐ9Ñ9Ô9‰ˆˆAÝ! !§&¢&¡(¤(¨Q¡,°Ñ3Ô3Ð3Ð3Ð3r`   c                 óà   — g d¢g d¢g d¢g}t          |¦  «        \  }}t          j        g d¢¦  «        }t          ||d¬¦  «        \  }}t	          ||                     ¦   «         z  |¦  «         d S )NrÑ  rÓ  rÔ  rÖ  Trß  )r   rT   r4   r   r   rW   r×  s         r^   Ú#test_simple_complex_right_conjugatez*TestQR.test_simple_complex_right_conjugate6  sv   € Øˆ\ˆ\˜<˜<˜<¨¨¨Ð3ˆÝ�!‰uŒu‰ˆˆ1ÝŒH�\�\�\Ñ"Ô"ˆÝ˜A˜q¨DÐ1Ñ1Ô1‰ˆˆAÝ! ! a§f¢f¡h¤h¡,°Ñ3Ô3Ð3Ð3Ð3r`   c                 ó"  — t          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          ||¦  «         d S )	NrÑ  rÓ  rÔ  Trˆ  rb   r£   rt   )r4   r   rÊ   r5   r   rT   rÈ   r   rW   rX   rF   r‹  s           r^   Útest_simple_complex_pivotingz#TestQR.test_simple_complex_pivoting=  sü   € Ý�<�<�<   ¨y¨y¨yÐ9Ñ:Ô:ˆÝ�Q Ð&Ñ&Ô&‰ˆˆ1ˆaÝ•�Q‘”‰LŒLˆÝ•”�q˜˜˜”u  # 2 #¤’Ñ'Ô'Ñ(Ô(Ð(Ý! !§&¢&¡(¤(¤*¨q¡.µ#°a±&´&Ñ9Ô9Ð9Ý! ! a¡%¨¨1¨1¨1¨a¨4¬Ñ1Ô1Ð1Ý�A�a�a�a˜�d”G‘”‰ˆˆBÝ! ! RÑ(Ô(Ð(Ý! ! RÑ(Ô(Ð(Ð(Ð(r`   c                 óº   — t          g d¢g d¢g d¢g¦  «        }t          |d¬¦  «        \  }}}g d¢}t          ||dd¦  «        \  }}}t          ||z  |¦  «         d S )NrÑ  rÓ  rÔ  Trˆ  rÖ  r§   ©r4   r   r   r   r‘  s          r^   Ú!test_simple_complex_left_pivotingz(TestQR.test_simple_complex_left_pivotingH  sv   € Ý�<�<�<   ¨y¨y¨yÐ9Ñ:Ô:ˆÝ˜ DÐ)Ñ)Ô)‰
ˆˆ1ˆdØˆLˆLˆÝ! ! Q¨°Ñ5Ô5‰ˆˆAˆtÝ! ! a¡%¨Ñ,Ô,Ð,Ð,Ð,r`   c                 óº   — t          g d¢g d¢g d¢g¦  «        }t          |d¬¦  «        \  }}}g d¢}t          ||d¬¦  «        \  }}}t          ||z  |¦  «         d S )NrÑ  rÓ  rÔ  Trˆ  rÖ  rê  r‘  s          r^   Ú"test_simple_complex_right_pivotingz)TestQR.test_simple_complex_right_pivotingO  sw   € Ý�<�<�<   ¨y¨y¨yÐ9Ñ:Ô:ˆÝ˜ DÐ)Ñ)Ô)‰
ˆˆ1ˆdØˆLˆLˆÝ! ! Q°Ð6Ñ6Ô6‰ˆˆAˆtÝ! ! a¡%¨Ñ,Ô,Ð,Ð,Ð,r`   c                 ó.  — t           j                             d¦  «        }d}t          d¦  «        D ]c}|                     ||g¦  «        }t	          |¦  «        \  }}t          |j        |z  t          |¦  «        ¦  «         t          ||z  |¦  «         Œdd S ©Nr  ræ  rR   ©rT   rU   r  r©   r   r   rX   rF   ©r|   rj   rZ   r  r}   r|  r}  s          r^   r(  zTestQR.test_randomV  s’   € ÝŒi×#Ò# DÑ)Ô)ˆØˆÝ�q‘”ð 	0ð 	0ˆAØ—
’
˜A˜q˜6Ñ"Ô"ˆAÝ�a‘5”5‰DˆAˆqÝ% a¤c¨A¡g­s°1©v¬vÑ6Ô6Ð6Ý% a¨!¡e¨QÑ/Ô/Ð/Ð/ð		0ð 	0r`   c                 óš  — t           j                             d¦  «        }d}t          d¦  «        D ]™}|                     ||g¦  «        }t	          |¦  «        \  }}|                     |g¦  «        }t          ||d¦  «        \  }}t          ||z  |¦  «         t          |t          |¦  «        d¦  «        \  }}t          ||¦  «         Œšd S )Nr  ræ  rR   r§   ©rT   rU   r  r©   r   r   r   rF   ©	r|   rj   rZ   r  r}   r|  r}  r�  r‚  s	            r^   Útest_random_leftzTestQR.test_random_left_  sÇ   € ÝŒi×#Ò# DÑ)Ô)ˆØˆÝ�q‘”ð 	-ð 	-ˆAØ—
’
˜A˜q˜6Ñ"Ô"ˆAÝ�a‘5”5‰DˆAˆqØ—
’
˜A˜3‘”ˆAÝ  1 fÑ-Ô-‰EˆB�Ý% a¨!¡e¨RÑ0Ô0Ð0Ý ¥3 q¡6¤6¨6Ñ2Ô2‰EˆB�Ý% a¨Ñ,Ô,Ð,Ð,ð	-ð 	-r`   c                 ó–  — t           j                             d¦  «        }d}t          d¦  «        D ]—}|                     ||g¦  «        }t	          |¦  «        \  }}|                     |g¦  «        }t          ||¦  «        \  }}t          ||z  |¦  «         t          |t          |¦  «        ¦  «        \  }}t          ||¦  «         Œ˜d S rï  ró  ©	r|   rj   rZ   r  r}   r|  r}  r�  r¶  s	            r^   Útest_random_rightzTestQR.test_random_rightk  sÃ   € ÝŒi×#Ò# DÑ)Ô)ˆØˆÝ�q‘”ð 	-ð 	-ˆAØ—
’
˜A˜q˜6Ñ"Ô"ˆAÝ�a‘5”5‰DˆAˆqØ—
’
˜A˜3‘”ˆAÝ  1Ñ%Ô%‰EˆB�Ý% a¨!¡e¨RÑ0Ô0Ð0Ý ¥3 q¡6¤6Ñ*Ô*‰EˆB�Ý% a¨Ñ,Ô,Ð,Ð,ð	-ð 	-r`   c           	      ób  — t           j                             d¦  «        }d}t          d¦  «        D ]ý}|                     ||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          ||
¦  «         Œþd S )Nr  ræ  rR   Trˆ  rb   r£   ©rT   rU   r  r©   r   rÊ   r5   r   rÈ   r   rX   rF   ©r|   rj   rZ   r  r}   r|  r}  rŒ  rl   r�  rƒ  s              r^   Útest_random_pivotingzTestQR.test_random_pivotingw  s  € ÝŒi×#Ò# DÑ)Ô)ˆØˆÝ�q‘”ð 		-ð 		-ˆAØ—
’
˜A˜q˜6Ñ"Ô"ˆAÝ˜ TÐ*Ñ*Ô*‰GˆAˆq�!Ý•D˜‘G”G‘”ˆAÝ•B”F˜1˜Q˜R˜Rœ5 A c r c¤Fš?Ñ+Ô+Ñ,Ô,Ð,Ý% a¤c¨A¡g­s°1©v¬vÑ6Ô6Ð6Ý% a¨!¡e¨Q¨q¨q¨q°!¨t¬WÑ5Ô5Ð5Ý˜˜!˜!˜!˜Q˜$œ‘[”[‰FˆB�Ý% a¨Ñ,Ô,Ð,Ý% a¨Ñ,Ô,Ð,Ð,ð		-ð 		-r`   c                 ó2  — t           j                             d¦  «        }d}d}t          d¦  «        D ]c}|                     ||g¦  «        }t	          |¦  «        \  }}t          |j        |z  t          |¦  «        ¦  «         t          ||z  |¦  «         Œdd S ©Nr  éÈ   r  rR   rð  ©r|   rj   r'  rZ   r  r}   r|  r}  s           r^   Útest_random_tallzTestQR.test_random_tall…  s—   € ÝŒi×#Ò# DÑ)Ô)ˆàˆØˆÝ�q‘”ð 	0ð 	0ˆAØ—
’
˜A˜q˜6Ñ"Ô"ˆAÝ�a‘5”5‰DˆAˆqÝ% a¤c¨A¡g­s°1©v¬vÑ6Ô6Ð6Ý% a¨!¡e¨QÑ/Ô/Ð/Ð/ð		0ð 	0r`   c                 ó¢  — t           j                             d¦  «        }d}d}t          d¦  «        D ]›}|                     ||g¦  «        }t	          |d¬¦  «        \  }}|                     |g¦  «        }t          ||d¦  «        \  }	}t          ||z  |	¦  «         t          |t          |¦  «        d¦  «        \  }	}t          |	|¦  «         Œœd S )Nr  rÿ  r  rR   r¡  r¢  r§   ró  )
r|   rj   r'  rZ   r  r}   r|  r}  r�  r‚  s
             r^   Útest_random_tall_leftzTestQR.test_random_tall_left�  sÓ   € ÝŒi×#Ò# DÑ)Ô)ˆàˆØˆÝ�q‘”ð 	-ð 	-ˆAØ—
’
˜A˜q˜6Ñ"Ô"ˆAÝ�a˜jÐ)Ñ)Ô)‰DˆAˆqØ—
’
˜A˜3‘”ˆAÝ  1 fÑ-Ô-‰EˆB�Ý% a¨!¡e¨RÑ0Ô0Ð0Ý ¥3 q¡6¤6¨6Ñ2Ô2‰EˆB�Ý% b¨!Ñ,Ô,Ð,Ð,ð	-ð 	-r`   c                 óž  — t           j                             d¦  «        }d}d}t          d¦  «        D ]™}|                     ||g¦  «        }t	          |d¬¦  «        \  }}|                     |g¦  «        }t          ||¦  «        \  }	}t          ||z  |	¦  «         t          |t          |¦  «        ¦  «        \  }	}t          |	|¦  «         Œšd S ©Nr  rÿ  r  rR   r¡  r¢  ró  )
r|   rj   r'  rZ   r  r}   r|  r}  r�  r¶  s
             r^   Útest_random_tall_rightzTestQR.test_random_tall_rightž  sÏ   € ÝŒi×#Ò# DÑ)Ô)ˆàˆØˆÝ�q‘”ð 	-ð 	-ˆAØ—
’
˜A˜q˜6Ñ"Ô"ˆAÝ�a˜jÐ)Ñ)Ô)‰DˆAˆqØ—
’
˜A˜3‘”ˆAÝ  1Ñ%Ô%‰EˆB�Ý% a¨!¡e¨RÑ0Ô0Ð0Ý ¥3 q¡6¤6Ñ*Ô*‰EˆB�Ý% b¨!Ñ,Ô,Ð,Ð,ð	-ð 	-r`   c           	      óf  — t           j                             d¦  «        }d}d}t          d¦  «        D ]ý}|                     ||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          ||¦  «         Œþd S )	Nr  rÿ  r  rR   Trˆ  rb   r£   rú  ©r|   rj   r'  rZ   r  r}   r|  r}  rŒ  rl   r�  rƒ  s               r^   Útest_random_tall_pivotingz TestQR.test_random_tall_pivoting¬  s$  € ÝŒi×#Ò# DÑ)Ô)ˆàˆØˆÝ�q‘”ð 		-ð 		-ˆAØ—
’
˜A˜q˜6Ñ"Ô"ˆAÝ˜ TÐ*Ñ*Ô*‰GˆAˆq�!Ý•D˜‘G”G‘”ˆAÝ•B”F˜1˜Q˜R˜Rœ5 A c r c¤Fš?Ñ+Ô+Ñ,Ô,Ð,Ý% a¤c¨A¡g­s°1©v¬vÑ6Ô6Ð6Ý% a¨!¡e¨Q¨q¨q¨q°!¨t¬WÑ5Ô5Ð5Ý˜˜!˜!˜!˜Q˜$œ‘[”[‰FˆB�Ý% a¨Ñ,Ô,Ð,Ý% a¨Ñ,Ô,Ð,Ð,ð		-ð 		-r`   c                 ó’  — t           j                             d¦  «        }d}d}t          d¦  «        D ]“}|                     ||g¦  «        }t	          |d¬¦  «        \  }}t          |j        |z  t          |¦  «        ¦  «         t          ||z  |¦  «         t          |j	        ||f¦  «         t          |j	        ||f¦  «         Œ”d S r  )
rT   rU   r  r©   r   r   rX   rF   r   r@   r   s           r^   Útest_random_tall_ezTestQR.test_random_tall_e¼  sÊ   € ÝŒi×#Ò# DÑ)Ô)ˆàˆØˆÝ�q‘”ð 	*ð 	*ˆAØ—
’
˜A˜q˜6Ñ"Ô"ˆAÝ�a˜jÐ)Ñ)Ô)‰DˆAˆqÝ% a¤c¨A¡g­s°1©v¬vÑ6Ô6Ð6Ý% a¨!¡e¨QÑ/Ô/Ð/Ý˜œ 1 a &Ñ)Ô)Ð)Ý˜œ 1 a &Ñ)Ô)Ð)Ð)ð	*ð 	*r`   c           	      óÌ  — t           j                             d¦  «        }d}d}t          d¦  «        D �]/}|                     ||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          ||¦  «         �Œ1d S )Nr  rÿ  r  rR   Tr¡  r¨  rb   r£   r¢  )rT   rU   r  r©   r   rÊ   r5   r   rÈ   r   rX   rF   r   r@   r  s               r^   Útest_random_tall_e_pivotingz"TestQR.test_random_tall_e_pivotingÉ  sY  € ÝŒi×#Ò# DÑ)Ô)ˆàˆØˆÝ�q‘”ð 	-ñ 	-ˆAØ—
’
˜A˜q˜6Ñ"Ô"ˆAÝ˜ T°
Ð;Ñ;Ô;‰GˆAˆq�!Ý•D˜‘G”G‘”ˆAÝ•B”F˜1˜Q˜R˜Rœ5 A c r c¤Fš?Ñ+Ô+Ñ,Ô,Ð,Ý% a¤c¨A¡g­s°1©v¬vÑ6Ô6Ð6Ý% a¨!¡e¨Q¨q¨q¨q°!¨t¬WÑ5Ô5Ð5Ý˜œ 1 a &Ñ)Ô)Ð)Ý˜œ 1 a &Ñ)Ô)Ð)Ý˜˜!˜!˜!˜Q˜$œ jÐ1Ñ1Ô1‰FˆB�Ý% a¨Ñ,Ô,Ð,Ý% a¨Ñ,Ô,Ð,Ñ,ð	-ð 	-r`   c                 ó2  — t           j                             d¦  «        }d}d}t          d¦  «        D ]c}|                     ||g¦  «        }t	          |¦  «        \  }}t          |j        |z  t          |¦  «        ¦  «         t          ||z  |¦  «         Œdd S ©Nr  r  rÿ  rR   rð  r   s           r^   Útest_random_trapzTestQR.test_random_trapÛ  s—   € ÝŒi×#Ò# DÑ)Ô)ˆØˆØˆÝ�q‘”ð 	0ð 	0ˆAØ—
’
˜A˜q˜6Ñ"Ô"ˆAÝ�a‘5”5‰DˆAˆqÝ% a¤c¨A¡g­s°1©v¬vÑ6Ô6Ð6Ý% a¨!¡e¨QÑ/Ô/Ð/Ð/ð		0ð 	0r`   c           	      óf  — t           j                             d¦  «        }d}d}t          d¦  «        D ]ý}|                     ||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          ||¦  «         Œþd S )	Nr  r  rÿ  rR   Trˆ  rb   r£   rú  r  s               r^   Útest_random_trap_pivotingz TestQR.test_random_trap_pivotingå  s$  € ÝŒi×#Ò# DÑ)Ô)ˆØˆØˆÝ�q‘”ð 		-ð 		-ˆAØ—
’
˜A˜q˜6Ñ"Ô"ˆAÝ˜ TÐ*Ñ*Ô*‰GˆAˆq�!Ý•D˜‘G”G‘”ˆAÝ•B”F˜1˜Q˜R˜Rœ5 A c r c¤Fš?Ñ+Ô+Ñ,Ô,Ð,Ý% a¤c¨A¡g­s°1©v¬vÑ6Ô6Ð6Ý% a¨!¡e¨Q¨q¨q¨q°!¨t¬WÑ5Ô5Ð5Ý˜˜!˜!˜!˜Q˜$œ‘[”[‰FˆB�Ý% a¨Ñ,Ô,Ð,Ý% a¨Ñ,Ô,Ð,Ð,ð		-ð 		-r`   c                 óˆ  — t           j                             d¦  «        }d}t          d¦  «        D ]�}|                     ||g¦  «        d|                     ||g¦  «        z  z   }t	          |¦  «        \  }}t          |                     ¦   «         j        |z  t          |¦  «        ¦  «         t          ||z  |¦  «         Œ‘d S ©Nr  ræ  rR   rQ   )	rT   rU   r  r©   r   r   rW   rX   rF   rñ  s          r^   r,  zTestQR.test_random_complexô  s´   € ÝŒi×#Ò# DÑ)Ô)ˆØˆÝ�q‘”ð 	0ð 	0ˆAØ—
’
˜A˜q˜6Ñ"Ô" R¨¯
ª
°A°q°6Ñ(:Ô(:Ñ%:Ñ:ˆAÝ�a‘5”5‰DˆAˆqÝ% a§f¢f¡h¤h¤j°1¡nµc¸!±f´fÑ=Ô=Ð=Ý% a¨!¡e¨QÑ/Ô/Ð/Ð/ð		0ð 	0r`   c                 ó  — t           j                             d¦  «        }d}t          d¦  «        D ]Î}|                     ||g¦  «        d|                     ||g¦  «        z  z   }t	          |¦  «        \  }}|                     |g¦  «        d|                     |g¦  «        z  z   }t          ||d¦  «        \  }}t          ||z  |¦  «         t          |t          |¦  «        d¦  «        \  }}t          ||¦  «         ŒÏd S )Nr  ræ  rR   rQ   r§   ró  rô  s	            r^   Útest_random_complex_leftzTestQR.test_random_complex_leftý  s÷   € ÝŒi×#Ò# DÑ)Ô)ˆØˆÝ�q‘”ð 	-ð 	-ˆAØ—
’
˜A˜q˜6Ñ"Ô" R¨¯
ª
°A°q°6Ñ(:Ô(:Ñ%:Ñ:ˆAÝ�a‘5”5‰DˆAˆqØ—
’
˜A˜3‘” " S§Z¢Z°°¡_¤_Ñ"4Ñ4ˆAÝ  1 fÑ-Ô-‰EˆB�Ý% a¨!¡e¨RÑ0Ô0Ð0Ý ¥3 q¡6¤6¨6Ñ2Ô2‰EˆB�Ý% a¨Ñ,Ô,Ð,Ð,ð	-ð 	-r`   c                 ó   — t           j                             d¦  «        }d}t          d¦  «        D ]Ì}|                     ||g¦  «        d|                     ||g¦  «        z  z   }t	          |¦  «        \  }}|                     |g¦  «        d|                     |g¦  «        z  z   }t          ||¦  «        \  }}t          ||z  |¦  «         t          |t          |¦  «        ¦  «        \  }}t          ||¦  «         ŒÍd S r  ró  r÷  s	            r^   Útest_random_complex_rightz TestQR.test_random_complex_right	  só   € ÝŒi×#Ò# DÑ)Ô)ˆØˆÝ�q‘”ð 	-ð 	-ˆAØ—
’
˜A˜q˜6Ñ"Ô" R¨¯
ª
°A°q°6Ñ(:Ô(:Ñ%:Ñ:ˆAÝ�a‘5”5‰DˆAˆqØ—
’
˜A˜3‘” " S§Z¢Z°°¡_¤_Ñ"4Ñ4ˆAÝ  1Ñ%Ô%‰EˆB�Ý% a¨!¡e¨RÑ0Ô0Ð0Ý ¥3 q¡6¤6Ñ*Ô*‰EˆB�Ý% a¨Ñ,Ô,Ð,Ð,ð	-ð 	-r`   c           	      óÀ  — t           j                             d¦  «        }d}t          d¦  «        D �]+}|                     ||g¦  «        d|                     ||g¦  «        z  z   }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          ||
¦  «         �Œ-d S )	Nr  ræ  rR   rQ   Trˆ  rb   r£   )rT   rU   r  r©   r   rÊ   r5   r   rÈ   r   rW   rX   rF   rû  s              r^   Útest_random_complex_pivotingz#TestQR.test_random_complex_pivoting  sA  € ÝŒi×#Ò# DÑ)Ô)ˆØˆÝ�q‘”ð 		-ñ 		-ˆAØ—
’
˜A˜q˜6Ñ"Ô" R¨¯
ª
°A°q°6Ñ(:Ô(:Ñ%:Ñ:ˆAÝ˜ TÐ*Ñ*Ô*‰GˆAˆq�!Ý•D˜‘G”G‘”ˆAÝ•B”F˜1˜Q˜R˜Rœ5 A c r c¤Fš?Ñ+Ô+Ñ,Ô,Ð,Ý% a§f¢f¡h¤h¤j°1¡nµc¸!±f´fÑ=Ô=Ð=Ý% a¨!¡e¨Q¨q¨q¨q°!¨t¬WÑ5Ô5Ð5Ý˜˜!˜!˜!˜Q˜$œ‘[”[‰FˆB�Ý% a¨Ñ,Ô,Ð,Ý% a¨Ñ,Ô,Ð,Ñ,ð		-ð 		-r`   c                 ó´   — g d¢g d¢g d¢g}t          |d¬¦  «        \  }}t          |j        |z  t          d¦  «        ¦  «         t          ||z  |¦  «         d S ©Nrv  rx  ry  Frˆ   rt   rz  r{  s       r^   r  zTestQR.test_check_finite#  sf   € ØˆYˆY˜	˜	˜	 9 9 9Ð-ˆÝ�! %Ð(Ñ(Ô(‰ˆˆ1Ý! !¤#¨¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¡%¨Ñ+Ô+Ð+Ð+Ð+r`   c                 óø  — g d¢g d¢g d¢g}t          |d ¬¦  «        \  }}t          |d¬¦  «        \  }}t          ||¦  «         t          ||¦  «         t          |d¬¦  «        \  }}t          ||¦  «         t          ||¦  «         t          |d¬¦  «        \  }}	t          ||¦  «         t          |	|¦  «         t          t          t           |fdd	i¦  «         t          t          t           |fdd
i¦  «         d S )Nrv  rx  ry  )Úlworkrt   rO  r£   r  r   rR   )r   r   r  Ú	Exception)
r|   r}   r|  r}  r�  rƒ  Úq3Úr3Úq4Úr4s
             r^   Ú
test_lworkzTestQR.test_lwork)  s  € ØˆYˆY˜	˜	˜	 9 9 9Ð-ˆå�!˜4Ð Ñ Ô ‰ˆˆ1õ �A˜Q�‘”‰ˆˆBÝ! " aÑ(Ô(Ð(Ý! " aÑ(Ô(Ð(õ �A˜R�‘”‰ˆˆBÝ! " aÑ(Ô(Ð(Ý! " aÑ(Ô(Ð(õ �A˜R�‘”‰ˆˆBÝ! " aÑ(Ô(Ð(Ý! " aÑ(Ô(Ð(õ 	•i¥ a T¨G°Q¨<Ñ8Ô8Ð8Ý•i¥ a T¨G°Q¨<Ñ8Ô8Ð8Ð8Ð8r`   r'  r>  rZ   r‰  FTr\   c                 ób  — t          ||¦  «        }t          j        ||f|¬¦  «        }t          ||¬¦  «        ^}}}	t	          |j        ||f¦  «         t	          |j        |¦  «         t	          |j        ||f¦  «         t	          |j        |¦  «         t          |	¦  «        |rdndk    sJ ‚|r9|	\  }
t	          |
j        |f¦  «         t	          |
j        t          j        ¦  «         t          |d|¬¦  «        ^}}	t	          |j        ||f¦  «         t	          |j        |¦  «         t          |	¦  «        |rdndk    sJ ‚|r9|	\  }
t	          |
j        |f¦  «         t	          |
j        t          j        ¦  «         t          |d|¬¦  «        ^}}}	t	          |j        ||f¦  «         t	          |j        |¦  «         t	          |j        ||f¦  «         t	          |j        |¦  «         t          |	¦  «        |rdndk    sJ ‚|r9|	\  }
t	          |
j        |f¦  «         t	          |
j        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 ‚|r;|	\  }
t	          |
j        |f¦  «         t	          |
j        t          j        ¦  «         d S d S )	NrŽ   rˆ  rb   r   r}  r±  r¡  Úraw)	rC  rT   r9   r   r   r@   r\   rf   Úint32)r|   r'  rZ   r‰  r\   r  r}   r|  r}  ÚotherrŒ  r&  Útaus                r^   rG  zTestQR.test_shape_dtypeA  s<  € õ
 ��1‰IŒIˆåŒH�a˜�V 5Ð)Ñ)Ô)ˆÝ˜! hÐ/Ñ/Ô/ˆˆˆ1ˆuÝ�Q”W˜q !˜fÑ%Ô%Ð%Ý�Q”W˜eÑ$Ô$Ð$Ý�Q”W˜q !˜fÑ%Ô%Ð%Ý�Q”W˜eÑ$Ô$Ð$Ý�5‰zŒz 8Ð2˜a˜a°Ò3Ð3Ð3Ð3Øð 	,Ø‰BˆAÝ˜œ 1 $Ñ'Ô'Ð'Ý˜œ¥"¤(Ñ+Ô+Ð+å�q˜s¨XÐ6Ñ6Ô6ˆ	ˆˆEÝ�Q”W˜q !˜fÑ%Ô%Ð%Ý�Q”W˜eÑ$Ô$Ð$Ý�5‰zŒz 8Ð2˜a˜a°Ò3Ð3Ð3Ð3Øð 	,Ø‰BˆAÝ˜œ 1 $Ñ'Ô'Ð'Ý˜œ¥"¤(Ñ+Ô+Ð+å˜! *°xÐ@Ñ@Ô@ˆˆˆ1ˆuÝ�Q”W˜q !˜fÑ%Ô%Ð%Ý�Q”W˜eÑ$Ô$Ð$Ý�Q”W˜q !˜fÑ%Ô%Ð%Ý�Q”W˜eÑ$Ô$Ð$Ý�5‰zŒz 8Ð2˜a˜a°Ò3Ð3Ð3Ð3Øð 	,Ø‰BˆAÝ˜œ 1 $Ñ'Ô'Ð'Ý˜œ¥"¤(Ñ+Ô+Ð+å " 1¨5¸8Ð DÑ DÔ DÐ‰
ˆˆc�A˜Ý�S”Y  A Ñ'Ô'Ð'Ý�S”Y Ñ&Ô&Ð&Ý�S”Y  Ñ%Ô%Ð%Ý�S”Y Ñ&Ô&Ð&Ý�Q”W˜q !˜fÑ%Ô%Ð%Ý�Q”W˜eÑ$Ô$Ð$Ý�5‰zŒz 8Ð2˜a˜a°Ò3Ð3Ð3Ð3Øð 	,Ø‰BˆAÝ˜œ 1 $Ñ'Ô'Ð'Ý˜œ¥"¤(Ñ+Ô+Ð+Ð+Ð+ð	,ð 	,r`   rH  rI  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¦  «        ¦  «         d S )NTrˆ  r}  r¢  r¡  r&  )rC  rT   r“   r   r   rò  r:   )
r|   r'  rZ   r  r}   r|  r}  rŒ  r&  r)  s
             r^   r”   zTestQR.test_emptyu  sÄ  € å��1‰IŒIˆåŒH�a˜�VÑÔˆÝ�!‰uŒu‰ˆˆ1Ý˜�2œ; q™>œ>Ñ*Ô*Ð*Ý˜�2œ8 Q¨ FÑ+Ô+Ñ,Ô,Ð,å�Q Ð&Ñ&Ô&‰ˆˆ1ˆaÝ˜�2œ; q™>œ>Ñ*Ô*Ð*Ý˜�2œ8 Q¨ FÑ+Ô+Ñ,Ô,Ð,Ý˜�2œ9 Q™<œ<Ñ(Ô(Ð(å�˜ˆ_‰_Œ_‰ˆÝ˜�2œ8 Q¨ FÑ+Ô+Ñ,Ô,Ð,å�!˜*Ð%Ñ%Ô%‰ˆˆ1Ý˜�2œ8 Q¨ FÑ+Ô+Ñ,Ô,Ð,Ý˜�2œ8 Q¨ FÑ+Ô+Ñ,Ô,Ð,å˜1 5Ð)Ñ)Ô)‰‰
ˆˆc�AÝ˜�RœX q¨! fÑ-Ô-Ñ.Ô.Ð.Ý˜�RœX q d™^œ^Ñ,Ô,Ð,Ý˜�2œ8 Q¨ FÑ+Ô+Ñ,Ô,Ð,Ð,Ð,r`   c                 ó4  — 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¦  «        ¦  «         d S )Nr�   r¥   r’   )rT   r“   r   r   )r|   r}   r�  r¶  r}  s        r^   Útest_multiply_emptyzTestQR.test_multiply_empty�  sé   € ÝŒH�VÑÔˆÝŒH�VÑÔˆÝ˜A˜qÑ!Ô!‰ˆˆAÝ˜�BœH VÑ,Ô,Ñ-Ô-Ð-åŒH�VÑÔˆÝŒH�VÑÔˆÝ˜A˜qÑ!Ô!‰ˆˆAÝ˜�BœH VÑ,Ô,Ñ-Ô-Ð-åŒH�VÑÔˆÝŒH�VÑÔˆÝ˜A˜qÑ!Ô!‰ˆˆAÝ˜�BœH VÑ,Ô,Ñ-Ô-Ð-Ð-Ð-r`   N)>r•   r–   r—   r€   r„  r†  rŽ  r“  r•  r—  rš  r�  rŸ  r¦  r©  r¯  r³  r·  rº  r¾  rÁ  rÄ  rÆ  rÈ  rÊ  rÌ  rÎ  r†   rØ  rÚ  rÝ  râ  rä  ræ  rè  rë  rí  r(  rõ  rø  rü  r  r  r  r	  r  r  r  r  r,  r  r  r  r  r$  r˜   r™   rš   rè  rG  r”   r,  r�   r`   r^   rs  rs    s÷  € € € € € ð,ð ,ð ,ð)ð )ð )ð)ð )ð )ð	)ð 	)ð 	)ð-ð -ð -ð-ð -ð -ð,ð ,ð ,ð	)ð 	)ð 	)ð,ð ,ð ,ð
)ð 
)ð 
)ð&ð &ð &ð
)ð 
)ð 
)ð)ð )ð )ð)ð )ð )ð)ð )ð )ð)ð )ð )ð&ð &ð &ð)ð )ð )ð&ð &ð &ð)ð )ð )ð)ð )ð )ð)ð )ð )ð)ð )ð )ð)ð )ð )ð,ð ,ð ,ð)ð )ð )ð)ð )ð )ð)ð )ð )ð4ð 4ð 4ð4ð 4ð 4ð4ð 4ð 4ð	)ð 	)ð 	)ð-ð -ð -ð-ð -ð -ð0ð 0ð 0ð
-ð 
-ð 
-ð
-ð 
-ð 
-ð-ð -ð -ð	0ð 	0ð 	0ð-ð -ð -ð-ð -ð -ð-ð -ð -ð *ð *ð *ð-ð -ð -ð$0ð 0ð 0ð-ð -ð -ð0ð 0ð 0ð
-ð 
-ð 
-ð
-ð 
-ð 
-ð-ð -ð -ð,ð ,ð ,ð9ð 9ð 9ð0 „[×Ò˜S ) ) )Ñ,Ô,Ø„[×Ò˜S ) ) )Ñ,Ô,Ø„[×Ò˜Z¨%°¨Ñ7Ô7Ø„[×Ò˜W fÑ-Ô-ð.,ð .,ñ .Ô-ñ 8Ô7ñ -Ô,ñ -Ô,ð.,ð` „[×Ò˜ZÐ)AÐ)AÐ)AÑBÔBð-ð -ñ CÔBð-ð2.ð .ð .ð .ð .r`   rs  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                             dg d¢¦  «        ej                             dg d¢¦  «        ej                             de¦  «        d„ ¦   «         ¦   «         ¦   «         Zej                             dg d¢¦  «        d„ ¦   «         ZdS )ÚTestRQc                 ó°   — g d¢g d¢g d¢g}t          |¦  «        \  }}t          ||j        z  t          d¦  «        ¦  «         t          ||z  |¦  «         d S ru  ©r   r   rX   rF   ©r|   r}   r}  r|  s       r^   r€   zTestRQ.test_simple¡  s_   € ØˆYˆY˜	˜	˜	 9 9 9Ð-ˆÝ�!‰uŒu‰ˆˆ1Ý! ! a¤c¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¡%¨Ñ+Ô+Ð+Ð+Ð+r`   c                 ó‚   — g d¢g d¢g d¢g}t          |¦  «        \  }}t          |d¬¦  «        }t          ||¦  «         d S )Nrv  rx  ry  r}  r¢  )r   r   )r|   r}   r}  r|  rƒ  s        r^   Útest_rzTestRQ.test_r§  sN   € ØˆYˆY˜	˜	˜	 9 9 9Ð-ˆÝ�!‰uŒu‰ˆˆ1Ý�˜ˆ_‰_Œ_ˆÝ! ! RÑ(Ô(Ð(Ð(Ð(r`   c                 ó.  — t           j                             d¦  «        }d}t          d¦  «        D ]c}|                     ||g¦  «        }t	          |¦  «        \  }}t          ||j        z  t          |¦  «        ¦  «         t          ||z  |¦  «         Œdd S rï  ©rT   rU   r  r©   r   r   rX   rF   ©r|   rj   rZ   r  r}   r}  r|  s          r^   r(  zTestRQ.test_random­  s’   € ÝŒi×#Ò# DÑ)Ô)ˆØˆÝ�q‘”ð 	0ð 	0ˆAØ—
’
˜A˜q˜6Ñ"Ô"ˆAÝ�a‘5”5‰DˆAˆqÝ% a¨!¬#¡g­s°1©v¬vÑ6Ô6Ð6Ý% a¨!¡e¨QÑ/Ô/Ð/Ð/ð		0ð 	0r`   c                 óª   — g d¢g d¢g}t          |¦  «        \  }}t          |j        |z  t          d¦  «        ¦  «         t          ||z  |¦  «         d S )Nrv  rx  rt   r0  r1  s       r^   r—  zTestRQ.test_simple_trap¶  r˜  r`   c                 ó°   — ddgddgddgg}t          |¦  «        \  }}t          |j        |z  t          d¦  «        ¦  «         t          ||z  |¦  «         d S rœ  r0  r1  s       r^   r�  zTestRQ.test_simple_tall¼  s_   € Ø�ˆV�a˜�V˜a ˜VÐ$ˆÝ�!‰uŒu‰ˆˆ1Ý! !¤#¨¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¡%¨Ñ+Ô+Ð+Ð+Ð+r`   c                 óª   — g d¢g d¢g}t          |¦  «        \  }}t          ||j        z  t          d¦  «        ¦  «         t          ||z  |¦  «         d S )Nr¼  rx  rt   r0  r1  s       r^   r¾  zTestRQ.test_simple_fatÂ  sY   € ØˆYˆY˜	˜	˜	Ð"ˆÝ�!‰uŒu‰ˆˆ1Ý! ! a¤c¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¡%¨Ñ+Ô+Ð+Ð+Ð+r`   c                 óÔ   — g d¢g d¢g d¢g}t          |¦  «        \  }}t          ||                     ¦   «         j        z  t	          d¦  «        ¦  «         t          ||z  |¦  «         d S rÐ  )r   r   rW   rX   rF   r1  s       r^   r†   zTestRQ.test_simple_complexÈ  sg   € Øˆ\ˆ\˜<˜<˜<¨¨¨Ð3ˆÝ�!‰uŒu‰ˆˆ1Ý! ! a§f¢f¡h¤h¤j¡.µ#°a±&´&Ñ9Ô9Ð9Ý! ! a¡%¨Ñ+Ô+Ð+Ð+Ð+r`   c                 ó2  — t           j                             d¦  «        }d}d}t          d¦  «        D ]c}|                     ||g¦  «        }t	          |¦  «        \  }}t          ||j        z  t          |¦  «        ¦  «         t          ||z  |¦  «         Œdd S rþ  r5  ©r|   rj   r'  rZ   r  r}   r}  r|  s           r^   r  zTestRQ.test_random_tallÎ  ó—   € ÝŒi×#Ò# DÑ)Ô)ˆØˆØˆÝ�q‘”ð 	0ð 	0ˆAØ—
’
˜A˜q˜6Ñ"Ô"ˆAÝ�a‘5”5‰DˆAˆqÝ% a¨!¬#¡g­s°1©v¬vÑ6Ô6Ð6Ý% a¨!¡e¨QÑ/Ô/Ð/Ð/ð		0ð 	0r`   c                 ó2  — t           j                             d¦  «        }d}d}t          d¦  «        D ]c}|                     ||g¦  «        }t	          |¦  «        \  }}t          ||j        z  t          |¦  «        ¦  «         t          ||z  |¦  «         Œdd S r  r5  r<  s           r^   r  zTestRQ.test_random_trapØ  r=  r`   c                 ó’  — t           j                             d¦  «        }d}d}t          d¦  «        D ]“}|                     ||g¦  «        }t	          |d¬¦  «        \  }}t          ||j        z  t          |¦  «        ¦  «         t          ||z  |¦  «         t          |j	        ||f¦  «         t          |j	        ||f¦  «         Œ”d S )Nr  r  rÿ  rR   r¡  r¢  )
rT   rU   r  r©   r   r   rX   rF   r   r@   r<  s           r^   Útest_random_trap_economicz TestRQ.test_random_trap_economicâ  sÊ   € ÝŒi×#Ò# DÑ)Ô)ˆØˆØˆÝ�q‘”ð 	*ð 	*ˆAØ—
’
˜A˜q˜6Ñ"Ô"ˆAÝ�a˜jÐ)Ñ)Ô)‰DˆAˆqÝ% a¨!¬#¡g­s°1©v¬vÑ6Ô6Ð6Ý% a¨!¡e¨QÑ/Ô/Ð/Ý˜œ 1 a &Ñ)Ô)Ð)Ý˜œ 1 a &Ñ)Ô)Ð)Ð)ð	*ð 	*r`   c                 óˆ  — t           j                             d¦  «        }d}t          d¦  «        D ]�}|                     ||g¦  «        d|                     ||g¦  «        z  z   }t	          |¦  «        \  }}t          ||                     ¦   «         j        z  t          |¦  «        ¦  «         t          ||z  |¦  «         Œ‘d S r  )	rT   rU   r  r©   r   r   rW   rX   rF   r6  s          r^   r,  zTestRQ.test_random_complexî  s´   € ÝŒi×#Ò# DÑ)Ô)ˆØˆÝ�q‘”ð 	0ð 	0ˆAØ—
’
˜A˜q˜6Ñ"Ô" R¨¯
ª
°A°q°6Ñ(:Ô(:Ñ%:Ñ:ˆAÝ�a‘5”5‰DˆAˆqÝ% a¨!¯&ª&©(¬(¬*¡nµc¸!±f´fÑ=Ô=Ð=Ý% a¨!¡e¨QÑ/Ô/Ð/Ð/ð		0ð 	0r`   c                 óì  — t           j                             d¦  «        }d}d}t          d¦  «        D ]À}|                     ||g¦  «        d|                     ||g¦  «        z  z   }t	          |d¬¦  «        \  }}t          ||                     ¦   «         j        z  t          |¦  «        ¦  «         t          ||z  |¦  «         t          |j
        ||f¦  «         t          |j
        ||f¦  «         ŒÁd S )Nr  r  rÿ  rR   rQ   r¡  r¢  )rT   rU   r  r©   r   r   rW   rX   rF   r   r@   r<  s           r^   Útest_random_complex_economicz#TestRQ.test_random_complex_economic÷  sì   € ÝŒi×#Ò# DÑ)Ô)ˆØˆØˆÝ�q‘”ð 	*ð 	*ˆAØ—
’
˜A˜q˜6Ñ"Ô" R¨¯
ª
°A°q°6Ñ(:Ô(:Ñ%:Ñ:ˆAÝ�a˜jÐ)Ñ)Ô)‰DˆAˆqÝ% a¨!¯&ª&©(¬(¬*¡nµc¸!±f´fÑ=Ô=Ð=Ý% a¨!¡e¨QÑ/Ô/Ð/Ý˜œ 1 a &Ñ)Ô)Ð)Ý˜œ 1 a &Ñ)Ô)Ð)Ð)ð	*ð 	*r`   c                 ó´   — g d¢g d¢g d¢g}t          |d¬¦  «        \  }}t          ||j        z  t          d¦  «        ¦  «         t          ||z  |¦  «         d S r  r0  r1  s       r^   r  zTestRQ.test_check_finite  sf   € ØˆYˆY˜	˜	˜	 9 9 9Ð-ˆÝ�! %Ð(Ñ(Ô(‰ˆˆ1Ý! ! a¤c¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¡%¨Ñ+Ô+Ð+Ð+Ð+r`   r'  r>  rZ   r\   c                 ó|  — 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        |¦  «         d S )NrŽ   r}  r¢  r¡  )rC  rT   r9   r   r   r@   r\   )r|   r'  rZ   r\   r  r}   r}  r|  s           r^   rG  zTestRQ.test_shape_dtype	  s+  € õ ��1‰IŒIˆåŒH�a˜�V 5Ð)Ñ)Ô)ˆÝ�!‰uŒu‰ˆˆ1Ý�Q”W˜q !˜fÑ%Ô%Ð%Ý�Q”W˜q !˜fÑ%Ô%Ð%Ý�Q”W˜eÑ$Ô$Ð$Ý�Q”W˜eÑ$Ô$Ð$åˆq�sˆO‰OŒOˆÝ�Q”W˜q !˜fÑ%Ô%Ð%Ý�Q”W˜eÑ$Ô$Ð$å�!˜*Ð%Ñ%Ô%‰ˆˆ1Ý�Q”W˜q !˜fÑ%Ô%Ð%Ý�Q”W˜eÑ$Ô$Ð$Ý�Q”W˜q !˜fÑ%Ô%Ð%Ý�Q”W˜eÑ$Ô$Ð$Ð$Ð$r`   rH  rI  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¦  «        ¦  «         d S )Nr}  r¢  r¡  )rC  rT   r“   r   r   rò  )r|   r'  rZ   r  r}   r}  r|  s          r^   r”   zTestRQ.test_empty   sì   € å��1‰IŒIˆåŒH�a˜�VÑÔˆÝ�!‰uŒu‰ˆˆ1Ý˜�2œ8 Q¨ FÑ+Ô+Ñ,Ô,Ð,Ý˜�2œ; q™>œ>Ñ*Ô*Ð*åˆq�sˆO‰OŒOˆÝ˜�2œ8 Q¨ FÑ+Ô+Ñ,Ô,Ð,å�!˜*Ð%Ñ%Ô%‰ˆˆ1Ý˜�2œ8 Q¨ FÑ+Ô+Ñ,Ô,Ð,Ý˜�2œ8 Q¨ FÑ+Ô+Ñ,Ô,Ð,Ð,Ð,r`   N)r•   r–   r—   r€   r3  r(  r—  r�  r¾  r†   r  r  r@  r,  rC  r  r˜   r™   rš   rè  rG  r”   r�   r`   r^   r.  r.     s}  € € € € € ð,ð ,ð ,ð)ð )ð )ð0ð 0ð 0ð,ð ,ð ,ð,ð ,ð ,ð,ð ,ð ,ð,ð ,ð ,ð0ð 0ð 0ð0ð 0ð 0ð
*ð 
*ð 
*ð0ð 0ð 0ð
*ð 
*ð 
*ð,ð ,ð ,ð „[×Ò˜S ) ) )Ñ,Ô,Ø„[×Ò˜S ) ) )Ñ,Ô,Ø„[×Ò˜W fÑ-Ô-ð%ð %ñ .Ô-ñ -Ô,ñ -Ô,ð%ð( „[×Ò˜ZÐ)AÐ)AÐ)AÑBÔBð-ð -ñ CÔBð-ð -ð -r`   r.  c                   ó   — e Zd Zd„ Zd„ Ze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                             deeej        eej        g¦  «        d„ ¦   «         Zej                             dd	d
g¦  «        ej                             dddg¦  «        ej                             dej        ej        ej        ej        g¦  «        d„ ¦   «         ¦   «         ¦   «         Zej                             dddg¦  «        ej                             dej        ej        ej        ej        g¦  «        d„ ¦   «         ¦   «         ZdS )Ú	TestSchurc                 ó  — t          ||z  |                     ¦   «         j        z  |||d¬¦  «         t          ||                     ¦   «         j        z  t          j        t          |¦  «        ¦  «        z
  dd|d¬¦  «         d S )Nz&Schur decomposition does not match 'a'r¿   r   zu is not unitary)r   rW   rX   rT   rF   rf   )r|   r}   Útr   rÀ   rÁ   s         r^   Úcheck_schurzTestSchur.check_schur3  sŠ   € å˜˜A™ §¢¡¤¤
Ñ*¨A°D¸tØ Hð	Jñ 	Jô 	Jð 	Jõ 	˜˜AŸFšF™HœHœJ™­¬µ°A±´©¬Ñ7¸ÀÈØ 2ð	4ñ 	4ô 	4ð 	4ð 	4ð 	4r`   c           	      óú  — g d¢g d¢g d¢g}t          |¦  «        \  }}|                      |||dd¬¦  «         t          |d¦  «        \  }}t          t          j        t          t          |¦  «        ¦  «        ¦  «        o-t          j        t          t          |¦  «        ¦  «        ¦  «        ¦  «         |                      |||dd¬¦  «         t          ||¦  «        \  }}|                      |||dd¬¦  «         d S )N©rw  é   rt   rx  ©rO  rt   rw   r,  ç›+¡†›„ö<©rÀ   rÁ   rœ   )r   rK  r   rT   r4  r=   r?   r   )r|   r}   rJ  rí  ÚtcÚzcÚtc2Úzc2s           r^   r€   zTestSchur.test_simple<  só   € ØˆZˆZ˜˜˜ J J JÐ/ˆÝ�Q‰xŒx‰ˆˆ1Ø×Ò˜˜A˜q u°5ÐÑ9Ô9Ð9Ý�q˜)Ñ$Ô$‰ˆˆBÝ•”•u�Y r™]œ]Ñ+Ô+Ñ,Ô,ÐMµ´½½iÈ¹m¼mÑ8LÔ8LÑ1MÔ1MÑNÔNÐNØ×Ò˜˜B ¨°UÐÑ;Ô;Ð;Ý˜2˜r‘?”?‰ˆˆSØ×Ò˜˜C ¨5°uÐÑ=Ô=Ð=Ð=Ð=r`   zsort, expected_diagÚlhprR   ç      à¿rc   ÚrhpÚiucÚoucc                 ó   — | dk    S )Nru  r�   )rÓ  s    r^   ú<lambda>zTestSchur.<lambda>L  s
   € �A˜’H€ r`   c                 óè   — g d¢g d¢g d¢g d¢g}t          ||¬¦  «        \  }}}|                      |||dd¬¦  «         t          t          j        |¦  «        |d	¬
¦  «         t          d|¦  «         d S )N©r(  r¢   rP  rQ  ©g      Àg      ÀrQ  rP  ©r!  ç      @ç      Àg      @©ra  r(  rS  ç      @©rA   r,  rP  rQ  çê-�™—q=©rÀ   rR   )r   rK  r   rT   r5   r   )r|   rA   Úexpected_diagr}   rJ  r   Úsdims          r^   Ú	test_sortzTestSchur.test_sortF  s›   € ð ÐÐØ"Ð"Ð"ØÐÐØÐÐð!ˆõ ˜1 4Ð(Ñ(Ô(‰
ˆˆ1ˆdØ×Ò˜˜A˜q u°5ÐÑ9Ô9Ð9Ý�œ ™
œ
 M¸Ð>Ñ>Ô>Ð>Ý�Q˜ÑÔÐÐÐr`   c                 ó–   — g d¢g d¢g d¢g d¢g}t          t          t          |d¬¦  «         t          t          t          |d¬¦  «         d S )Nr^  r_  r`  rc  Úunsupportedre  rb   )r  r  r   )r|   r}   s     r^   Útest_sort_errorszTestSchur.test_sort_errorsZ  sc   € ØÐÐØ"Ð"Ð"ØÐÐØÐÐð!ˆõ 	•j¥%¨°Ð?Ñ?Ô?Ð?Ý•j¥%¨°Ð3Ñ3Ô3Ð3Ð3Ð3r`   c                 óž   — g d¢g d¢g d¢g}t          |d¬¦  «        \  }}t          ||z  |                     ¦   «         j        z  |¦  «         d S )NrM  rx  rO  Frˆ   )r   r   rW   rX   )r|   r}   rJ  rí  s       r^   r  zTestSchur.test_check_finiteb  sY   € ØˆZˆZ˜˜˜ J J JÐ/ˆÝ�Q UÐ+Ñ+Ô+‰ˆˆ1Ý! ! a¡%¨!¯&ª&©(¬(¬*Ñ"4°aÑ8Ô8Ð8Ð8Ð8r`   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 ‚d S )Nr�   rŽ   rR   rV  re  r   )rT   r“   r   rF   r   r\   r   )r|   r‹   r}   rJ  rí  Út0Úz0ri  s           r^   r”   zTestSchur.test_emptyg  s/  € åŒH�V 2Ð&Ñ&Ô&ˆÝ�Q‰xŒx‰ˆˆ1Ý•r”v˜a rÐ*Ñ*Ô*Ñ+Ô+‰ˆˆBÝ˜�2œ8 FÑ+Ô+Ñ,Ô,Ð,Ý˜�2œ8 FÑ+Ô+Ñ,Ô,Ð,ØŒw˜"œ(Ò"Ð"Ð"Ð"ØŒw˜"œ(Ò"Ð"Ð"Ð"å˜1 5Ð)Ñ)Ô)‰
ˆˆ1ˆdÝ˜�2œ8 FÑ+Ô+Ñ,Ô,Ð,Ý˜�2œ8 FÑ+Ô+Ñ,Ô,Ð,Ý�T˜1ÑÔÐØŒw˜"œ(Ò"Ð"Ð"Ð"ØŒw˜"œ(Ò"Ð"Ð"Ð"Ð"Ð"r`   rA   Úoutputr[  rœ   r\   c                 ó¾   — t          j        ddgddgg¦  «        }t          |                     |¦  «        ||¬¦  «        d         }|dk    r|dk    sn|dk    sJ ‚d S d S )Nçš™™™™™¹?r°   rR   ©rA   rr  r£   rY  r   )rT   rC   r   rY   )r|   rA   rr  r\   r]   ri  s         r^   Útest_gh_13137_sort_strz TestSchur.test_gh_13137_sort_strx  sm   € õ  ŒJ˜˜b˜	 A s 8Ð,Ñ-Ô-ˆõ �Q—X’X˜e‘_”_¨4¸Ð?Ñ?Ô?ÀÔCˆØ  EšM˜Mˆt�qŠyˆyˆy¨t°qªy¨y¨yÐ8¨y¨yˆyˆyr`   c                 ó  ‡— t          j        ddgddgg¦  «        }|dk    o|t           j        t           j        hv Šd	ˆfd„	}t	          |                     |¦  «        ||¬¦  «        d         }‰r|dk    sn|dk    sJ ‚d S d S )
Nrt  r°   rR   r[  c                 óÄ   •— ‰r7t          j        | ¦  «        rJ ‚|�t          j        |¦  «        sJ ‚| |dz  z   }nt          j        | ¦  «        sJ ‚|�J ‚| }|j        dk    S )NrQ   r  )rT   ÚiscomplexobjÚisrealrË   )rÓ  rª  rí  Úall_reals      €r^   rA   z1TestSchur.test_gh_13137_sort_custom.<locals>.sortŸ  sv   ø€ Øð Ýœ?¨1Ñ-Ô-Ð-Ð-Ð-Ø�}­¬°1©¬�}�}Ð5Ø˜˜"™‘H��å” qÑ)Ô)Ð)Ð)Ð)Ø�y�y�yØ�Ø”6˜E’>Ð!r`   ru  r£   rb   rJ  )rT   rC   r;   r&  r   rY   )r|   rr  r\   r]   rA   ri  r{  s         @r^   Útest_gh_13137_sort_customz#TestSchur.test_gh_13137_sort_customŽ  s¥   ø€ õ ŒJ˜˜b˜	 A s 8Ð,Ñ-Ô-ˆà˜6’>ÐG eµ´
½B¼JÐ/GÐ&Gˆð		"ð 		"ð 		"ð 		"ð 		"ð 		"õ �Q—X’X˜e‘_”_¨4¸Ð?Ñ?Ô?ÀÔCˆØ$Ð3ˆt�qŠyˆyˆy¨$°!ª)¨)¨)Ð3¨)¨)ˆyˆyr`   N)r•   r–   r—   rK  r€   r˜   r™   rš   rT   r>   rj  rm  r  re   r›   r;   rœ   r<   r”   r&  rF  rv  r|  r�   r`   r^   rH  rH  1  sŒ  € € € € € ð4ð 4ð 4ð>ð >ð >ð „[×ÒØØ
�7�2”7˜1‘:”:�+˜t W R¤W¨Q¡Z¤Z°Ð5Ð	6Ø
�'�"”'˜!‘*”*˜c G B¤G¨A¡J¤J ;°Ð5Ð	6Ø
�$˜˜W˜RœW Q™ZœZ¨'¨"¬'°!©*¬*¨Ð5Ð	6Ø
�'�"”'˜!‘*”*˜w˜rœw q™zœz˜k¨4°Ð5Ð	6Ø
Ð
˜w˜rœw q™zœz¨3°°´¸±´°¸TÐBÐ	Cð		Eñô ð
ð 
ñô ð
ð4ð 4ð 4ð9ð 9ð 9ð
 „[×Ò˜T C¨°´
¸GÀRÄ\Ð#RÑSÔSð#ð #ñ TÔSð#ð  „[×Ò˜V e¨U ^Ñ4Ô4Ø„[×Ò˜X¨°	Ð':Ñ;Ô;Ø„[×Ò˜W r¤z°2´:Ø')¤|°R´]ð'Dñ Eô Eð9ð 9ñEô Eñ <Ô;ñ 5Ô4ð9ð$ „[×Ò˜X¨°	Ð':Ñ;Ô;Ø„[×Ò˜W r¤z°2´:Ø')¤|°R´]ð'Dñ Eô Eð4ð 4ñEô Eñ <Ô;ð4ð 4ð 4r`   rH  c                   ó�   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
ej                             d	eeeeeg¦  «        d
„ ¦   «         ZdS )ÚTestHessenbergc                 ó´   — g d¢g d¢g d¢g}g d¢g d¢g d¢g}t          |d¬¦  «        \  }}t          |j        |z  |z  |¦  «         t          ||d	¬
¦  «         d S )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—@rb   ©Úcalc_qr=  ©Údecimal©r   r   rX   ©r|   r}   Úh1rn   r|  s        r^   r€   zTestHessenberg.test_simple³  s‘   € ØÐÐØˆ_ˆ_Øˆ^ˆ^ðˆð .Ð-Ð-Ø.Ð.Ð.Ø!Ð!Ð!ð#ˆõ ˜! AÐ&Ñ&Ô&‰ˆˆ1Ý! !¤#¨¡'¨A¡+¨qÑ1Ô1Ð1Ý! ! R°Ð3Ñ3Ô3Ð3Ð3Ð3r`   c                 óž   — g d¢g d¢g d¢g}t          |d¬¦  «        \  }}t          |                     ¦   «         j        |z  |z  |¦  «         d S )Nr€  )r‚  y             €f@r„  )y       €      ;Àr  r†  rb   rŠ  )r   r   rW   rX   ©r|   r}   rn   r|  s       r^   r†   z"TestHessenberg.test_simple_complex¾  sc   € ØÐÐØÐÐØˆ_ˆ_ðˆõ ˜! AÐ&Ñ&Ô&‰ˆˆ1Ý! !§&¢&¡(¤(¤*¨q¡.°1Ñ"4°aÑ8Ô8Ð8Ð8Ð8r`   c                 ó’   — g d¢g d¢g d¢g d¢g d¢g d¢g d¢g}t          |d¬	¦  «        \  }}t          |j        |z  |z  |¦  «         d S )
N)rb   rR   rt   r=  rv   rw   rì  )r   rR   rt   r=  rw   rì  rR   )r   rR   rR   rt   r   rt   rR   )r   r   rR   rw  r   r   rR   )r   rt   rb   rR   r   rb   rR   )r   rb   rR   rt   r   rb   r   )r   r   r   r   r   rb   rR   rb   rŠ  rŽ  r’  s       r^   Útest_simple2zTestHessenberg.test_simple2Å  s€   € Ø"Ð"Ð"Ø"Ð"Ð"Ø"Ð"Ð"Ø"Ð"Ð"Ø"Ð"Ð"Ø"Ð"Ð"Ø"Ð"Ð"ð$ˆõ ˜! AÐ&Ñ&Ô&‰ˆˆ1Ý! !¤#¨¡'¨A¡+¨qÑ1Ô1Ð1Ð1Ð1r`   c                 ó–   — t          j        d¦  «        }d|d<   t          |d¬¦  «        \  }}t          |j        |z  |z  |¦  «         d S )Nrt   rR   )r£   r   rb   rŠ  )rT   rF   r   r   rX   r’  s       r^   Útest_simple3zTestHessenberg.test_simple3Ð  sN   € ÝŒF�1‰IŒIˆØˆˆ%‰Ý˜! AÐ&Ñ&Ô&‰ˆˆ1Ý! !¤#¨¡'¨A¡+¨qÑ1Ô1Ð1Ð1Ð1r`   c                 óø   — t           j                             d¦  «        }d}t          d¦  «        D ]H}|                     ||g¦  «        }t	          |d¬¦  «        \  }}t          |j        |z  |z  |¦  «         ŒId S )Nr  ræ  rR   rb   rŠ  )rT   rU   r  r©   r   r   rX   ©r|   rj   rZ   r  r}   rn   r|  s          r^   r(  zTestHessenberg.test_randomÖ  sƒ   € ÝŒi×#Ò# DÑ)Ô)ˆØˆÝ�q‘”ð 	6ð 	6ˆAØ—
’
˜A˜q˜6Ñ"Ô"ˆAÝ˜a¨Ð*Ñ*Ô*‰DˆAˆqÝ% a¤c¨A¡g°¡k°1Ñ5Ô5Ð5Ð5ð	6ð 	6r`   c                 óR  — t           j                             d¦  «        }d}t          d¦  «        D ]u}|                     ||g¦  «        d|                     ||g¦  «        z  z   }t	          |d¬¦  «        \  }}t          |                     ¦   «         j        |z  |z  |¦  «         Œvd S )Nr  ræ  rR   rQ   rb   rŠ  )rT   rU   r  r©   r   r   rW   rX   r˜  s          r^   r,  z"TestHessenberg.test_random_complexÞ  s¦   € ÝŒi×#Ò# DÑ)Ô)ˆØˆÝ�q‘”ð 	=ð 	=ˆAØ—
’
˜A˜q˜6Ñ"Ô" R¨¯
ª
°A°q°6Ñ(:Ô(:Ñ%:Ñ:ˆAÝ˜a¨Ð*Ñ*Ô*‰DˆAˆqÝ% a§f¢f¡h¤h¤j°1¡n°qÑ&8¸!Ñ<Ô<Ð<Ð<ð	=ð 	=r`   c                 ó¶   — g d¢g d¢g d¢g}g d¢g d¢g d¢g}t          |dd¬	¦  «        \  }}t          |j        |z  |z  |¦  «         t          ||d
¬¦  «         d S )Nr€  r�  r…  r‡  rˆ  r‰  rb   F)r‹  r‰   r=  rŒ  rŽ  r�  s        r^   r  z TestHessenberg.test_check_finiteæ  s“   € ØÐÐØˆ_ˆ_Øˆ^ˆ^ðˆð .Ð-Ð-Ø.Ð.Ð.Ø!Ð!Ð!ð#ˆõ ˜! A°EÐ:Ñ:Ô:‰ˆˆ1Ý! !¤#¨¡'¨A¡+¨qÑ1Ô1Ð1Ý! ! R°Ð3Ñ3Ô3Ð3Ð3Ð3r`   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          ||¦  «         d S )
NrR   rb   rì  rN  rŠ  y       @      Àr±   y      @      @y      (@       À)r   r   rT   rF   )r|   r}   rn   r|  rº   Úh2r�  s          r^   Útest_2x2zTestHessenberg.test_2x2ñ  s¨   € Ø�ˆV�a˜�WÐˆå˜! AÐ&Ñ&Ô&‰ˆˆ1Ý! !¥R¤V¨A¡Y¤YÑ/Ô/Ð/Ý! ! QÑ'Ô'Ð'à�Dˆ\˜D %˜=Ð)ˆÝ˜A aÐ(Ñ(Ô(‰ˆˆBÝ! "¥b¤f¨Q¡i¤iÑ0Ô0Ð0Ý! " aÑ(Ô(Ð(Ð(Ð(r`   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 ‚d S )Nr�   rŽ   rt   TrŠ  )rT   r“   r   r@   r\   rF   )r|   r‹   r}   rn   r|  Úh3r   s          r^   r”   zTestHessenberg.test_emptyý  sã   € åŒH�V 2Ð&Ñ&Ô&ˆÝ�q‰MŒMˆØŒw˜&Ò Ð Ð Ð ØŒw�*¥R¤V¨A°RÐ%8Ñ%8Ô%8Ñ9Ô9Ô?Ò?Ð?Ð?Ð?å˜! DÐ)Ñ)Ô)‰ˆˆ1Ý˜A dÐ+Ñ+Ô+‰ˆˆBØŒw˜&Ò Ð Ð Ð ØŒw˜"œ(Ò"Ð"Ð"Ð"àŒw˜&Ò Ð Ð Ð ØŒw˜"œ(Ò"Ð"Ð"Ð"Ð"Ð"r`   N)r•   r–   r—   r€   r†   r”  r–  r(  r,  r  r�  r˜   r™   rš   re   r›   r;   rœ   r<   r”   r�   r`   r^   r~  r~  ±  sÆ   € € € € € ð	4ð 	4ð 	4ð9ð 9ð 9ð	2ð 	2ð 	2ð2ð 2ð 2ð6ð 6ð 6ð=ð =ð =ð	4ð 	4ð 	4ð
)ð 
)ð 
)ð „[×Ò˜T C¨°¸À)Ð#LÑMÔMð#ð #ñ NÔMð#ð #ð #r`   r~  zBuild DependenciesÚblasÚnameÚversionc                   ó8   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	dS )	ÚTestQZc                 ó¢  — t           j                             d¦  «        }d}|                     ||g¦  «                             t          ¦  «        }|                     ||g¦  «                             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    ¦  «        ¦  «         d S )Né90  rv   rŒ  r   )rT   rU   r  rY   r;   r   r   rX   rF   r   rÈ   r5   ©	r|   rj   rZ   r]   rÌ   ÚAAÚBBÚQr  s	            r^   Útest_qz_singlezTestQZ.test_qz_single	  s  € ÝŒi×#Ò# EÑ*Ô*ˆØˆØ�JŠJ˜˜1�vÑÔ×%Ò%¥gÑ.Ô.ˆØ�JŠJ˜˜1�vÑÔ×%Ò%¥gÑ.Ô.ˆÝ˜!˜Q‘x”x‰ˆˆB��1Ý! ! b¡&¨1¬3¡,°¸1Ð=Ñ=Ô=Ð=Ý! ! b¡&¨1¬3¡,°¸1Ð=Ñ=Ô=Ð=Ý! ! a¤c¡'­3¨q©6¬6¸1Ð=Ñ=Ô=Ð=Ý! ! a¤c¡'­3¨q©6¬6¸1Ð=Ñ=Ô=Ð=Ý•”•t˜B‘x”x 1’}Ñ%Ô%Ñ&Ô&Ð&Ð&Ð&r`   c                 ó2  — t           j                             d¦  «        }d}|                     ||g¦  «        }|                     ||g¦  «        }t          ||¦  «        \  }}}}t	          ||z  |j        z  |¦  «         t	          ||z  |j        z  |¦  «         t	          ||j        z  t          |¦  «        ¦  «         t	          ||j        z  t          |¦  «        ¦  «         t          t          j        t          |¦  «        dk    ¦  «        ¦  «         d S )Nr¦  rv   r   ©
rT   rU   r  r   r   rX   rF   r   rÈ   r5   r§  s	            r^   Útest_qz_doublezTestQZ.test_qz_double	  sï   € ÝŒi×#Ò# EÑ*Ô*ˆØˆØ�JŠJ˜˜1�vÑÔˆØ�JŠJ˜˜1�vÑÔˆÝ˜!˜Q‘x”x‰ˆˆB��1Ý! ! b¡&¨1¬3¡,°Ñ2Ô2Ð2Ý! ! b¡&¨1¬3¡,°Ñ2Ô2Ð2Ý! ! a¤c¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¤c¡'­3¨q©6¬6Ñ2Ô2Ð2Ý•”•t˜B‘x”x 1’}Ñ%Ô%Ñ&Ô&Ð&Ð&Ð&r`   c                 óœ  — t           j                             d¦  «        }d}|                     ||g¦  «        d|                     ||g¦  «        z  z   }|                     ||g¦  «        d|                     ||g¦  «        z  z   }t          ||¦  «        \  }}}}t	          ||z  |                     ¦   «         j        z  |¦  «         t	          ||z  |                     ¦   «         j        z  |¦  «         t	          ||                     ¦   «         j        z  t          |¦  «        ¦  «         t	          ||                     ¦   «         j        z  t          |¦  «        ¦  «         t          t          j	        t          |¦  «        dk    ¦  «        ¦  «         t          t          j	        t          |¦  «        j        dk    ¦  «        ¦  «         d S )Nr¦  rv   rQ   r   )rT   rU   r  r   r   rW   rX   rF   r   rÈ   r5   rË   r§  s	            r^   Útest_qz_complexzTestQZ.test_qz_complex+	  sj  € ÝŒi×#Ò# EÑ*Ô*ˆØˆØ�JŠJ˜˜1�vÑÔ  C§J¢J°°1¨vÑ$6Ô$6Ñ!6Ñ6ˆØ�JŠJ˜˜1�vÑÔ  C§J¢J°°1¨vÑ$6Ô$6Ñ!6Ñ6ˆÝ˜!˜Q‘x”x‰ˆˆB��1Ý! ! b¡&¨1¯6ª6©8¬8¬:Ñ"5°qÑ9Ô9Ð9Ý! ! b¡&¨1¯6ª6©8¬8¬:Ñ"5°qÑ9Ô9Ð9Ý! ! a§f¢f¡h¤h¤j¡.µ#°a±&´&Ñ9Ô9Ð9Ý! ! a§f¢f¡h¤h¤j¡.µ#°a±&´&Ñ9Ô9Ð9Ý•”•t˜B‘x”x 1’}Ñ%Ô%Ñ&Ô&Ð&Ý•”•t˜B‘x”x”}¨Ò)Ñ*Ô*Ñ+Ô+Ð+Ð+Ð+r`   c                 ó  — t           j                             d¦  «        }d}|                     ||g¦  «        d|                     ||g¦  «        z  z                        t          ¦  «        }|                     ||g¦  «        d|                     ||g¦  «        z  z                        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    ¦  «        ¦  «         t          t          j        t          |¦  «        j        dk    ¦  «        ¦  «         d S )Nr¦  rv   rQ   rŒ  r   )rT   rU   r  rY   r<   r   r   rW   rX   rF   r   rÈ   r5   rË   r§  s	            r^   Útest_qz_complex64zTestQZ.test_qz_complex648	  sš  € ÝŒi×#Ò# EÑ*Ô*ˆØˆØ�ZŠZ˜˜A˜ÑÔ " S§Z¢Z°°A°Ñ%7Ô%7Ñ"7Ñ7×?Ò?Å	ÑJÔJˆØ�ZŠZ˜˜A˜ÑÔ " S§Z¢Z°°A°Ñ%7Ô%7Ñ"7Ñ7×?Ò?Å	ÑJÔJˆÝ˜!˜Q‘x”x‰ˆˆB��1Ý! ! b¡&¨1¯6ª6©8¬8¬:Ñ"5°qÀ!ÐDÑDÔDÐDÝ! ! b¡&¨1¯6ª6©8¬8¬:Ñ"5°qÀ!ÐDÑDÔDÐDÝ! ! a§f¢f¡h¤h¤j¡.µ#°a±&´&À!ÐDÑDÔDÐDÝ! ! a§f¢f¡h¤h¤j¡.µ#°a±&´&À!ÐDÑDÔDÐDÝ•”•t˜B‘x”x 1’}Ñ%Ô%Ñ&Ô&Ð&Ý•”•t˜B‘x”x”}¨Ò)Ñ*Ô*Ñ+Ô+Ð+Ð+Ð+r`   c                 ó6  — t           j                             d¦  «        }d}|                     ||g¦  «        }|                     ||g¦  «        }t          ||d¬¦  «        \  }}}}||z  |                     ¦   «         j        z  }	t          |	j        |¦  «         t          |	j        d¦  «         ||z  |                     ¦   «         j        z  }
t          |
j        |¦  «         t          |
j        d¦  «         t          ||                     ¦   «         j        z  t          |¦  «        ¦  «         t          ||                     ¦   «         j        z  t          |¦  «        ¦  «         t          t          j        t          |¦  «        dk    ¦  «        ¦  «         d S )Nr¦  rv   rœ   )rr  r   )rT   rU   r  r   rW   rX   r   r[  rË   rF   r   rÈ   r5   )r|   rj   rZ   r]   rÌ   r¨  r©  rª  r  ÚaaÚbbs              r^   Útest_qz_double_complexzTestQZ.test_qz_double_complexE	  sJ  € ÝŒi×#Ò# EÑ*Ô*ˆØˆØ�JŠJ˜˜1�vÑÔˆØ�JŠJ˜˜1�vÑÔˆÝ˜!˜Q yÐ1Ñ1Ô1‰ˆˆB��1Ø�‰V�a—f’f‘h”h”jÑ ˆÝ! "¤'¨1Ñ-Ô-Ð-Ý! "¤'¨1Ñ-Ô-Ð-Ø�‰V�a—f’f‘h”h”jÑ ˆÝ! "¤'¨1Ñ-Ô-Ð-Ý! "¤'¨1Ñ-Ô-Ð-Ý! ! a§f¢f¡h¤h¤j¡.µ#°a±&´&Ñ9Ô9Ð9Ý! ! a§f¢f¡h¤h¤j¡.µ#°a±&´&Ñ9Ô9Ð9Ý•”•t˜B‘x”x 1’}Ñ%Ô%Ñ&Ô&Ð&Ð&Ð&r`   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	„ ¬
¦  «         d S )N)ç333333@ç      )@ç     @AÀg      @©ç333333@ç     €5@g     ÀGÀg      @)r¼  r
  ç     ÀEÀrd  )çš™™™™™@ra  ç      GÀra  )rP  rP  rS  rP  )rP  r¢   g      Àr¿  )rP  r'  rb  rP  )r  r¢   rb  r(  c                 ó   — |dk    S )Nr   r�   )ÚarÚaiÚbetas      r^   r\  z,TestQZ.test_qz_double_sort.<locals>.<lambda>m	  s
   € ÀbÈAÂg€ r`   re  )	rT   r4   r  r  r   r   r   rX   rÊ   )r|   r]   rÌ   r¨  r©  rª  r  ri  s           r^   Útest_qz_double_sortzTestQZ.test_qz_double_sortU	  s¥   € õ ŒHÐ-Ð-Ð-Ø-Ð-Ð-Ø,Ð,Ð,Ø,Ð,Ð,ð.ñ /ô /ˆõ
 ŒHÐ+Ð+Ð+Ø+Ð+Ð+Ø+Ð+Ð+Ø+Ð+Ð+ð-ñ .ô .ˆõ
 	•j¥" a¨Ð1MÐ1MÐNÑNÔNÐNð	Fð 	Fr`   c                 ó6  — t           j                             d¦  «        }d}|                     ||g¦  «        }|                     ||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    ¦  «        ¦  «         d S )Nr¦  rv   Frˆ   r   r­  r§  s	            r^   r  zTestQZ.test_check_finite¸	  sö   € ÝŒi×#Ò# EÑ*Ô*ˆØˆØ�JŠJ˜˜1�vÑÔˆØ�JŠJ˜˜1�vÑÔˆÝ˜!˜Q¨UÐ3Ñ3Ô3‰ˆˆB��1Ý! ! b¡&¨1¬3¡,°Ñ2Ô2Ð2Ý! ! b¡&¨1¬3¡,°Ñ2Ô2Ð2Ý! ! a¤c¡'­3¨q©6¬6Ñ2Ô2Ð2Ý! ! a¤c¡'­3¨q©6¬6Ñ2Ô2Ð2Ý•”•t˜B‘x”x 1’}Ñ%Ô%Ñ&Ô&Ð&Ð&Ð&r`   N)
r•   r–   r—   r«  r®  r°  r²  r¶  rÅ  r  r�   r`   r^   r¤  r¤  	  s�   € € € € € ð
'ð 
'ð 
'ð
'ð 
'ð 
'ð,ð ,ð ,ð,ð ,ð ,ð'ð 'ð 'ð 5Fð 5Fð 5FðF
'ð 
'ð 
'ð 
'ð 
'r`   r¤  c                   óf   — 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dS )Ú	TestOrdQZc                 ó6  — 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| _        d S )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              À)rQ   yÍÌÌÌÌÌü¿333333@y              Ày      @      À)r¸  r¹  rº  rW  r»  )r¼  r½  r¾  rd  )r¿  g      :@rÀ  ra  )rb   rR   éýÿÿÿrb   )rb   rt   éûÿÿÿr=  )rb   rt   éüÿÿÿrt   )rb   rt   rÌ  r=  )r  rP  r¢   r¢   )r(  r(  r'  r+  )r+  r(  rP  r¢   )ru  r(  r.  r+  )r.  r)  ra  r)  )r+  r+  r'  r!  )r!  rP  ra  ra  )r  rP  r(  r+  rR   r   rb   )rT   r4   rF   r5   r]   rÌ   )
ÚclsÚA1ÚB1ÚA2ÚB2ÚA3ÚB3ÚA4ÚB4ÚA5s
             r^   Úsetup_classzTestOrdQZ.setup_classÆ	  s×  € õ ŒXð $ð $ð $ð&ð &ð &ð%ð %ð %ð'ð 'ð 'ð(ñ )ô )ˆõ ŒXÐDÐDÐDØDÐDÐDØDÐDÐDØDÐDÐDðFñ Gô Gˆõ ŒXÐ/Ð/Ð/Ø.Ð.Ð.Ø.Ð.Ð.Ø.Ð.Ð.ð0ñ 1ô 1ˆõ
 ŒX�}�}�}Ø$�}�}Ø$�}�}Ø$�}�}ð&ñ 'ô 'ˆõ ŒXÐ'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'ð)ñ *ô *ˆõ ŒXÐ)Ð)Ð)Ø'Ð'Ð'Ø'Ð'Ð'Ø'Ð'Ð'ð)ñ *ô *ˆõ ŒV�A‰YŒYˆÝŒW�a˜�V‰_Œ_ˆõ ŒW�a˜�V‰_Œ_ˆà�R˜˜R Ð$ˆŒØ�R˜˜R Ð$ˆŒˆˆr`   c                 óÈ   ‡— t          j        d¬¦  «        5  ˆfd„t          | j        | j        ¦  «        D ¦   «         }d d d ¦  «         n# 1 swxY w Y   t          |¦  «        S )NÚraiserü   c                 ó:   •— g | ]\  }}t          ||‰¬ ¦  «        ‘ŒS )re  )r    )Ú.0ÚAiÚBirA   s      €r^   ú
<listcomp>z'TestOrdQZ.qz_decomp.<locals>.<listcomp>ÿ	  s,   ø€ ÐNÐNÐN±°°B•5˜˜R dÐ+Ñ+Ô+ÐNÐNÐNr`   )rT   rý   Úzipr]   rÌ   Útuple)r|   rA   Úrets    ` r^   Ú	qz_decompzTestOrdQZ.qz_decompý	  s¯   ø€ ÝŒ[˜WÐ%Ñ%Ô%ð 	Oð 	OØNÐNÐNÐN½#¸d¼fÀdÄfÑ:MÔ:MÐNÑNÔNˆCð	Oð 	Oð 	Oñ 	Oô 	Oð 	Oð 	Oð 	Oð 	Oð 	Oð 	Oøøøð 	Oð 	Oð 	Oð 	Oå�S‰zŒzÐs   —'A
Á
AÁAc
           	      ó*  — t          j        |j        Ž }
t          ||j                             ¦   «         z  |
¦  «         t          |	|	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k    r|||dz
  f         dk    rŒ||j        d         dz
  k     rª||dz   |f         dk    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    r2t          |||f         d¦  «         t          |||f         d¦  «         �Œ#||         dk    rt          |||f         d¦  «         �ŒIt          |||f         |||f         z  ||         ||         z  ¦  «         �Œ}t          |¦  «        }d}t          |j        d         ¦  «        D ]H} |t          j        ||         g¦  «        t          j        ||         g¦  «        ¦  «        }|s|rJ ‚|}ŒId S )Nr°   r£   r   rb   rR   T)rT   rF   r@   r   rX   rW   r   Útrilr9   r©   r
   rË   r   r   r2   r4   )r|   r]   rÌ   rA   r¨  r©  ÚalpharÄ  rª  r  ÚIdr®   ÚevalsÚ_ÚtmpÚsortfunÚlastsortÚcursorts                     r^   ÚcheckzTestOrdQZ.check
  s  € ÝŒV�Q”WÐˆå! ! a¤c§h¢h¡j¤j¡.°"Ñ5Ô5Ð5Ý! ! a¤c§h¢h¡j¤j¡.°"Ñ5Ô5Ð5å! ! b¡&¨!¨a©%Ñ0Ô0Ð0Ý! ! b¡&¨!¨a©%Ñ0Ô0Ð0å�2œ7 2 r™?œ?­B¬H°R´XÑ,>Ô,>Ñ?Ô?Ð?Ý�2œ7 2 r™?œ?­B¬H°R´XÑ,>Ô,>Ñ?Ô?Ð?å�q”w˜q”zÑ"Ô"ð 	Mñ 	MˆAð �1Šuˆu˜˜1˜a !™e˜8œ¨Ò)Ð)Øà�2”8˜A”; ‘?Ò"Ð" r¨!¨a©%°¨(¤|°qÒ'8Ð'8Ý˜r ! A¨¡E '¨1¨Q°©U¨7Ð"2Ô3°R¸¸!¸a¹%¸ÀÀ1ÀqÁ5ÀÐ8HÔ5IÑJÔJ‘��qð ˜”8”= 1Ò$Ð$Ø! 1 a &œM�EØ˜A˜a !™e˜G”n T¨!¨A°©E¨'¤]Ñ2�Ø�q”6”; ’?�?Ø˜q !˜fœ+�CÝ)¨%°Ñ5Ô5Ð5Ð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ÔLÐLÑLÝ" 4Ñ(Ô(ˆØˆÝ�q”w˜q”zÑ"Ô"ð 	ð 	ˆAØ�g�bœh¨¨a¬ zÑ2Ô2µB´H¸dÀ1¼g¸YÑ4GÔ4GÑHÔHˆGð ð #Ø"Ð"Ð"�{ØˆHˆHð	ð 	r`   c                 ó”   — |                       |¦  «        }t          || j        | j        ¦  «        D ]\  }}} | j        |||g|¢R Ž  Œd S rJ  )râ  rß  r]   rÌ   rí  )r|   rA   rá  ÚretirÜ  rÝ  s         r^   Ú	check_allzTestOrdQZ.check_all0
  sc   € Ø�nŠn˜TÑ"Ô"ˆå  T¤V¨T¬VÑ4Ô4ð 	,ð 	,‰LˆD�"�bØˆDŒJ�r˜2˜tÐ+ dÐ+Ð+Ð+Ð+Ð+ð	,ð 	,r`   c                 ó0   — |                       d¦  «         d S )NrV  ©rð  rL  s    r^   Útest_lhpzTestOrdQZ.test_lhp6
  ó   € Ø�Š�uÑÔÐÐÐr`   c                 ó0   — |                       d¦  «         d S )NrX  rò  rL  s    r^   Útest_rhpzTestOrdQZ.test_rhp9
  rô  r`   c                 ó0   — |                       d¦  «         d S )NrY  rò  rL  s    r^   Útest_iuczTestOrdQZ.test_iuc<
  rô  r`   c                 ó0   — |                       d¦  «         d S )NrZ  rò  rL  s    r^   Útest_ouczTestOrdQZ.test_ouc?
  rô  r`   c                 ó6   — d„ }|                       |¦  «         d S )Nc                 óŽ   — t          j        | t          ¬¦  «        }|dk    }d|| <   | |         ||         z  j        dk    ||<   |S ©NrŽ   r   F©rT   Ú
empty_likeÚboolrË   ©rÓ  rª  ÚoutÚnonzeros       r^   rA   z TestOrdQZ.test_ref.<locals>.sortD
  óM   € Ý”- ­Ð.Ñ.Ô.ˆCØ˜A’vˆGØ!ˆC��‰MØ˜gœJ q¨¤zÑ1Ô7¸1Ò<ˆC�‰LØˆJr`   rò  ©r|   rA   s     r^   Útest_refzTestOrdQZ.test_refB
  ó+   € ð	ð 	ð 	ð 	�Š�tÑÔÐÐÐr`   c                 ó6   — d„ }|                       |¦  «         d S )Nc                 óŽ   — t          j        | t          ¬¦  «        }|dk    }d|| <   | |         ||         z  j        dk    ||<   |S rý  rþ  r  s       r^   rA   z TestOrdQZ.test_cef.<locals>.sortO
  r  r`   rò  r  s     r^   Útest_cefzTestOrdQZ.test_cefM
  r  r`   c                 ó>  — t          | j        d         | j        d         d¬¦  «        } | j        | j        d         | j        d         dg|¢R Ž  t          | j        d         | j        d         d¬¦  «        } | j        | j        d         | j        d         dg|¢R Ž  d S )Nrb   rR   rV  re  )r    r]   rÌ   rí  )r|   rá  s     r^   Útest_diff_input_typeszTestOrdQZ.test_diff_input_typesX
  sœ   € Ý�D”F˜1”I˜tœv aœy¨uÐ5Ñ5Ô5ˆØˆŒ
�4”6˜!”9˜dœf Qœi¨Ð5°Ð5Ð5Ð5Ð5å�D”F˜1”I˜tœv aœy¨uÐ5Ñ5Ô5ˆØˆŒ
�4”6˜!”9˜dœf Qœi¨Ð5°Ð5Ð5Ð5Ð5Ð5Ð5r`   c                 óv  — 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          ||¦  «         Œ‹Œ”d S )NrR   r°   rc   rV  rW  rX  rY  rZ  y       À      ð?y      à?      à?yš™™™™™Ù¿š™™™™™É¿ù      ð?      ð¿r   rb   re  )	rT   rF   r5   r¹   rY  rß  r    rÿ  r   )r|   rÎ  rÏ  Ú	expected1rÐ  rÑ  Ú	expected2rÒ  rÓ  Ú	expected3rÔ  rÕ  Ú	expected4rÖ  ÚB5Ú	expected5r]   rÌ   ÚexpectedrÜ  rÝ  Ú	expectediÚsortstrÚexpected_eigvalsrè  rå  rÄ  ÚazeroÚbzerorÓ  s                                 r^   Útest_sort_explicitzTestOrdQZ.test_sort_explicit_
  s²  € õ ŒV�A‰YŒYˆÝŒW�b˜#�YÑÔˆØ˜d A˜YÐ'Ø˜a ˜YÐ'Ø˜d A˜YÐ'Ø˜a ˜YÐ'ð)ˆ	õ ŒV�A‰YŒYˆÝŒW�g˜zÐ*Ñ+Ô+ˆØ˜k¨>Ð:Ð;Ø˜n¨kÐ:Ð;Ø˜k¨>Ð:Ð;Ø˜n¨kÐ:Ð;ð=ˆ	õ
 ŒV�A‰YŒYˆÝŒW�a˜�V‰_Œ_ˆØ˜c¥2¤6˜]Ð+Ø˜c¥2¤6˜]Ð+Ø�bœf c˜]Ð+ð-ˆ	õ ŒV�A‰YŒYˆÝŒW�b˜!�WÑÔˆØ˜d¥B¤F˜^Ð,Ø˜d¥B¤F˜^Ð,Ø�bœf d˜^Ð,ð.ˆ	õ ŒW�a˜�V‰_Œ_ˆÝŒW�a˜�XÑÔˆà˜a¥¤˜[Ð)Ø˜a¥¤˜[Ð)ð+ˆ	ð ��R˜˜RÐ ˆØ��R˜˜RÐ ˆØ˜y¨)°YÀ	ÐJˆÝ!$ Q¨¨8Ñ!4Ô!4ð 		5ð 		5ÑˆB��IØ-6ð 5ð 5Ñ)�Ð)Ý*/°°B¸WÐ*EÑ*EÔ*EÑ'��1�e˜T 1 aØ !š�Ø š�Ý”M %Ñ(Ô(�Ý#%¤6��%˜%‘-Ñ Ý$&¤F��5�&˜5‘.Ñ!Ø! 5 &œM¨$°¨v¬,Ñ6��5�&‘	ÝÐ 0°!Ñ4Ô4Ð4Ð4ð5ð		5ð 		5r`   N)r•   r–   r—   Úclassmethodr×  râ  rí  rð  ró  rö  rø  rú  r  r
  r  r  r�   r`   r^   rÈ  rÈ  Å	  sÔ   € € € € € Øð4%ð 4%ñ „[ð4%ðlð ð ð
,ð ,ð ,ð\,ð ,ð ,ðð ð ðð ð ðð ð ðð ð ð	ð 	ð 	ð	ð 	ð 	ð6ð 6ð 6ð-5ð -5ð -5ð -5ð -5r`   rÈ  c                   ó~   — e Zd Zej                             d¦  «        d„ ¦   «         Zej        j        d„ ¦   «         ZdS )ÚTestOrdQZWorkspaceSizerv   c                 óT  — t           j                             d¦  «        }d}t           j        t           j        fD ]j}|                     ||f¦  «                             |¦  «        }|                     ||f¦  «                             |¦  «        }t          ||d„ d¬¦  «        }Œkt           j        t           j        fD ]j}|                     ||f¦  «                             |¦  «        }|                     ||f¦  «                             |¦  «        }t          ||d„ d¬¦  «        }Œkd S )Nr¦  éÊ   c                 ó   — | |k     S rJ  r�   ©rå  rÄ  s     r^   r\  z7TestOrdQZWorkspaceSize.test_decompose.<locals>.<lambda>™
  ó
   € °U¸T²\€ r`   r[  ru  c                 ó   — | |k     S rJ  r�   r"  s     r^   r\  z7TestOrdQZWorkspaceSize.test_decompose.<locals>.<lambda>Ÿ
  r#  r`   rœ   )	rT   rU   r  r;   r&  rY   r    rF  r<   )r|   rj   re  Úddtyper]   rÌ   rè  s          r^   Útest_decomposez%TestOrdQZWorkspaceSize.test_decompose�
  s*  € åŒi×#Ò# EÑ*Ô*ˆØˆå”z¥2¤:Ð.ð 	%ð 	%ˆFØ—
’
˜A˜q˜6Ñ"Ô"×)Ò)¨&Ñ1Ô1ˆAØ—
’
˜A˜q˜6Ñ"Ô"×)Ò)¨&Ñ1Ô1ˆAå�a˜Ð!AÐ!AØ#ð%ñ %ô %ˆAˆAõ ”}¥b¤lÐ3ð 	(ð 	(ˆFØ—
’
˜A˜q˜6Ñ"Ô"×)Ò)¨&Ñ1Ô1ˆAØ—
’
˜A˜q˜6Ñ"Ô"×)Ò)¨&Ñ1Ô1ˆAÝ�a˜Ð!AÐ!AØ&ð(ñ (ô (ˆAˆAð	(ð 	(r`   c                 ó„  — t           j                             d¦  «        }d}t           j        t           j        t           j        t           j        fD ]o}|                     ||f¦  «                             |¦  «        }|                     ||f¦  «                             |¦  «        }t          ||d¬¦  «        \  }}}}	}
}Œpd S )Nr¦  r   rZ  re  )	rT   rU   r  r;   r&  rF  r<   rY   r    )r|   rj   re  r%  r]   rÌ   ÚSrX   rå  rÄ  ÚUr5  s               r^   Útest_decompose_oucz)TestOrdQZWorkspaceSize.test_decompose_ouc¢
  s¯   € åŒi×#Ò# EÑ*Ô*ˆØˆå”z¥2¤:­r¬}½b¼lÐKð 	>ð 	>ˆFØ—
’
˜A˜q˜6Ñ"Ô"×)Ò)¨&Ñ1Ô1ˆAØ—
’
˜A˜q˜6Ñ"Ô"×)Ò)¨&Ñ1Ô1ˆAÝ&+¨A¨q°uÐ&=Ñ&=Ô&=Ñ#ˆAˆq�%˜˜q ! !ð	>ð 	>r`   N)	r•   r–   r—   r˜   r™   Ú	fail_slowr&  rO  r*  r�   r`   r^   r  r  �
  s_   € € € € € Ø„[×Ò˜1ÑÔð(ð (ñ Ôð(ð" „[Ôð>ð >ñ Ôð>ð >ð >r`   r  c                   ó   — e Zd Zd„ ZdS )ÚTestDatacopiedc                 ó´  ‡— ddl m} t          ddgddgg¦  «        }t          |¦  «        Š|                     ¦   «         }|                     ¦   «         } 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          |	¦  «        ¬¦  «         Œ>d S )Nr   )Ú_datacopiedrb   rR   rt   c                   ó   •— e Zd Zdˆ fd„	ZdS )ú-TestDatacopied.test_datacopied.<locals>.Fake1Nc                 ó   •— ‰S rJ  r�   )r|   r\   r‚   r]   s      €r^   Ú	__array__z7TestDatacopied.test_datacopied.<locals>.Fake1.__array__¸
  s   ø€ Ø�r`   )NN)r•   r–   r—   r3  rZ  s   €r^   ÚFake1r1  ·
  s3   ø€ € € € € ðð ð ð ð ð ð ð r`   r4  c                   ó   •— e Zd Z” j        ZdS )ú-TestDatacopied.test_datacopied.<locals>.Fake2N)r•   r–   r—   Ú__array_interface__rZ  s   €r^   ÚFake2r6  »
  s   ø€ € € € € Ø"#Ô"7ÐÐÐr`   r8  FTrÄ   )Úscipy.linalg._decompr/  rH   rC   Útolistr‚   r   Úrepr)r|   r/  r  ÚLÚM2r4  r8  ÚF1ÚF2ÚitemÚstatusÚarrr]   s               @r^   Útest_datacopiedzTestDatacopied.test_datacopied¯
  sV  ø€ Ø4Ð4Ð4Ð4Ð4Ð4å�Q˜�F˜Q ˜FÐ#Ñ$Ô$ˆÝ�A‰JŒJˆØ�HŠH‰JŒJˆØ�VŠV‰XŒXˆð	ð 	ð 	ð 	ð 	ð 	ð 	ñ 	ô 	ð 	ð	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð ˆU‰WŒWˆØˆU‰WŒWˆà ˜Z¨!¨U¨°a¸°YØ  %˜[¨2¨u¨+¸¸E°{ðDð 	-ð 	-‰LˆD�&å˜$‘-”-ˆCÝ˜˜ S¨$Ñ/Ô/°Ý!% d¡¤ð-ñ -ô -ð -ð -ð	-ð 	-r`   N)r•   r–   r—   rC  r�   r`   r^   r-  r-  ­
  s#   € € € € € ð-ð -ð -ð -ð -r`   r-  c                  óø   — t          dt          j        ¬¦  «        } t          j        | j        ddt
          ¬¦  «        }|                     d¦  «        }t          |d¬¦  «         t          |j        d¬¦  «         d	S )
z4Check linalg works with non-aligned memory (float32)i’  rŽ   rR   r  ©ÚoffsetÚcountr\   ©rO  rO  T©Úoverwrite_aN)	r:   rT   Úuint8Ú
frombufferÚdatar;   r  r
   rX   ©r}   rí  s     r^   Útest_aligned_mem_floatrO  È
  ss   € õ 	ˆs�"œ(Ð#Ñ#Ô#€Aõ 	Œ�a”f Q¨c½ÐAÑAÔA€AØ	�	Š	�(ÑÔ€Aåˆ�tÐÑÔÐÝˆŒ˜ÐÑÔÐÐÐr`   Úppc64lezcrashes on ppc64lec                  óø   — t          dt          j        ¬¦  «        } t          j        | j        ddt
          ¬¦  «        }|                     d¦  «        }t          |d¬¦  «         t          |j        d¬¦  «         d	S )
z4Check linalg works with non-aligned memory (float64)i$  rŽ   r=  r  rE  rH  TrI  N)	r:   rT   rK  rL  rM  r›   r  r
   rX   rN  s     r^   Útest_aligned_memrR  Õ
  ss   € õ
 	ˆs�"œ(Ð#Ñ#Ô#€Aõ 	Œ�a”f Q¨c½Ð?Ñ?Ô?€AØ	�	Š	�(ÑÔ€Aåˆ�tÐÑÔÐÝˆŒ˜ÐÑÔÐÐÐr`   c                  óø   — t          dt          j        ¬¦  «        } t          j        | j        ddt
          ¬¦  «        }|                     d¦  «        }t          |d¬¦  «         t          |j        d¬¦  «         d	S )
z>Check that complex objects don't need to be completely alignediH  rŽ   rw  r  rE  rH  TrI  N)	r9   rT   rK  rL  rM  rœ   r  r
   rX   rN  s     r^   Útest_aligned_mem_complexrT  ä
  ss   € õ 	ˆd�"œ(Ð#Ñ#Ô#€Aõ 	Œ�a”f Q¨c½ÐAÑAÔA€AØ	�	Š	�(ÑÔ€Aåˆ�tÐÑÔÐåˆŒ˜ÐÑÔÐÐÐr`   c                 ó~  — t          |¦  «        }t          t          |¦  «        ¦  «        D �]}|d d …         }t          ||         t          j        ¦  «        rât	          j        ||         j        ||         j        j	        z  dz   t          j
        ¬¦  «        }t	          j        |j        d||         j        ||         j        ¬¦  «        }|                     ||         j        ¦  «        }||         |d<   |||<    | |i |¤Ž t          ||         j        ¦  «        dk    r||         j        ||<    | |i |¤Ž �Œd S )Nrw  rŽ   r=  rE  .rb   )r+  r©   rf   rd   rT   rE   r9   rÇ   r\   ÚitemsizerK  rL  rM  r  r@   rX   )Úfuncrh  rB  r®   r}   r´  s         r^   Úcheck_lapack_misalignedrX  ò
  s3  € Ý�‰:Œ:€DÝ•3�t‘9”9ÑÔð #ñ #ˆØ���ŒGˆÝ�a˜”d�BœJÑ'Ô'ð 	#å”˜!˜Aœ$œ) A a¤D¤JÔ$7Ñ7¸Ñ9ÅÄÐJÑJÔJˆBÝ”˜rœw¨q¸¸!¼¼	Ø%& q¤T¤Zð1ñ 1ô 1ˆBà—’˜A˜aœDœJÑ'Ô'ˆBØ˜”dˆBˆs‰GØˆAˆa‰DØˆD�!Ð�vÐÐÐÝ�1�Q”4”:‰Œ Ò"Ð"Ø˜”t”v��!‘Ø��aÐ"˜6Ð"Ð"Ð"ùð#ð #r`   z0Ticket #1152, triggers a segfault in rare cases.)Úrunr9  c                  ó¾  — t          j        dt          ¬¦  «        } t          j        d¦  «                             d¦  «        }t          j        dt           j        ¬¦  «        }t          j        |j        ddt          ¬¦  «        }|                     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/          |||¦  «         Œd S )NrO  rŽ   r  rH  i N  r=  rE  TrI  )Úoverwrite_b)rJ  r[  )rT   rF   r›   r:   r  rK  rL  rM  rÆ   r   r
   r?  r   r   r   r   r   r   r   r   r   r   r   rX  )	r  ÚRr(  rº   ÚLUÚpivrW  rh  rB  s	            r^   Útest_lapack_misalignedr_    s<  € õ 	Œˆr�ÐÑÔ€AÝ
Œ	�#‰Œ×Ò˜xÑ(Ô(€AÝ
Œ	�%�rœxÐ(Ñ(Ô(€AÝ
Œ�a”f Q¨c½Ð?Ñ?Ô?€AØ	�	Š	�(ÑÔ€AÝ
Œ�‰Œ€AÝ˜‰lŒl�G€Bˆå�1�$�¨Ð.Ñ.Ô.Ð/Ý�q�d�D¨TÐ2Ñ2Ô2Ð3Ý�!�•t¨Ð-Ñ-Ô-Ð.Ý˜˜�d¨tÐ4Ñ4Ô4Ð5Ý˜˜S˜	 1�~¥t¸Ð'=Ñ'=Ô'=Ð>Ý�Q˜�F�D¨T¸tÐDÑDÔDÐEÝ�1�$�¨Ð.Ñ.Ô.Ð/Ý�1�$�¨Ð.Ñ.Ô.Ð/Ý�1�$�¨Ð.Ñ.Ô.Ð/Ý�q�d�D™FœFÐ#Ý�q�d�D¨TÐ2Ñ2Ô2Ð3Ý˜�t�T¨dÐ3Ñ3Ô3Ð4Ý�!�•t¨Ð-Ñ-Ô-Ð.Ý�!�•t¨Ð-Ñ-Ô-Ð.Ý˜!˜�t°Ð5Ñ5Ô5Ð6Ý�Q�D�$¨4Ð0Ñ0Ô0Ð1ð!!ð 4ð 4Ñˆˆt�Võ$ 	   d¨FÑ3Ô3Ð3Ð3ð%4ð 4r`   c                   ón   — 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S )ÚTestOverwritec                 ó`   — t          t          dg¦  «         t          t          ddg¦  «         d S ©Nr  )rG   r
   rL  s    r^   Útest_eigzTestOverwrite.test_eig&  s/   € Ý�C & Ñ*Ô*Ð*Ý�C &¨&Ð!1Ñ2Ô2Ð2Ð2Ð2r`   c                 ó`   — t          t          dg¦  «         t          t          ddg¦  «         d S rc  )rG   r   rL  s    r^   Ú	test_eighzTestOverwrite.test_eigh*  s/   € Ý�D 6 (Ñ+Ô+Ð+Ý�D 6¨6Ð"2Ñ3Ô3Ð3Ð3Ð3r`   c                 ó2   — t          t          dg¦  «         d S ©Nr<  )rG   r   rL  s    r^   r™  zTestOverwrite.test_eig_banded.  ó   € Ý�J¨¨Ñ1Ô1Ð1Ð1Ð1r`   c                 ó2   — t          t          dg¦  «         d S rc  )rG   r   rL  s    r^   Útest_eigvalszTestOverwrite.test_eigvals1  ó   € Ý�G f XÑ.Ô.Ð.Ð.Ð.r`   c                 ó2   — t          t          dg¦  «         d S rc  )rG   r   rL  s    r^   Útest_eigvalshzTestOverwrite.test_eigvalsh4  s   € Ý�H v hÑ/Ô/Ð/Ð/Ð/r`   c                 ó2   — t          t          dg¦  «         d S rh  )rG   r   rL  s    r^   r�  z!TestOverwrite.test_eigvals_banded7  s   € Ý�N¨V¨HÑ5Ô5Ð5Ð5Ð5r`   c                 ó2   — t          t          dg¦  «         d S rc  )rG   r   rL  s    r^   Útest_hessenbergzTestOverwrite.test_hessenberg:  ri  r`   c                 ó2   — t          t          dg¦  «         d S rc  )rG   r   rL  s    r^   Útest_lu_factorzTestOverwrite.test_lu_factor=  s   € Ý�I¨ xÑ0Ô0Ð0Ð0Ð0r`   c                 óˆ   ‡— t          j        g d¢g d¢g d¢g¦  «        }t          |¦  «        Št          ˆfd„dg¦  «         d S )Nrs   r!  )rì  rw  rw  c                 ó$   •— t          ‰| ¦  «        S rJ  )r   )rº   Úxlus    €r^   r\  z-TestOverwrite.test_lu_solve.<locals>.<lambda>C  s   ø€ ¥h¨s°AÑ&6Ô&6€ r`   )rt   )rT   r4   r   rG   )r|   rÓ  rv  s     @r^   Útest_lu_solvezTestOverwrite.test_lu_solve@  sR   ø€ ÝŒH�i�i�i   ¨I¨I¨IÐ6Ñ7Ô7ˆÝ˜‰lŒlˆÝÐ6Ð6Ð6Ð6¸¸Ñ?Ô?Ð?Ð?Ð?r`   c                 ó2   — t          t          dg¦  «         d S rc  )rG   r   rL  s    r^   Útest_luzTestOverwrite.test_luE  ó   € Ý�B  Ñ)Ô)Ð)Ð)Ð)r`   c                 ó2   — t          t          dg¦  «         d S rc  )rG   r   rL  s    r^   Útest_qrzTestOverwrite.test_qrH  rz  r`   c                 ó2   — t          t          dg¦  «         d S rc  )rG   r   rL  s    r^   Útest_rqzTestOverwrite.test_rqK  rz  r`   c                 ó2   — t          t          dg¦  «         d S rc  )rG   r   rL  s    r^   Ú
test_schurzTestOverwrite.test_schurN  s   € Ý�E F 8Ñ,Ô,Ð,Ð,Ð,r`   c                 óZ   — t          d„ dgt          j        t          j        g¬¦  «         d S )Nc                 ó"   — t          | d¦  «        S )Nrœ   )r   ©r}   s    r^   r\  z2TestOverwrite.test_schur_complex.<locals>.<lambda>R  s   € ¥e¨A¨yÑ&9Ô&9€ r`   r  )Údtypes)rG   rT   r;   r&  rL  s    r^   Útest_schur_complexz TestOverwrite.test_schur_complexQ  s9   € ÝÐ9Ð9¸F¸8Ý$&¤Jµ´
Ð#;ð	=ñ 	=ô 	=ð 	=ð 	=ð 	=r`   c                 óV   — t          t          dg¦  «         t          d„ dg¦  «         d S )Nr  c                 ó$   — t          | d¬¦  «        S )NrR  r¼  )r   rƒ  s    r^   r\  z(TestOverwrite.test_svd.<locals>.<lambda>W  s   € ¥c¨!¸7Ð&CÑ&CÔ&C€ r`   )rG   r   rL  s    r^   Útest_svdzTestOverwrite.test_svdU  s0   € Ý�C & Ñ*Ô*Ð*ÝÐCÐCÀfÀXÑNÔNÐNÐNÐNr`   c                 ó2   — t          t          dg¦  «         d S rc  )rG   r   rL  s    r^   Útest_svdvalszTestOverwrite.test_svdvalsY  rl  r`   N)r•   r–   r—   rd  rf  r™  rk  rn  r�  rq  rs  rw  ry  r|  r~  r€  r…  rˆ  rŠ  r�   r`   r^   ra  ra  %  s
  € € € € € ð3ð 3ð 3ð4ð 4ð 4ð2ð 2ð 2ð/ð /ð /ð0ð 0ð 0ð6ð 6ð 6ð2ð 2ð 2ð1ð 1ð 1ð@ð @ð @ð
*ð *ð *ð*ð *ð *ð*ð *ð *ð-ð -ð -ð=ð =ð =ðOð Oð Oð/ð /ð /ð /ð /r`   ra  c                 ó²  — t          j        | dft          ¬¦  «                             |¦  «        }t          j        |¦  «        j        }d|z  }t          |¦  «        }t          |j        | df¦  «         t          || 
                    ¦   «         |d¬¦  «         t          |j        ¦  «        }t          |j        d¦  «         t          || 
                    ¦   «         |¬¦  «         | d	k    rè|sèt           j                             d¦  «        }|                     | d	¦  «        |                     d	| ¦  «        z  }|d
|                     | d¦  «        z  |                     d| ¦  «        z  z   }|                     |¦  «        }t          |d¬¦  «        }t          |j        | d	f¦  «         t          |d¬¦  «        }t          |j        | df¦  «         d S d S d S )NrR   rŽ   rû  rb   g³zê]Ê‚>rü  ©rR   rb   r-  rv   ç-Cëâ6?çü©ñÒMbP?©Úrcondç�íµ ÷Æ°>rw   )rT   rÆ   r›   rY   rý  rþ  r   r   r@   r   ÚmeanrX   rU   r  rV   )rZ   r\   Úskip_bigÚXrþ  rÃ   ÚYrj   s           r^   Ú_check_orthr–  ]  s�  € Ý
Œ��A��eÐ$Ñ$Ô$×+Ò+¨EÑ2Ô2€Aå
Œ(�5‰/Œ/Ô
€CØ
�‰*€CåˆQ‰Œ€AÝ�”˜1˜a˜&Ñ!Ô!Ð!Ý�A�q—v’v‘x”x c°Ð7Ñ7Ô7Ð7åˆQŒS‰	Œ	€AÝ�”˜&Ñ!Ô!Ð!Ý�A�q—v’v‘x”x cÐ*Ñ*Ô*Ð*àˆ1‚u€u�X€uÝŒi×#Ò# AÑ&Ô&ˆØ�HŠH�Q˜‰NŒN˜SŸXšX a¨™^œ^Ñ+ˆØ��s—x’x  1‘~”~Ñ%¨¯ª°°A©¬Ñ6Ñ6ˆØ�HŠH�U‰OŒOˆå�˜$ÐÑÔˆÝ�Q”W˜q !˜fÑ%Ô%Ð%å�˜$ÐÑÔˆÝ�Q”W˜q %˜jÑ)Ô)Ð)Ð)Ð)ð €u€u€ur`   rw  z"test only on 64-bit, else too slowc                  óˆ   — d} 	 t          | t          j        d¬¦  «         d S # t          $ r}t	          d¦  «        |‚d }~ww xY w)Ni€–˜ T)r“  z.memory error perhaps caused by orth regression)r–  rT   r&  ÚMemoryErrorÚAssertionError)rZ   r¹  s     r^   Útest_orth_memory_efficiencyrš  x  sb   € ð 	€AðÝ�A•r”z¨DÐ1Ñ1Ô1Ð1Ð1Ð1øÝð ð ð ÝØ<ñ
ô 
àð	øøøøðøøøs   „" ¢
A¬<¼Ac                  óÀ   — t           j        t           j        t           j        t           j        g} g d¢}t          j        | |¦  «        D ]\  }}t          ||¦  «         Œd S )N©rb   rR   rt   rO  r  )rT   r;   r&  r<   rF  Ú	itertoolsÚproductr–  )r„  r0  r‹   rZ   s       r^   Ú	test_orthrŸ  ‰  s`   € ÝŒj�"œ*¥b¤lµB´MÐB€FØÐÐ€EÝÔ" 6¨5Ñ1Ô1ð ð ‰ˆˆAÝ�A�rÑÔÐÐðð r`   r‹   c                 óÔ   — t          j        d| ¬¦  «        }t          j        d| ¬¦  «        }t          |¦  «        }|j        t          |¦  «        j        k    sJ ‚|j        dk    sJ ‚d S ©Nr�   rŽ   rR   )rT   r“   rF   r   r\   r@   )r‹   r}   rK  Úoas       r^   Útest_orth_emptyr£  �  si   € å
Œ�˜rÐ"Ñ"Ô"€AÝ	Œ�˜Ð	Ñ	Ô	€Bå	ˆa‰Œ€BØŒ8•t˜B‘x”x”~Ò%Ð%Ð%Ð%ØŒ8�vÒÐÐÐÐÐr`   c                   óR  — e Zd Zd„ Zej                             deee	j
        ee	j        g¦  «        d„ ¦   «         Zej                             dddg¦  «        ej                             dddg¦  «        ej                             dd	d
g¦  «        d„ ¦   «         ¦   «         ¦   «         ZdS )ÚTestNullSpacec                 óð  — t           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|¬¦  «         |                     d|dz  z   |¦  «        }t          |¦  «        }	t          |	j        ||dz
  |dz  z
  f¦  «         t          ||	z  d|¬¦  «         |d	k    rêt           j                             d¦  «        }|                     |d	¦  «        |                     d	|¦  «        z  }|d
|                     |d¦  «        z  |                     d|¦  «        z  z   }|                     |¦  «        }t          |d¬¦  «        }	t          |	j        ||d	z
  f¦  «         t          |d¬¦  «        }	t          |	j        ||dz
  f¦  «         �Œd S )Nrb   rœ  rR   rŽ   rû  r   r-  rŒ  rv   r�  rŽ  r�  r‘  rw   )rT   rU   r  r;   r&  r<   rF  r�  rž  rÆ   rý  rþ  r%   r   r@   r   rX   ÚrandnrV   rY   )
r|   rj   r„  r0  r‹   rZ   r”  rþ  rÃ   r•  s
             r^   Útest_null_spacezTestNullSpace.test_null_spaceš  sA  € ÝŒi×#Ò# AÑ&Ô&ˆå”*�bœj­"¬,½¼ÐFˆØ"Ð"Ð"ˆåÔ& v¨uÑ5Ô5ð 	2ñ 	2‰EˆB�Ý”˜˜A˜ bÐ)Ñ)Ô)ˆAå”(˜2‘,”,Ô"ˆCØ˜‘*ˆCå˜1‘”ˆAÝ˜œ 1 a¨¡c (Ñ+Ô+Ð+Ý˜A ™E 1¨3Ð/Ñ/Ô/Ð/å˜1œ3‘”ˆAÝ˜œ &Ñ)Ô)Ð)Ý˜AœC !™G Q¨SÐ1Ñ1Ô1Ð1à—	’	˜!˜a ™d™( AÑ&Ô&ˆAÝ˜1‘”ˆAÝ˜œ 1 a¨!¡e¨a°©d¡lÐ"3Ñ4Ô4Ð4Ý˜A ™E 1¨3Ð/Ñ/Ô/Ð/à�1ŠuˆuÝ”i×+Ò+¨AÑ.Ô.�Ø—H’H˜Q ‘N”N S§X¢X¨a°¡^¤^Ñ3�Ø˜˜sŸxšx¨¨1™~œ~Ñ-°·²¸¸A±´Ñ>Ñ>�Ø—H’H˜R‘L”L�å˜q¨Ð-Ñ-Ô-�Ý˜QœW q¨!¨a©% jÑ1Ô1Ð1å˜q¨Ð-Ñ-Ô-�Ý˜QœW q¨!¨a©% jÑ1Ô1Ð1ùð;	2ð 	2r`   r‹   c                 óÔ   — t          j        d|¬¦  «        }t          j        d|¬¦  «        }t          |¦  «        }|j        dk    sJ ‚|j        t          |¦  «        j        k    sJ ‚d S r¡  )rT   r“   rF   r%   r@   r\   )r|   r‹   r}   rK  Únsas        r^   Útest_null_space_emptyz#TestNullSpace.test_null_space_empty¿  sj   € åŒH�V 2Ð&Ñ&Ô&ˆÝŒV�A˜RÐ Ñ Ô ˆÝ˜‰mŒmˆàŒy˜FÒ"Ð"Ð"Ð"ØŒy�J r™NœNÔ0Ò0Ð0Ð0Ð0Ð0Ð0r`   rJ  TFr‰   r½  r  rR  c                 ó4  — t           j                             d¦  «        }d}|                     d|dz  z   |f¦  «        }t	          |                     ¦   «         |||¬¦  «        }t          ||z  dt          j        |j        ¦  «        j	        dz  ¬¦  «         d S )	Nl   š'–YþœeN rO  rb   rR   )rJ  r‰   r½  r   r  r-  )
rT   rU   r>  Ústandard_normalr%   r‚   r   rý  r\   rþ  )r|   rJ  r‰   r½  rj   rZ   r”  r•  s           r^   Útest_null_space_optionsz%TestNullSpace.test_null_space_optionsÈ  s–   € õ Œi×#Ò#Ð$;Ñ<Ô<ˆØˆØ×Ò  Q¨¡T¡¨1 Ñ.Ô.ˆÝ�q—v’v‘x”x¨[À|Ø%2ð4ñ 4ô 4ˆå˜˜A™˜q¥r¤x°´Ñ'8Ô'8Ô'<¸SÑ'@ÐAÑAÔAÐAÐAÐAr`   N)r•   r–   r—   r¨  r˜   r™   rš   re   r›   rT   r;   rœ   r<   r«  r®  r�   r`   r^   r¥  r¥  ™  sÝ   € € € € € ð#2ð #2ð #2ðJ „[×Ò˜T C¨°´
¸GÀRÄ\Ð#RÑSÔSð1ð 1ñ TÔSð1ð „[×Ò˜]¨T°5¨MÑ:Ô:Ø„[×Ò˜^¨d°E¨]Ñ;Ô;Ø„[×Ò˜_¨w¸Ð.@ÑAÔAðBð Bñ BÔAñ <Ô;ñ ;Ô:ðBð Bð Br`   r¥  c            	      ó¸	  — 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¦  «        ¦  «         d S ) Nrw  rt   r'  r,  r-  rb   )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™"Ó	´÷?rR   r   rf  rg  g¦®LÔ0âç?g•Ä¹»°-ß?gyßôv†Õ?r£   rq  )r   rb   r   )r   r   rb   r  rT  r  ru  r�   r�   r’   r¥   r_  )r"   r›   r   r!   rT   Úpir9   r@   r4   r  r  r“   )ÚHr]   rÌ   rÓ  r  r}   rº   s          r^   Útest_subspace_anglesr²  Ô  s7  € Ý�•EÑÔ€AØ	ˆ!ˆ!ˆ!ˆRˆaˆRˆ%Œ€AØ	ˆ!ˆ!ˆ!ˆQˆRˆRˆ%Œ€AÝ•O A qÑ)Ô)­B¬E°B©J¨<¸!Ñ+;À%ÐHÑHÔHÐHÝ•O A qÑ)Ô)­B¬E°B©J¨<¸!Ñ+;À%ÐHÑHÔHÐHØ�ˆVð $ð $ˆÝ�¨¨1Ñ-Ô-­r¬x¸¼À¼
Ñ/CÔ/CØ"ð	$ñ 	$ô 	$ð 	$ð 	$õ 	ŒØ	UÐ	UÐ	UØ	WÐ	WÐ	WØ	XÐ	XÐ	XØ	VÐ	VÐ	Vð	Xñ	Yô 	Y€Að
 !€HÝ•O A a a a¨¨!¨ e¤H¨a°°°°1°2°2°¬hÑ7Ô7¸Ô:¸HØð ñ  ô  ð  å•O A a a a¨¨¨ e¤H¨a°°°°2°A°2°¬hÑ7Ô7¸Ô:¸HØð ñ  ô  ð  à €HÝ•O A a a a¨¨!¨ e¤H¨a°°°°A°3°¬iÑ8Ô8¸(ÈÐOÑOÔOÐOÝ•O A a a a¨!¨ f¤I¨q°°°°B°Q°B°¬xÑ8Ô8¸(ÈÐOÑOÔOÐOØ €HÝ•O A a a a¨¨!¨ e¤H¨a°°°°A°3°¬iÑ8Ô8¸(ÈÐOÑOÔOÐOÝ•O A a a a¨!¨ f¤I¨q°°°°B°Q°B°¬xÑ8Ô8¸(ÈÐOÑOÔOÐOØ €HÝ•O A a a a¨¨!¨ e¤H¨a°°°°1°2°2°¬hÑ7Ô7¸(ÀA¸Øð ñ  ô  ð  õ •*�o¨q°¬t°QÑ7Ô7Ð7Ý•*�o¨q°!°A´$Ñ7Ô7Ð7Ý•*�o¨q°°"°¬v°qÑ9Ô9Ð9õ 	Œ�)�)�)Ø�)�)Ø�)�)Ø�)�)Ø�)�)ð	ñ 	ô 	€Aõ
 	Œ�)�)�)Ø�)�)Ø�)�)Ø�)�)Ø�)�)ð	ñ 	ô 	€Aõ
 Œ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°D©>¬>Ñ:Ô:Ð:Ý
Œ�ÑÔ€AÝ
Œ�ÑÔ€AÝ•O A qÑ)Ô)­2¬8°D©>¬>Ñ:Ô:Ð:Ý
Œ�ÑÔ€AÝ
Œ�ÑÔ€AÝ•O A qÑ)Ô)­2¬8°D©>¬>Ñ:Ô:Ð:Ð:Ð:r`   c                   ób   — 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S )ÚTestCDF2RDFc                 ó.   — t          j        d||¦  «        S )Nz...ij,...jk->...ik)rT   Úeinsum)r|   r}   rº   s      r^   ÚmatmulzTestCDF2RDF.matmul  s   € ÝŒyÐ-¨q°!Ñ4Ô4Ð4r`   c                 óv   — t          |                      ||¦  «        |                      ||¦  «        ¦  «         d S rJ  )r   r·  )r|   r~   rm   rÓ  s       r^   Úassert_eig_validzTestCDF2RDF.assert_eig_valid  s@   € Ý!Ø�KŠK˜˜1ÑÔØ�KŠK˜˜1ÑÔñ	
ô 	
ð 	
ð 	
ð 	
r`   c                 óÒ   — t          j        d¦  «        }t          j        d¦  «        t          j        d¦  «        }}t          ||¦  «        \  }}|                      |||¦  «         d S )Nr�   r   )rT   r“   r&   r¹  ©r|   r”  r~   rm   Úwrr´   s         r^   Útest_single_array0x0realz$TestCDF2RDF.test_single_array0x0real$  s[   € åŒH�VÑÔˆÝŒx˜‰{Œ{�BœH VÑ,Ô,ˆ1ˆÝ˜˜A‘”‰ˆˆBØ×Ò˜b " aÑ(Ô(Ð(Ð(Ð(r`   c                 óÒ   — t          j        ddgddgg¦  «        }t           j                             |¦  «        \  }}t	          ||¦  «        \  }}|                      |||¦  «         d S )Nrb   rR   rt   r£   ©rT   r4   r7   r
   r&   r¹  r»  s         r^   Útest_single_array2x2_realz%TestCDF2RDF.test_single_array2x2_real+  sd   € ÝŒH�q˜!�f˜q "˜gÐ&Ñ'Ô'ˆÝŒy�}Š}˜QÑÔ‰ˆˆ1Ý˜˜A‘”‰ˆˆBØ×Ò˜b " aÑ(Ô(Ð(Ð(Ð(r`   c                 óÒ   — t          j        ddgddgg¦  «        }t           j                             |¦  «        \  }}t	          ||¦  «        \  }}|                      |||¦  «         d S )Nrb   rR   r°   r¿  r»  s         r^   Útest_single_array2x2_complexz(TestCDF2RDF.test_single_array2x2_complex1  sd   € ÝŒH�q˜!�f˜r 1˜gÐ&Ñ'Ô'ˆÝŒy�}Š}˜QÑÔ‰ˆˆ1Ý˜˜A‘”‰ˆˆBØ×Ò˜b " aÑ(Ô(Ð(Ð(Ð(r`   c                 óØ   — t          j        g d¢g d¢g d¢g¦  «        }t           j                             |¦  «        \  }}t	          ||¦  «        \  }}|                      |||¦  «         d S )Nrs   ru   r¿  r»  s         r^   Útest_single_array3x3_realz%TestCDF2RDF.test_single_array3x3_real7  sj   € ÝŒH�i�i�i   ¨I¨I¨IÐ6Ñ7Ô7ˆÝŒy�}Š}˜QÑÔ‰ˆˆ1Ý˜˜A‘”‰ˆˆBØ×Ò˜b " aÑ(Ô(Ð(Ð(Ð(r`   c                 óØ   — t          j        g d¢g d¢g d¢g¦  «        }t           j                             |¦  «        \  }}t	          ||¦  «        \  }}|                      |||¦  «         d S ©Nrs   )r   r=  rv   )r   rË  r=  r¿  r»  s         r^   Útest_single_array3x3_complexz(TestCDF2RDF.test_single_array3x3_complex=  sj   € ÝŒH�i�i�i   ¨J¨J¨JÐ7Ñ8Ô8ˆÝŒy�}Š}˜QÑÔ‰ˆˆ1Ý˜˜A‘”‰ˆˆBØ×Ò˜b " aÑ(Ô(Ð(Ð(Ð(r`   c                 ó2  — t           j                             d¦  «        }t          dd¦  «        D ]f}|                     d||f¦  «        }t           j                             |¦  «        \  }}t          ||¦  «        \  }}|                      |||¦  «         Œgd S )Nr  rb   rì  r  ©rT   rU   r>  r©   r7   r
   r&   r¹  ©r|   rj   r  r”  r~   rm   r¼  r´   s           r^   Útest_random_1d_stacked_arraysz)TestCDF2RDF.test_random_1d_stacked_arraysC  s’   € ÝŒi×#Ò# DÑ)Ô)ˆå�q˜!‘”ð 	-ð 	-ˆAØ—
’
˜C  A˜;Ñ'Ô'ˆAÝ”9—=’= Ñ#Ô#‰DˆAˆqÝ˜Q ‘]”]‰FˆB�Ø×!Ò! " b¨!Ñ,Ô,Ð,Ð,ð		-ð 	-r`   c                 ó4  — t           j                             d¦  «        }t          dd¦  «        D ]g}|                     dd||f¦  «        }t           j                             |¦  «        \  }}t          ||¦  «        \  }}|                      |||¦  «         Œhd S )Nr  rb   rì  rO  rÉ  rÊ  s           r^   Útest_random_2d_stacked_arraysz)TestCDF2RDF.test_random_2d_stacked_arraysL  s”   € ÝŒi×#Ò# DÑ)Ô)ˆå�q˜!‘”ð 	-ð 	-ˆAØ—
’
˜B  A q˜>Ñ*Ô*ˆAÝ”9—=’= Ñ#Ô#‰DˆAˆqÝ˜Q ‘]”]‰FˆB�Ø×!Ò! " b¨!Ñ,Ô,Ð,Ð,ð		-ð 	-r`   c                 óŽ   — t          j        d¦  «        t          j        d¦  «        }}t          t          t
          ||¦  «         d S )Nr�   )rR   )rT   r“   r4   r  r  r&   ©r|   r~   rm   s      r^   Útest_low_dimensionality_errorz)TestCDF2RDF.test_low_dimensionality_errorU  s5   € ÝŒx˜‰|Œ|�RœX d™^œ^ˆ1ˆÝ•j¥'¨1¨aÑ0Ô0Ð0Ð0Ð0r`   c                 ó¶   — t          j        d¦  «        t          j        d¦  «                             dd¦  «        }}t          t          t
          ||¦  «         d S )Nrt   rw   rR   ©rT   r:   r  r  r  r&   rÏ  s      r^   r  z!TestCDF2RDF.test_not_square_errorY  sE   € åŒy˜‰|Œ|�RœY q™\œ\×1Ò1°!°QÑ7Ô7ˆ1ˆÝ•j¥'¨1¨aÑ0Ô0Ð0Ð0Ð0r`   c                 ó¼   — t          j        g d¢g d¢g d¢g¦  «        }t           j                             |¦  «        \  }}t	          t
          t          ||¦  «         d S rÆ  ©rT   r4   r7   r
   r  r  r&   ©r|   r”  r~   rm   s       r^   Útest_swapped_v_w_errorz"TestCDF2RDF.test_swapped_v_w_error^  sU   € åŒH�i�i�i   ¨J¨J¨JÐ7Ñ8Ô8ˆÝŒy�}Š}˜QÑÔ‰ˆˆ1Ý•j¥'¨1¨aÑ0Ô0Ð0Ð0Ð0r`   c                 ó¶   — t          j        d¦  «        t          j        d¦  «                             dd¦  «        }}t          t          t
          ||¦  «         d S )Nrt   rö   r=  rÒ  rÏ  s      r^   Útest_non_associated_errorz%TestCDF2RDF.test_non_associated_errord  sE   € åŒy˜‰|Œ|�RœY r™]œ]×2Ò2°1°aÑ8Ô8ˆ1ˆÝ•j¥'¨1¨aÑ0Ô0Ð0Ð0Ð0r`   c                 óˆ  — t          j        g d¢g d¢g d¢g¦  «        }t           j                             |¦  «        \  }}t	          t
          t          ||¦  «         t          j        g d¢g d¢g d¢gg d¢g d¢g d¢gg¦  «        }t           j                             |¦  «        \  }}t	          t
          t          ||¦  «         d S )Nrs   r…   )rR   rv   y      @      ð¿rÔ  rÕ  s       r^   Útest_not_conjugate_pairsz$TestCDF2RDF.test_not_conjugate_pairsi  sÆ   € åŒH�i�i�i   ¨L¨L¨LÐ9Ñ:Ô:ˆÝŒy�}Š}˜QÑÔ‰ˆˆ1Ý•j¥'¨1¨aÑ0Ô0Ð0õ ŒHØˆYˆY˜	˜	˜	 < < <Ð0ØˆYˆY˜	˜	˜	 < < <Ð0ð
ñ ô ˆõ Œy�}Š}˜QÑÔ‰ˆˆ1Ý•j¥'¨1¨aÑ0Ô0Ð0Ð0Ð0r`   N)r•   r–   r—   r·  r¹  r½  rÀ  rÂ  rÄ  rÇ  rË  rÍ  rÐ  r  rÖ  rØ  rÚ  r�   r`   r^   r´  r´    sæ   € € € € € ð5ð 5ð 5ð
ð 
ð 
ð)ð )ð )ð)ð )ð )ð)ð )ð )ð)ð )ð )ð)ð )ð )ð-ð -ð -ð-ð -ð -ð1ð 1ð 1ð1ð 1ð 1ð
1ð 1ð 1ð1ð 1ð 1ð
1ð 1ð 1ð 1ð 1r`   r´  )F)—r�  ÚplatformÚsysr/  ÚnumpyrT   Ú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(   r)   r*   r+   r,   r-   r.   r/   r0   Úscipy.linalg._miscr1   Úscipy.linalg._decomp_qzr2   Úscipy.statsr3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   Úscipy.linalg._testutilsrG   Úscipy.sparse._sputilsrH   Úscipy._lib._testutilsrI   Úscipy.linalg.blasrJ   Úscipy.conftestrK   Úscipy.__config__rL   ÚmachineÚIS_WASMr›   r_   r&  ÚREAL_DTYPESrF  rS   rè  ro   rq   rŸ   rH  rµ  rÖ  r  rQ  r™   rN  Úxfail_on_32bitÚparallel_threads_limitr+  rU  r[  r]  ro  rs  r.  rH  r~  Úblas_providerÚblas_versionr¤  rÈ  r  r-  rO  rR  rT  rX  Úxfailr_  ra  r–  rO  r\   ÚintprV  rš  rŸ  rš   re   rœ   r£  r¥  r²  r´  r�   r`   r^   ú<module>ró     s›
  ðØ Ð Ð Ð Ø €€€Ø 
€
€
€
Ø €€€à Ð Ð Ð ð5ð 5ð 5ð 5ð 5ð 5ð 5ð 5ð 5ð 5ð 5ð 5ð 5ð 5ð 5ð 5ð €€€Ø *Ð *Ð *Ð *Ð *Ð *ðNð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð Nð NðAð Að Að Að Að Að Að Að Að Að Að Að Að Að Að Að Að Að Að Að Að Að $Ð #Ð #Ð #Ð #Ð #Ø 4Ð 4Ð 4Ð 4Ð 4Ð 4Ø #Ð #Ð #Ð #Ð #Ð #ð;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð ;ð 8Ð 7Ð 7Ð 7Ð 7Ð 7Ø (Ð (Ð (Ð (Ð (Ð (à 3Ð 3Ð 3Ð 3Ð 3Ð 3Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø .Ð .Ð .Ð .Ð .Ð .Ø #Ð #Ð #Ð #Ð #Ð #àŒ<˜<Ò'ÐUÐ+;¨8Ô+;Ñ+=Ô+=ÐAUÐ+U€ð (-°Eð ð ð ð ð  Œz˜2œ:Ð&€Ø”, ¤Ð.€Ø	�~Ñ	%€ð
ð ð ð4'=ð '=ð '=ð '=ð '=ñ '=ô '=ð '=ðTo4ð o4ð o4ð o4ð o4ñ o4ô o4ð o4ðd	f$ð f$ð f$ð f$ð f$ñ f$ô f$ð f$ðP	~!ð ~!ð ~!ð ~!ð ~!ñ ~!ô ~!ð ~!ðBH$ð H$ð H$ð H$ð H$ñ H$ô H$ð H$ðTM#ð M#ð M#ð M#ð M#ñ M#ô M#ð M#ð^ð ð ð ð �Mñ ô ð ð „×Ò�GÐ$;ÐÑ<Ô<Ø„×ÒÐAÑBÔBØ„×#Ò# AÑ&Ô&Ø„×Ò�rÑÔðð ñ Ôñ 'Ô&ñ CÔBñ =Ô<ðð#ð #ð #ð;ð ;ð ;ð ;ð ;ñ ;ô ;ð ;ð|Eð Eð Eð Eð Eñ Eô Eð EðE
.ð E
.ð E
.ð E
.ð E
.ñ E
.ô E
.ð E
.ðPN-ð N-ð N-ð N-ð N-ñ N-ô N-ð N-ðb}4ð }4ð }4ð }4ð }4ñ }4ô }4ð }4ð@Y#ð Y#ð Y#ð Y#ð Y#ñ Y#ô Y#ð Y#ðx  $Ð #€�ØÐ+Ô,¨VÔ4°VÔ<€ØÐ*Ô+¨FÔ3°IÔ>€ðp'ð p'ð p'ð p'ð p'ñ p'ô p'ð p'ðfG5ð G5ð G5ð G5ð G5ñ G5ô G5ð G5ðT>ð >ð >ð >ð >ñ >ô >ð >ð<-ð -ð -ð -ð -ñ -ô -ð -ð6
ð 
ð 
ð „×ÒÐ$�HÔ$Ñ&Ô&¨)Ò3Ø/ð ñ 1ô 1ð
ð 
ñ1ô 1ð
ðð ð ð#ð #ð #ð$ „×Ò�uØLð ñ Nô Nð4ð 4ñNô Nð4ð>5/ð 5/ð 5/ð 5/ð 5/ñ 5/ô 5/ð 5/ðp*ð *ð *ð *ð6 „ÔØ„×Ò�H�B”H˜RœWÑ%Ô%Ô.°Ò2Ø?ð ñ Aô Aðð ñAô Añ Ôððð ð ð „×Ò˜  U¨B¬J¸ÀÄÐNÑOÔOðð ñ PÔOðð8Bð 8Bð 8Bð 8Bð 8Bñ 8Bô 8Bð 8BðvB;ð B;ð B;ðJ\1ð \1ð \1ð \1ð \1ñ \1ô \1ð \1ð \1ð \1r`   