§
    fŠtjÛ’  ã                   ó’  — d dl Z d dlZd dlZd dlmZmZmZm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 d dlZd dlmZmZmZmZ 	 d dlmZ n# e$ r dZY nw xY wej        ej         gZ!ej"        ej#        gZ$e!e$z   Z%d„ Z&d„ Z'd	„ Z( G d
„ d¦  «        Z) G d„ d¦  «        Z* G d„ d¦  «        Z+ G d„ d¦  «        Z, G d„ d¦  «        Z- G d„ d¦  «        Z. G d„ d¦  «        Z/ G d„ d¦  «        Z0 G d„ d¦  «        Z1ej2         3                    de%¦  «        d„ ¦   «         Z4ej2         5                    dd¬ ¦  «        d!„ ¦   «         Z6d"„ Z7dS )#é    N)Úassert_equalÚassert_almost_equalÚassert_array_almost_equalÚassert_allclose)Úraises)
ÚarangeÚtriuÚtrilÚzerosÚtril_indicesÚonesÚdiagÚappendÚeyeÚnonzero)Ú_fblasÚget_blas_funcsÚtoeplitzÚsolve)Ú_cblasc            	      ó~  — t          dt          j        dt          j        d¬¦  «        t          j        dt          j        d¬¦  «        f¦  «        \  } }}t          | j        d¦  «         t          |j        d¦  «         t          �*t          | j        d¦  «         t          |j        d¦  «         t          d¦  «        } t          | j        d	¦  «         t          d
t          j        ¬¦  «        } t          | j        d¦  «         t          d
d¬¦  «        } t          | j        d¦  «         t          d
t          j	        ¬¦  «        } t          | j        d¦  «         t          dt          j        dt          j
        ¬¦  «        t          j        dt          j        ¬¦  «        f¦  «        } t          | j        d¦  «         d S )N)Úaxpyr   r   ©é   r   ÚF)ÚdtypeÚorderÚCÚzÚcblasÚrotgÚdÚgemm©r   Úcr   )r   ÚnpÚemptyÚ	complex64Ú
complex128r   Útypecoder    Úmodule_nameÚclongdoubleÚfloat64)Úf1Úf2Úf3s      úZ/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/scipy/linalg/tests/test_blas.pyÚtest_get_blas_funcsr2      sŒ  € õ  Ø Ý	Œ�&¥¤°CÐ	8Ñ	8Ô	8Ý	Œ�&¥¤°SÐ	9Ñ	9Ô	9ð	;ñ
ô 
�J€BˆˆBõ �”˜cÑ"Ô"Ð"Ý�”˜cÑ"Ô"Ð"ÝÐÝ�R”^ WÑ-Ô-Ð-Ý�R”^ WÑ-Ô-Ð-õ 
˜Ñ	Ô	€BÝ�”˜cÑ"Ô"Ð"õ 
˜¥b¤lÐ	3Ñ	3Ô	3€BÝ�”˜cÑ"Ô"Ð"Ý	˜ cÐ	*Ñ	*Ô	*€BÝ�”˜cÑ"Ô"Ð"õ 
˜¥b¤nÐ	5Ñ	5Ô	5€BÝ�”˜cÑ"Ô"Ð"õ 
˜Ýœ &µ´
Ð;Ñ;Ô;Ýœ &µ´Ð=Ñ=Ô=ð?ñ
ô 
€Bõ �”˜cÑ"Ô"Ð"Ð"Ð"ó    c                  óÌ   — t          dt          j        ¬¦  «        \  } }| j        dk    sJ ‚|j        dk    sJ ‚t          dt          j        ¬¦  «        \  } }}| |u sJ ‚| |u sJ ‚d S )N)Únrm2Údotr$   r%   )r6   ÚdotcÚdotu)r   r&   r(   r*   r-   )ÚfÚgÚhs      r1   Útest_get_blas_funcs_aliasr<   C   sy   € å˜/µ´Ð>Ñ>Ô>�D€A€qØŒ:˜ÒÐÐÐØŒ:˜ÒÐÐÐåÐ4½B¼JÐGÑGÔG�G€A€qˆ!Ø�ˆ6ˆ6ˆ6ˆ6Ø�ˆ6ˆ6ˆ6ˆ6ˆ6ˆ6r3   c           	      óž  — | € t           j                             d¬¦  «        S g }|D ]‡}d|v rt          j        }n4d|v rt          j        }n#d|v rt          j        }nd|v sJ ‚t          j        }t          | ||z   ¦  «        }| 	                    t          j
        ||||z   ¬¦  «        ¦  «         Œˆt           j                             d|¦  «        S )	Nzcblas not available)Úreasonr   r%   r"   Ús)Úidzf,dtype)ÚpytestÚmarkÚskipr&   r)   r(   r-   Úfloat32Úgetattrr   ÚparamÚparametrize)ÚmodÚ	func_nameÚprefixesÚparamsÚprefixr   r9   s          r1   Úparametrize_blasrM   N   sØ   € Ø
€{ÝŒ{×ÒÐ'<ÐÑ=Ô=Ð=Ø€FØð Eð EˆØ�&ˆ=ˆ=Ý”MˆEˆEØ�Fˆ]ˆ]Ý”LˆEˆEØ�Fˆ]ˆ]Ý”JˆEˆEà˜&�=�=�=�=Ý”JˆEå�C˜ )Ñ+Ñ,Ô,ˆØ�Š•f”l 1 e°¸Ñ0BÐCÑCÔCÑDÔDÐDÐDåŒ;×"Ò" 9¨fÑ5Ô5Ð5r3   c                   ó:   — e Zd Z eedd¦  «        d„ ¦   «         ZdS )ÚTestCBLAS1Simpler   Úsdczc                 ó¤   — t           |g d¢g d¢d¬¦  «        g d¢¦  «         |t          v r$t           |g d¢g d¢d¬¦  «        g d¢¦  «         d S d S ©N©é   r   é   )r   éÿÿÿÿrU   é   ©Úa)é   é	   é   )rT   ù               @rU   )rZ   y      ð¿      $@r\   ©r   ÚCOMPLEX_DTYPES©Úselfr9   r   s      r1   Ú	test_axpyzTestCBLAS1Simple.test_axpyd   ó‡   € å! ! ! I I I¨z¨z¨z¸QÐ"?Ñ"?Ô"?Ø", * *ñ	.ô 	.ð 	.à•NÐ"Ð"Ý% a a¨
¨
¨
°J°J°JÀ!Ð&DÑ&DÔ&DØ&4 n nñ6ô 6ð 6ð 6ð 6ð #Ð"r3   N)Ú__name__Ú
__module__Ú__qualname__rM   r    rb   © r3   r1   rO   rO   c   s=   € € € € € ØÐ�e˜V VÑ,Ô,ð6ð 6ñ -Ô,ð6ð 6ð 6r3   rO   c                   óÖ  — e Zd Z eedd¦  «        d„ ¦   «         Z eedd¦  «        d„ ¦   «         Z eedg d¢¦  «        d„ ¦   «         Z eed	d
¦  «        d„ ¦   «         Z eedd¦  «        d„ ¦   «         Z	 eedd¦  «        d„ ¦   «         Z
 eedg d¢¦  «        d„ ¦   «         Z eedg d¢¦  «        d„ ¦   «         Z eedd¦  «        d„ ¦   «         Z eedg d¢¦  «        d„ ¦   «         ZdS )ÚTestFBLAS1Simpler   rP   c                 ó¤   — t           |g d¢g d¢d¬¦  «        g d¢¦  «         |t          v r$t           |g d¢g d¢d¬¦  «        g d¢¦  «         d S d S rR   r^   r`   s      r1   rb   zTestFBLAS1Simple.test_axpyo   rc   r3   Úcopyc                 ó¤   — t           |g d¢dgdz  ¦  «        g d¢¦  «         |t          v r$t           |g d¢dgdz  ¦  «        g d¢¦  «         d S d S )N)rU   é   rW   é   rU   )rU   ù              @y      @      @r^   r`   s      r1   Ú	test_copyzTestFBLAS1Simple.test_copyw   so   € å! ! ! I I I°¨s°1©uÑ"5Ô"5°y°y°yÑAÔAÐAØ•NÐ"Ð"Ý% a a¨¨¨¸°s¸1±uÑ&=Ô&=¸}¸}¸}ÑMÔMÐMÐMÐMð #Ð"r3   Úasum)r?   r"   ÚscÚdzc                 óˆ   — t           |g d¢¦  «        d¦  «         |t          v rt           |g d¢¦  «        d¦  «         d S d S )N©rU   éüÿÿÿrW   é   ©ù              @rv   ù      @      Àé   )r   r_   r`   s      r1   Ú	test_asumzTestFBLAS1Simple.test_asum}   sU   € å˜A˜A˜j˜j˜j™MœM¨2Ñ.Ô.Ð.Ø•NÐ"Ð"Ý   . . .Ñ 1Ô 1°2Ñ6Ô6Ð6Ð6Ð6ð #Ð"r3   r6   Úsdc                 óB   — t           |g d¢g d¢¦  «        d¦  «         d S )Nru   )r   rW   rT   i÷ÿÿÿ©r   r`   s      r1   Útest_dotzTestFBLAS1Simple.test_dotƒ   s,   € å˜A˜A˜j˜j˜j¨)¨)¨)Ñ4Ô4°bÑ9Ô9Ð9Ð9Ð9r3   r8   Úczc                 óB   — t           |g d¢g d¢¦  «        d¦  «         d S )Nrx   ©r   rU   rT   y      "À       @r   r`   s      r1   Ú	test_dotuzTestFBLAS1Simple.test_dotu‡   s,   € å˜A˜A˜n˜n˜n¨i¨i¨iÑ8Ô8¸%Ñ@Ô@Ð@Ð@Ð@r3   r7   c                 óB   — t           |g d¢g d¢¦  «        d¦  «         d S )Nrx   ©r   ry   rT   y      @      ,Àr   r`   s      r1   Ú	test_dotczTestFBLAS1Simple.test_dotc‹   s,   € å˜A˜A˜n˜n˜n¨j¨j¨jÑ9Ô9¸5ÑAÔAÐAÐAÐAr3   r5   c                 óÐ   — t           |g d¢¦  «        t          j        d¦  «        ¦  «         |t          v r/t           |g d¢¦  «        t          j        d¦  «        ¦  «         d S d S )Nru   é2   rx   )r   ÚmathÚsqrtr_   r`   s      r1   Ú	test_nrm2zTestFBLAS1Simple.test_nrm2�   se   € å˜A˜A˜j˜j˜j™MœM­4¬9°R©=¬=Ñ9Ô9Ð9Ø•NÐ"Ð"Ý   . . .Ñ 1Ô 1µ4´9¸R±=´=ÑAÔAÐAÐAÐAð #Ð"r3   Úscal)r?   r"   ÚcsÚzdc                 ó”   — t           |dg d¢¦  «        g d¢¦  «         |t          v r t           |dg d¢¦  «        g d¢¦  «         d S d S )Nr   ru   )é   iøÿÿÿé
   rU   rx   )y              "@iôÿÿÿy      "@      (Àr^   r`   s      r1   Ú	test_scalzTestFBLAS1Simple.test_scal•   sf   € å! ! ! A z z zÑ"2Ô"2°K°K°KÑ@Ô@Ð@Ø•NÐ"Ð"Ý% a a¨¨>¨>¨>Ñ&:Ô&:Ð<LÐ<LÐ<LÑMÔMÐMÐMÐMð #Ð"r3   Úswapc                 óø   — g d¢g d¢}} |||¦  «        \  }}t          ||¦  «         t          ||¦  «         |t          v r9g d¢g d¢}} |||¦  «        \  }}t          ||¦  «         t          ||¦  «         d S d S )Nrƒ   )éþÿÿÿrU   rZ   r†   )r–   rU   y      @      Àr^   )ra   r9   r   ÚxÚyÚx1Úy1s          r1   Ú	test_swapzTestFBLAS1Simple.test_swap›   s£   € àˆyˆy˜*˜*˜*ˆ1ˆØ��1�a‘”‰ˆˆBÝ! " aÑ(Ô(Ð(Ý! " aÑ(Ô(Ð(à•NÐ"Ð"Ø�:�:˜}˜}˜}ˆqˆAØ�Q�q˜!‘W”W‰FˆB�Ý% b¨!Ñ,Ô,Ð,Ý% b¨!Ñ,Ô,Ð,Ð,Ð,ð	 #Ð"r3   Úamax)Úisr@   ÚicÚizc                 óˆ   — t           |g d¢¦  «        d¦  «         |t          v rt           |g d¢¦  «        d¦  «         d S d S )N)r–   rm   rU   rT   )éûÿÿÿy      @      @r‘   )r   r_   r`   s      r1   Ú	test_amaxzTestFBLAS1Simple.test_amax¨   sU   € å�Q�Q�z�z�z‘]”] AÑ&Ô&Ð&Ø•NÐ"Ð"Ý˜˜˜=˜=˜=Ñ)Ô)¨1Ñ-Ô-Ð-Ð-Ð-ð #Ð"r3   N)rd   re   rf   rM   Úfblasrb   rp   r|   r€   r„   r‡   rŒ   r“   r›   r¢   rg   r3   r1   ri   ri   m   së  € € € € € àÐ�e˜V VÑ,Ô,ð6ð 6ñ -Ô,ð6ð Ð�e˜V VÑ,Ô,ðNð Nñ -Ô,ðNð
 Ð�e˜VÐ%;Ð%;Ð%;Ñ<Ô<ð7ð 7ñ =Ô<ð7ð
 Ð�e˜U DÑ)Ô)ð:ð :ñ *Ô)ð:ð Ð�e˜V TÑ*Ô*ðAð Añ +Ô*ðAð Ð�e˜V TÑ*Ô*ðBð Bñ +Ô*ðBð Ð�e˜VÐ%;Ð%;Ð%;Ñ<Ô<ðBð Bñ =Ô<ðBð
 Ð�e˜VÐ%;Ð%;Ð%;Ñ<Ô<ðNð Nñ =Ô<ðNð
 Ð�e˜V VÑ,Ô,ð
-ð 
-ñ -Ô,ð
-ð Ð�e˜VÐ%=Ð%=Ð%=Ñ>Ô>ð.ð .ñ ?Ô>ð.ð .ð .r3   ri   c                   óò  — e Zd Z eedd¦  «        d„ ¦   «         Z eedd¦  «        d„ ¦   «         Z eedd¦  «        d	„ ¦   «         Z eed
d¦  «        d„ ¦   «         Z eedd¦  «        d„ ¦   «         Z	 eedd¦  «        d„ ¦   «         Z
 eedd¦  «        d„ ¦   «         Z eedd¦  «        d„ ¦   «         Zej                             de¦  «        d„ ¦   «         Zej                             de¦  «        d„ ¦   «         Zej                             dg d„ eez   D ¦   «         ¢d„ eD ¦   «         ¢¦  «        d„ ¦   «         Zej                             dg d„ eez   D ¦   «         ¢d„ eD ¦   «         ¢¦  «        d„ ¦   «         Zej                             de¦  «        d„ ¦   «         Zej                             de¦  «        d„ ¦   «         Zej                             de¦  «        d „ ¦   «         Zej                             de¦  «        d!„ ¦   «         Zej                             de¦  «        d"„ ¦   «         Zej                             de¦  «        d#„ ¦   «         Zej                             de¦  «        d$„ ¦   «         Zd%S )&ÚTestFBLAS2SimpleÚgemvrP   c           	      ó   — t           |ddggdg¦  «        dg¦  «         t           |ddggdgddg¦  «        dg¦  «         |t          v rCt           |ddggdg¦  «        dg¦  «         t           |ddggdgdd	g¦  «        d
g¦  «         d S d S ©NrU   rv   iÜÿÿÿrW   iëÿÿÿry   rz   y      HÀ      BÀy              @y      HÀ      5Àr^   r`   s      r1   Ú	test_gemvzTestFBLAS2Simple.test_gemv²   sÊ   € å! ! ! A¨¨ u¨r¨dÑ"3Ô"3°c°UÑ;Ô;Ð;Ý! ! ! A¨¨ u¨r¨d°A¸°sÑ";Ô";¸c¸UÑCÔCÐCØ•NÐ"Ð"Ý% a a¨¨d¨V¨H°r°dÑ&;Ô&;¸g¸YÑGÔGÐGÝ% a a¨¨d¨V¨H°r°d¸AÀ¸tÑ&DÔ&DØ'. iñ1ô 1ð 1ð 1ð 1ð #Ð"r3   Úgerr}   c           
      óª  — t           |dddgddg¦  «        ddgddgg¦  «         t           |dg d¢ddg¦  «        ddgdd	gd
dgg¦  «         t           |dddgddgddgddgg¬¦  «        ddgddgg¦  «         |t          v rOt           |dddgddg¦  «        ddgddgg¦  «         t           |dg d¢ddg¦  «        ddgdd	gd
dgg¦  «         d S d S )NrT   r   rU   rm   r‘   rn   rS   rw   é   r\   é   rX   r[   ù              ð?ry   ro   ©r®   r]   ry   r^   r`   s      r1   Útest_gerzTestFBLAS2Simple.test_ger»   sj  € å! ! ! A¨¨1 v°°1¨vÑ"6Ô"6¸!¸Q¸À!ÀQÀÐ8HÑIÔIÐIÝ! ! ! A y y y°1°a°&Ñ"9Ô"9Ø$% q 6¨B°¨8°b¸"°XÐ">ñ	@ô 	@ð 	@å! ! ! A¨¨1 v°°1¨vØ&'¨ V¨a°¨VÐ$4ð#6ñ #6ô #6Ø9:¸A¸ÀÀBÀÐ7Hñ	Jô 	Jð 	Jà•NÐ"Ð"Ý% a a¨¨B°¨7°Q¸°FÑ&;Ô&;Ø(*¨B x°!°Q°Ð&8ñ:ô :ð :å% a a¨¨<¨<¨<¸"¸b¸Ñ&BÔ&BØ()¨1 v°°B¨x¸"¸b¸Ð&BñDô Dð Dð Dð Dð #Ð"r3   Úgerur�   c                 ó    — t           |dddgddg¦  «        ddgdd	gg¦  «         t           |d
g d¢ddg¦  «        dd	gddgddgg¦  «         d S )NrT   r®   r   rU   rm   ry   ro   r‘   rn   r–   r¯   rw   r¬   r\   r­   ©r   r`   s      r1   Ú	test_geruzTestFBLAS2Simple.test_geruÈ   s‹   € å! ! ! A¨¨A w°°A°Ñ"7Ô"7Ø$&¨ 8¨a°¨VÐ"4ñ	6ô 	6ð 	6å! ! ! B¨¨¨°r¸2°hÑ"?Ô"?Ø$% q 6¨B°¨8°b¸"°XÐ">ñ	@ô 	@ð 	@ð 	@ð 	@r3   Úgercc                 ó    — t           |dddgddg¦  «        ddgdd	gg¦  «         t           |dg d
¢ddg¦  «        dd	gddgddgg¦  «         d S )NrT   r®   r   rU   rm   ry   ro   r‘   rn   r¯   rw   r¬   r\   r­   r³   r`   s      r1   Ú	test_gerczTestFBLAS2Simple.test_gercÏ   s‹   € å! ! ! A¨¨A w°°A°Ñ"7Ô"7Ø$&¨ 8¨a°¨VÐ"4ñ	6ô 	6ð 	6å! ! ! A | | |°b¸"°XÑ">Ô">Ø$% q 6¨B°¨8°b¸"°XÐ">ñ	@ô 	@ð 	@ð 	@ð 	@r3   Úsyrc                 ó  — t          j        ddd¬¦  «        }t          j        |d d …t           j        f         |z  ¦  «        }t          j        |d d d…t           j        f         |d d d…         z  ¦  «        }t          j        dddd	¬
¦  «        }t          j        ddd¬¦  «                             d¦  «        }t          j        |d d …t           j        f         |z  ¦  «        }t          j        |d d d…t           j        f         |d d d…         z  ¦  «        }	t           j        t          j        d¦  «        |t          j        d¦  «        f                              ¦   «         }
t          j	        |¦  «        j
        }t           |d|¦  «        ||¬¦  «         t           |d|d¬¦  «        |j        |¬¦  «         t           |d|ddd¬¦  «        ||¬¦  «         t           |d|ddd¬¦  «        ||¬¦  «         |t          v ràt           |d|¦  «        ||¬¦  «         t           |d|d¬¦  «        |j        |¬¦  «         t           |d|
ddd¬¦  «        ||¬¦  «         t           |d|
ddd¬¦  «        |	|¬¦  «         t          j        d|d¦  «        } |d||d¬¦  «        }t          |||¬¦  «          |d||¬¦  «        }||usJ ‚t          |d|z  |¬¦  «         n`t          j        d|d¦  «        } |d||d¬¦  «        }t          |||¬¦  «          |d||¬¦  «        }||usJ ‚t          |d|z  |¬¦  «         t          t          |d|d¬¦  «         t          t          |d|d¬¦  «         t          t          |d|d¬¦  «         t          t          |d|d¬¦  «         t          t          |d|d¬¦  «         t          t          |d|d¬¦  «         t          t          |d|t          j        ddd¦  «        ¬¦  «         d S ) NrT   rW   r"   r$   rV   r   ç      !@é   F©Úendpointr[   ÚDrm   ç      ð?©ÚrtolT©Úlowerr   ©ÚincxÚoffxÚnr–   rU   éýÿÿÿ©rm   rm   r   ©rY   Úoverwrite_aç       @rX   ©rÅ   ©rÆ   ©rÇ   r   )r&   r   r	   ÚnewaxisÚlinspaceÚviewÚc_r   ÚravelÚfinfoÚepsr   ÚTr_   Úassert_raisesÚ	Exception)ra   r9   r   r—   ÚresxÚresx_reverser˜   r   ÚreszÚresz_reverseÚwrÁ   rY   Úbs                 r1   Útest_syrzTestFBLAS2Simple.test_syrÖ   sJ  € åŒI�a˜ #Ð&Ñ&Ô&ˆÝŒw�q˜˜˜�BœJ˜Ô'¨!Ñ+Ñ,Ô,ˆÝ”w˜q   2 ¥r¤zÐ!1Ô2°Q°t°t¸°t´WÑ<Ñ=Ô=ˆÝŒK˜˜3 ¨UÐ3Ñ3Ô3ˆÝŒI�a˜ #Ð&Ñ&Ô&×+Ò+¨CÑ0Ô0ˆÝŒw�q˜˜˜�BœJ˜Ô'¨!Ñ+Ñ,Ô,ˆÝ”w˜q   2 ¥r¤zÐ!1Ô2°Q°t°t¸°t´WÑ<Ñ=Ô=ˆÝŒE•"”(˜1‘+”+˜q¥"¤(¨1¡+¤+Ð-Ô.×4Ò4Ñ6Ô6ˆåŒx˜‰ŒÔ"ˆå˜˜˜#˜q™	œ	 4¨dÐ3Ñ3Ô3Ð3Ý˜˜˜#˜q¨Ð-Ñ-Ô-¨t¬v¸DÐAÑAÔAÐAÝ˜˜˜#˜q q¨q°AÐ6Ñ6Ô6¸À4ÐHÑHÔHÐHå˜˜˜#˜q r°°QÐ7Ñ7Ô7Ø$¨4ð	1ñ 	1ô 	1ð 	1ð •NÐ"Ð"Ý˜A˜A˜c 1™IœI t°$Ð7Ñ7Ô7Ð7Ý˜A˜A˜c 1¨DÐ1Ñ1Ô1°4´6ÀÐEÑEÔEÐEÝ˜A˜A˜c 1¨1°1¸Ð:Ñ:Ô:¸DÀtÐLÑLÔLÐLå˜A˜A˜c 1¨2°A¸Ð;Ñ;Ô;Ø(¨tð5ñ 5ô 5ð 5õ ”˜ ¨Ñ,Ô,ˆAØ��#�q˜A¨4Ð0Ñ0Ô0ˆAÝ˜A˜t¨$Ð/Ñ/Ô/Ð/Ø��#�q˜A�‘”ˆAØ˜A�:�:�:�:Ý˜A˜q ™v¨DÐ1Ñ1Ô1Ð1Ð1õ ”˜ ¨Ñ,Ô,ˆAØ��#�q˜A¨4Ð0Ñ0Ô0ˆAÝ˜A˜t¨$Ð/Ñ/Ô/Ð/Ø��#�q˜A�‘”ˆAØ˜A�:�:�:�:Ý˜A˜q ™v¨DÐ1Ñ1Ô1Ð1å•i  C¨°Ð3Ñ3Ô3Ð3Ý•i  C¨°Ð3Ñ3Ô3Ð3Ý•i  C¨°Ð4Ñ4Ô4Ð4Ý•i  C¨¨bÐ1Ñ1Ô1Ð1Ý•i  C¨¨aÐ0Ñ0Ô0Ð0Ý•i  C¨°!Ð4Ñ4Ô4Ð4Ý•i  C¨­b¬h°v¸sÀCÑ.HÔ.HÐIÑIÔIÐIÐIÐIr3   Úherc                 óÀ  — t          j        ddd¬¦  «        }t          j        ddd¬¦  «                             d¦  «        }t          j        |d d …t           j        f         |                     ¦   «         z  ¦  «        }t          j        |d d d…t           j        f         |d d d…                              ¦   «         z  ¦  «        }t           j        t          j        d¦  «        |t          j        d¦  «        f                              ¦   «         }t          j	        |¦  «        j
        }t           |d	|¦  «        ||¬
¦  «         t           |d	|d¬¦  «        |j                             ¦   «         |¬
¦  «         t           |d	|ddd¬¦  «        ||¬
¦  «         t           |d	|ddd¬¦  «        ||¬
¦  «         t          j        d|d¦  «        }	 |d	||	d¬¦  «        }
t          |	||¬
¦  «          |d||	¬¦  «        }
|	|
usJ ‚t          |
d|z  |¬
¦  «         t          t          |d	|d¬¦  «         t          t          |d	|d¬¦  «         t          t          |d	|d¬¦  «         t          t          |d	|d¬¦  «         t          t          |d	|d¬¦  «         t          t          |d	|d¬¦  «         t          t          |d	|t          j        ddd¦  «        ¬¦  «         d S )NrT   rW   r"   r$   r[   r¾   rV   rm   r¿   rÀ   TrÂ   rU   rÄ   rÈ   rÉ   r   rÊ   rÌ   rX   r   rÍ   rÎ   r–   rÏ   r   r   )r&   r   rÒ   r	   rÐ   ÚconjrÓ   r   rÔ   rÕ   rÖ   r   r×   rØ   rÙ   )ra   r9   r   r—   r   ÚrehzÚrehz_reverserÞ   rÁ   rY   rß   s              r1   Útest_herzTestFBLAS2Simple.test_her	  sÈ  € åŒI�a˜ #Ð&Ñ&Ô&ˆÝŒI�a˜ #Ð&Ñ&Ô&×+Ò+¨CÑ0Ô0ˆÝŒw�q˜˜˜�BœJ˜Ô'¨!¯&ª&©(¬(Ñ2Ñ3Ô3ˆÝ”w˜q   2 ¥r¤zÐ!1Ô2°Q°t°t¸°t´W·\²\±^´^ÑCÑDÔDˆÝŒE•"”(˜1‘+”+˜q¥"¤(¨1¡+¤+Ð-Ô.×4Ò4Ñ6Ô6ˆåŒx˜‰ŒÔ"ˆå˜˜˜#˜q™	œ	 4¨dÐ3Ñ3Ô3Ð3Ý˜˜˜#˜q¨Ð-Ñ-Ô-¨t¬v¯{ª{©}¬}À4ÐHÑHÔHÐHÝ˜˜˜#˜q q¨q°AÐ6Ñ6Ô6¸À4ÐHÑHÔHÐHå˜˜˜#˜q r°°QÐ7Ñ7Ô7Ø$¨4ð	1ñ 	1ô 	1ð 	1õ ŒH�V˜U CÑ(Ô(ˆØˆAˆc�1˜ tÐ,Ñ,Ô,ˆÝ˜˜4 dÐ+Ñ+Ô+Ð+àˆAˆc�1˜ˆN‰NŒNˆØ˜ˆzˆzˆzˆzÝ˜˜1˜T™6¨Ð-Ñ-Ô-Ð-å•i  C¨°Ð3Ñ3Ô3Ð3Ý•i  C¨°Ð3Ñ3Ô3Ð3Ý•i  C¨°Ð4Ñ4Ô4Ð4Ý•i  C¨¨bÐ1Ñ1Ô1Ð1Ý•i  C¨¨aÐ0Ñ0Ô0Ð0Ý•i  C¨°!Ð4Ñ4Ô4Ð4Ý•i  C¨­b¬h°v¸sÀCÑ.HÔ.HÐIÑIÔIÐIÐIÐIr3   Úsyr2c                 ó²  — t          j        ddd¬¦  «        }t          j        ddd¬¦  «        }t          j        |d d …t           j        f         |z  |d d …t           j        f         |z  z   ¦  «        }t          j        |d d d…t           j        f         |d d d…         z  |d d d…t           j        f         |d d d…         z  z   ¦  «        }t          j        ddd	d
¬¦  «        }t          j        |¦  «        j        }t           |d||¦  «        ||¬¦  «         t           |d||d¬¦  «        |d d…d d…f         |¬¦  «         t           |d||d¬¦  «        |j        |¬¦  «         t           |d||dddd¬¦  «        ||¬¦  «         t           |d||ddddd¬¦  «        |d d…d d…f         |¬¦  «         t           |d||dddd¬¦  «        ||¬¦  «         t          j	        d|d¦  «        }	 |d|||	d¬¦  «        }
t          |	||¬¦  «          |d|||	¬¦  «        }
|	|
usJ ‚t          |
d|z  |¬¦  «         t          t          |d||d¬¦  «         t          t          |d||d¬¦  «         t          t          |d||d¬¦  «         t          t          |d||d¬¦  «         t          t          |d||d¬¦  «         t          t          |d||d¬¦  «         t          t          |d||d¬¦  «         t          t          |d||d¬¦  «         t          t          |d||d¬¦  «         t          t          |d||t          j	        d dd¦  «        ¬¦  «         d S )!NrT   rW   r"   r$   r[   rV   r   rº   r»   Fr¼   r¿   rÀ   rU   rÏ   TrÂ   r   r’   ©rÅ   rÆ   ÚincyÚoffy©rÅ   rÆ   rê   rë   rÇ   r–   rÉ   r   rÊ   rÌ   rX   rÍ   rÎ   ©rê   ©rë   r   )r&   r   r	   rÐ   rÑ   rÕ   rÖ   r   r×   r   rØ   rÙ   )ra   r9   r   r—   r˜   ÚresxyÚresxy_reverseÚqrÁ   rY   rß   s              r1   Ú	test_syr2zTestFBLAS2Simple.test_syr2*  sÔ  € åŒI�a˜ #Ð&Ñ&Ô&ˆÝŒI�a˜ #Ð&Ñ&Ô&ˆÝ”˜˜!˜!˜!�RœZ˜-Ô(¨1Ñ,¨q°°°µB´J°Ô/?À!Ñ/CÑCÑDÔDˆÝœ  $ $ B $­¬
Ð"2Ô 3°a¸¸¸"¸´gÑ =Ø"# D D b D­"¬*Ð$4Ô"5¸¸$¸$¸B¸$¼Ñ"?ñ!@ñ Aô Aˆõ ŒK˜˜3 ¨UÐ3Ñ3Ô3ˆÝŒx˜‰ŒÔ"ˆå˜˜˜#˜q !™œ e°$Ð7Ñ7Ô7Ð7Ý˜˜˜#˜q ! qÐ)Ñ)Ô)¨5°°!°°R°a°R°¬=¸tÐDÑDÔDÐDÝ˜˜˜#˜q !¨4Ð0Ñ0Ô0°%´'ÀÐEÑEÔEÐEå˜˜˜#˜q !¨!°!¸!À"ÐEÑEÔEØ Dð	*ñ 	*ô 	*ð 	*å˜˜˜#˜q !¨!°!¸!À"ÈÐJÑJÔJØ˜b˜q˜b " 1 "˜fœ¨Dð	2ñ 	2ô 	2ð 	2õ 	˜˜˜#˜q !¨"°1¸2ÀBÐGÑGÔGØ%¨Dð	2ñ 	2ô 	2ð 	2õ ŒH�V˜U CÑ(Ô(ˆØˆAˆc�1�a˜1¨$Ð/Ñ/Ô/ˆÝ˜˜5 tÐ,Ñ,Ô,Ð,àˆAˆc�1�a˜1ÐÑÔˆØ˜ˆzˆzˆzˆzÝ˜˜1˜U™7¨Ð.Ñ.Ô.Ð.å•i  C¨¨A°AÐ6Ñ6Ô6Ð6Ý•i  C¨¨A°AÐ6Ñ6Ô6Ð6Ý•i  C¨¨A°BÐ7Ñ7Ô7Ð7Ý•i  C¨¨A°AÐ6Ñ6Ô6Ð6Ý•i  C¨¨A°AÐ6Ñ6Ô6Ð6Ý•i  C¨¨A°BÐ7Ñ7Ô7Ð7Ý•i  C¨¨A°Ð4Ñ4Ô4Ð4Ý•i  C¨¨A°Ð3Ñ3Ô3Ð3Ý•i  C¨¨A°QÐ7Ñ7Ô7Ð7Ý•i  C¨¨Aµ´¸&À#ÀsÑ1KÔ1KÐLÑLÔLÐLÐLÐLr3   Úher2c                 óº  — t          j        ddd¬¦  «                             d¦  «        }t          j        ddd¬¦  «                             d¦  «        }|d d …t           j        f         |                     ¦   «         z  |d d …t           j        f         |                     ¦   «         z  z   }t          j        |¦  «        }|d d d…t           j        f         |d d d…                              ¦   «         z  }||d d d…t           j        f         |d d d…                              ¦   «         z  z  }t          j        |¦  «        }t           j        t          j        d¦  «        |t          j        d¦  «        f                              ¦   «         }t           j        t          j        d¦  «        |t          j        d¦  «        f                              ¦   «         }t          j	        |¦  «        j
        }	t           |d	||¦  «        ||	¬
¦  «         t           |d	||d¬¦  «        |d d…d d…f         |	¬
¦  «         t           |d	||d¬¦  «        |j                             ¦   «         |	¬
¦  «         t           |d	||dddd¬¦  «        ||	¬
¦  «         t           |d	||ddddd¬¦  «        |d d…d d…f         |	¬
¦  «         t           |d	||dddd¬¦  «        ||	¬
¦  «         t          j        d|d¦  «        }
 |d	|||
d¬¦  «        }t          |
||	¬
¦  «          |d|||
¬¦  «        }|
|usJ ‚t          |d|z  |	¬
¦  «         t          t          |d	||d¬¦  «         t          t          |d	||d¬¦  «         t          t          |d	||d¬¦  «         t          t          |d	||d¬¦  «         t          t          |d	||d¬¦  «         t          t          |d	||d¬¦  «         t          t          |d	||d¬¦  «         t          t          |d	||d¬¦  «         t          t          |d	||d¬¦  «         t          t          |d	||t          j        ddd¦  «        ¬¦  «         d S ) NrT   r[   r"   r$   r¾   r»   rV   rm   r¿   rÀ   rU   rÏ   TrÂ   ré   rì   rÈ   rÉ   r   rÊ   rÌ   rX   r   rÍ   rW   rÎ   r–   rí   rî   r   r   )r&   r   rÒ   rÐ   rã   r	   rÓ   r   rÔ   rÕ   rÖ   r   r×   rØ   rÙ   )ra   r9   r   r—   r˜   rï   rð   ÚuÚvrÁ   rY   rß   s               r1   Ú	test_her2zTestFBLAS2Simple.test_her2T  sw  € åŒI�a˜ #Ð&Ñ&Ô&×+Ò+¨CÑ0Ô0ˆÝŒI�a˜ 3Ð'Ñ'Ô'×,Ò,¨SÑ1Ô1ˆØ�!�!�!•R”Z�-Ô  1§6¢6¡8¤8Ñ+¨a°°°µ2´:°Ô.>ÀÇÂÁÄÑ.IÑIˆÝ”˜‘”ˆà˜$˜$˜B˜$¥¤
Ð*Ô+¨a°°°"°¬g¯lªl©n¬nÑ<ˆØ˜˜4˜4˜R˜4¥¤Ð+Ô,¨q°°°2°¬w¯|ª|©~¬~Ñ=Ñ=ˆÝœ Ñ.Ô.ˆåŒE•"”(˜1‘+”+˜q¥"¤(¨1¡+¤+Ð-Ô.×4Ò4Ñ6Ô6ˆÝŒE•"”(˜1‘+”+˜q¥"¤(¨1¡+¤+Ð-Ô.×4Ò4Ñ6Ô6ˆåŒx˜‰ŒÔ"ˆå˜˜˜#˜q !™œ e°$Ð7Ñ7Ô7Ð7Ý˜˜˜#˜q ! qÐ)Ñ)Ô)¨5°°!°°R°a°R°¬=¸tÐDÑDÔDÐDÝ˜˜˜#˜q !¨4Ð0Ñ0Ô0°%´'·,²,±.´.Ø!ð	#ñ 	#ô 	#ð 	#õ 	˜˜˜#˜q !¨!°!¸!À!ÐDÑDÔDØ Dð	*ñ 	*ô 	*ð 	*å˜˜˜#˜q !¨!°!¸!À!ÀqÐIÑIÔIØ˜b˜q˜b " 1 "˜fœ¨Dð	2ñ 	2ô 	2ð 	2õ 	˜˜˜#˜q !¨"°1¸2ÀAÐFÑFÔFØ%¨Dð	2ñ 	2ô 	2ð 	2õ ŒH�V˜U CÑ(Ô(ˆØˆAˆc�1�a˜1¨$Ð/Ñ/Ô/ˆÝ˜˜5 tÐ,Ñ,Ô,Ð,àˆAˆc�1�a˜1ÐÑÔˆØ˜ˆzˆzˆzˆzÝ˜˜1˜U™7¨Ð.Ñ.Ô.Ð.å•i  C¨¨A°AÐ6Ñ6Ô6Ð6Ý•i  C¨¨A°AÐ6Ñ6Ô6Ð6Ý•i  C¨¨A°BÐ7Ñ7Ô7Ð7Ý•i  C¨¨A°AÐ6Ñ6Ô6Ð6Ý•i  C¨¨A°AÐ6Ñ6Ô6Ð6Ý•i  C¨¨A°BÐ7Ñ7Ô7Ð7Ý•i  C¨¨A°Ð4Ñ4Ô4Ð4Ý•i  C¨¨A°Ð3Ñ3Ô3Ð3Ý•i  C¨¨A°QÐ7Ñ7Ô7Ð7Ý•i  C¨¨AÝœ ¨¨cÑ2Ô2ð	4ñ 	4ô 	4ð 	4ð 	4ð 	4r3   r   c                 ó*  — t           j                             d¦  «        }d}d}d}d}t          t	          |                     |dz   ¦  «        t          ||z
  dz
  ¦  «        ¦  «        t	          |                     |dz   ¦  «        t          ||z
  dz
  ¦  «        ¦  «        ¦  «        }|                     |¦  «        }t          ||z   dz   |f|¬¦  «        }|d         |dd d…f<   |d         |ddd	…f<   |d
         |ddd…f<   |d         |dd d…f<   |                     |¦  «                             |¦  «        }	|                     |¦  «                             |¦  «        }
 |d¦  «         |d¦  «        }}t          d|¬¦  «        \  } ||||||||	|
|¬¦	  «	        }||                     |	¦  «        z  ||
z  z   }t          ||¦  «          ||||||||
|	|d¬¦
  «
        }||j
                             |
¦  «        z  ||	z  z   }t          ||¦  «         d S )NéÒ  rZ   rW   rT   r   r$   )r   r   )r   rT   r‘   )r   r   r   )rT   r   rU   rm   r¡   )Úgbmv)	ÚmrÇ   ÚkuÚklÚalpharY   r—   r˜   Úbeta)
rû   rÇ   rü   rý   rþ   rY   r—   r˜   rÿ   Útrans)r&   ÚrandomÚdefault_rngr   r   r   Úastyper   r6   r   r×   )ra   r   ÚrngrÇ   rû   rý   rü   ÚAÚAbr—   r˜   rþ   rÿ   Úfuncrš   Úy2s                   r1   Ú	test_gbmvzTestFBLAS2Simple.test_gbmv…  s/  € åŒi×#Ò# DÑ)Ô)ˆØˆØˆØˆØˆå•V˜CŸJšJ r¨!¡tÑ,Ô,­e°A°b±D¸±F©m¬mÑ<Ô<Ý˜CŸJšJ r¨!¡tÑ,Ô,­e°A°b±D¸±F©m¬mÑ<Ô<ñ>ô >ˆà�HŠH�U‰OŒOˆÝ�B�r‘E˜!‘G˜Q�< uÐ-Ñ-Ô-ˆð �d”Gˆˆ1ˆbˆqˆbˆ5‰	Ø�t”Wˆˆ1ˆa�ˆcˆ6‰
Ø�t”Wˆˆ1ˆa�ˆcˆ6‰
Ø�d”Gˆˆ1ˆbˆqˆbˆ5‰	à�JŠJ�q‰MŒM× Ò  Ñ'Ô'ˆØ�JŠJ�q‰MŒM× Ò  Ñ'Ô'ˆØ�e˜A‘h”h   b¡	¤	ˆtˆå˜y°Ð6Ñ6Ô6‰ˆØˆT�A˜˜r b°¸Ø˜ ð'ñ 'ô 'ˆà�Q—U’U˜1‘X”XÑ  q¡Ñ(ˆÝ! " bÑ)Ô)Ð)àˆT�A˜˜r b°¸Ø˜ ¨Qð0ñ 0ô 0ˆà�Q”S—W’W˜Q‘Z”ZÑ $¨¡(Ñ*ˆÝ! " bÑ)Ô)Ð)Ð)Ð)r3   c                 ó  — t           j                             d¦  «        }d}d}t          ||f|¬¦  «        }t          |dz   |f|¬¦  «        }|                     |¦  «        |t	          |¦  «        t	          |¦  «        f<   t          d|dz   ¦  «        D ]K}|                     ||z
  ¦  «        }||t	          ||z
  ¦  «        t	          ||¦  «        f<   ||d|z
  |d …f<   ŒL|                     |¦  «        }|t          v r0||                     ¦   «         j	        z  }t          d|¬¦  «        \  }	n||j	        z  }t          d|¬¦  «        \  }	t          |¦  «        |dd d …f<   |                     |¦  «                             |¦  «        }
|                     |¦  «                             |¦  «        } |d	¦  «         |d
¦  «        }} |	||||
||¬¦  «        }||                     |
¦  «        z  ||z  z   }t          ||¦  «         d S )Nrù   r‘   r   r$   rT   rV   )Úhbmv)Úsbmvç      ô?rU   )Úkrþ   rY   r—   r˜   rÿ   )r&   r  r  r   r   Úranger  r_   rã   r×   r   r   r6   r   )ra   r   r  rÇ   r  r  r  Úind2Útempr  r—   r˜   rþ   rÿ   rš   r  s                   r1   Útest_sbmv_hbmvzTestFBLAS2Simple.test_sbmv_hbmv§  sý  € åŒi×#Ò# DÑ)Ô)ˆØˆØˆÝ�1�a�& Ð&Ñ&Ô&ˆÝ�A�a‘C˜�8 5Ð)Ñ)Ô)ˆð #&§*¢*¨Q¡-¤-ˆ�&�‰)Œ)•V˜A‘Y”YÐ
ÑÝ˜!˜Q˜q™S‘M”Mð 	&ð 	&ˆDØ—:’:˜a ™fÑ%Ô%ˆDØ15ˆA�f�Q�t‘V‰nŒn�f T¨1™oœoÐ-Ñ.Ø!%ˆBˆr�$‰w˜˜˜ˆ~ÑÐØ�HŠH�U‰OŒOˆØ•NÐ"Ð"Ø�—’‘””‰OˆAÝ" 9°EÐ:Ñ:Ô:‰EˆDˆDà�”‰HˆAÝ" 9°EÐ:Ñ:Ô:‰EˆDå˜‘G”Gˆˆ2ˆqˆqˆqˆ5‰	Ø�JŠJ�q‰MŒM× Ò  Ñ'Ô'ˆØ�JŠJ�q‰MŒM× Ò  Ñ'Ô'ˆØ�e˜D‘k”k 5 5¨¡8¤8ˆtˆàˆT�A˜U b¨A°¸Ð>Ñ>Ô>ˆØ�Q—U’U˜1‘X”XÑ  q¡Ñ(ˆÝ! " bÑ)Ô)Ð)Ð)Ð)r3   zfname,dtypec                 ó   — g | ]}d |f‘ŒS )Úspmvrg   ©Ú.0r   s     r1   ú
<listcomp>zTestFBLAS2Simple.<listcomp>Ç  s   € Ð	DÐ	DÐ	D˜eˆ6�5ˆ/Ð	DÐ	DÐ	Dr3   c                 ó   — g | ]}d |f‘ŒS )Úhpmvrg   r  s     r1   r  zTestFBLAS2Simple.<listcomp>È  s   € Ð	6Ð	6Ð	6˜eˆ6�5ˆ/Ð	6Ð	6Ð	6r3   c                 óŠ  — t           j                             d¦  «        }d}|                     ||f¦  «                             |¦  «        }|t          v r||                     ||f¦  «        dz  z  }||dk    r|j        n|                     ¦   «         j        z  }t          |¦  «        \  }}|||f         }|                     |¦  «                             |¦  «        }	|                     |¦  «                             |¦  «        }
t          d|z  ¦  «                             |¦  «        }t          d|z  ¦  «                             |¦  «        } |d¦  «         |d¦  «        }}t          |f|¬¦  «        \  } |||||	|
|¬¦  «        }||                     |	¦  «        z  ||
z  z   }t          ||¦  «          ||d	z
  |||||dd||¬
¦
  «
        }||d d…d d…f         z                       |dd d…         ¦  «        ||dd d…         z  z   }t          |dd d…         |¦  «         t          |d         |d         ¦  «         d S )Nrù   rU   r®   r  r   r  r$   )rÇ   rþ   Úapr—   r˜   rÿ   rT   )
rÇ   rþ   rÿ   r—   r˜   r  rÅ   rê   rÆ   rë   rV   rm   )r&   r  r  r  r_   r×   rã   r   r   r   r   r6   r   r   )ra   Úfnamer   r  rÇ   r  r%   ÚrÚApr—   r˜   ÚxlongÚylongrþ   rÿ   r  rš   r  s                     r1   Útest_spmv_hpmvzTestFBLAS2Simple.test_spmv_hpmvÆ  sD  € õ
 Œi×#Ò# DÑ)Ô)ˆØˆØ�JŠJ˜˜1�vÑÔ×%Ò% eÑ,Ô,ˆØ•NÐ"Ð"Ø�—’˜Q ˜FÑ#Ô# BÑ&Ñ&ˆAØ	�E˜V’O�OˆQŒSˆS¨¯ª©¬¬Ñ3ˆÝ˜A‰Œ‰ˆˆ1Øˆq�!ˆtŒWˆØ�JŠJ�q‰MŒM× Ò  Ñ'Ô'ˆØ�JŠJ�q‰MŒM× Ò  Ñ'Ô'ˆÝ�q˜‘s‘”×"Ò" 5Ñ)Ô)ˆÝ�Q�q‘S‘	”	× Ò  Ñ'Ô'ˆØ�e˜D‘k”k 5 5¨¡8¤8ˆtˆå ˜x¨uÐ5Ñ5Ô5‰ˆØˆT�A˜U r¨Q°!¸$Ð?Ñ?Ô?ˆØ�Q—U’U˜1‘X”XÑ  q¡Ñ(ˆÝ! " bÑ)Ô)Ð)ð ˆT�A�a‘C˜u¨4°5¸EÀbØ˜q q¨qð2ñ 2ô 2ˆà�a˜˜˜˜S˜b˜S˜”kÑ!×&Ò& u¨Q¨T°¨T¤{Ñ3Ô3°d¸UÀ1À4ÀaÀ4¼[Ñ6HÑHˆÝ! " Q T¨ T¤(¨BÑ/Ô/Ð/Ý˜B˜qœE 5¨¤8Ñ,Ô,Ð,Ð,Ð,r3   c                 ó   — g | ]}d |f‘ŒS ©Úsprrg   r  s     r1   r  zTestFBLAS2Simple.<listcomp>æ  s   € Ð	CÐ	CÐ	C˜Uˆ5�%ˆ.Ð	CÐ	CÐ	Cr3   c                 ó   — g | ]}d |f‘ŒS ©Úhprrg   r  s     r1   r  zTestFBLAS2Simple.<listcomp>ç  s   € Ð	5Ð	5Ð	5˜Uˆ5�%ˆ.Ð	5Ð	5Ð	5r3   c                 ó  — t           j                             d¦  «        }d}|                     ||f¦  «                             |¦  «        }|t          v r||                     ||f¦  «        dz  z  }||dk    r|j        n|                     ¦   «         j        z  }t          |¦  «        \  }}|||f         }|                     |¦  «                             |¦  «        }	t          j        |¦  «        j	         
                    d¦  «        }
|dk    rUt          d|¬¦  «        \  }|
|	d d …d f                              |	d d d …f                              ¦   «         ¦  «        z  |z   }nBt          d	|¬¦  «        \  }|
|	d d …d f                              |	d d d …f         ¦  «        z  |z   } |||
||	¬
¦  «        }t          d|¬¦  «        }||||f<   |dk    r|                     ¦   «         n||||f<   t          ||¦  «         d S )Nrù   rU   r®   r$  g      @r'  r&  r$   r#  )rÇ   rþ   r  r—   ©rU   rU   )r&   r  r  r  r_   r×   rã   r   rÕ   r   Útyper   r6   r   r   )ra   r  r   r  rÇ   r  r%   r  r  r—   rþ   r  r  rš   Úy1fs                  r1   Útest_spr_hprzTestFBLAS2Simple.test_spr_hprå  sõ  € õ
 Œi×#Ò# DÑ)Ô)ˆØˆØ�JŠJ˜˜1�vÑÔ×%Ò% eÑ,Ô,ˆØ•NÐ"Ð"Ø�—’˜Q ˜FÑ#Ô# BÑ&Ñ&ˆAØ	�E˜U’N�NˆQŒSˆS¨¯ª©¬¬
Ñ2ˆÝ˜A‰Œ‰ˆˆ1Øˆq�!ˆtŒWˆØ�JŠJ�q‰MŒM× Ò  Ñ'Ô'ˆå”˜‘”Ô%×*Ò*¨3Ñ/Ô/ˆØ�EŠ>ˆ>Ý" 8°5Ð9Ñ9Ô9‰EˆDØ˜˜1˜1˜1˜d˜7œŸš¨¨$°°°¨'¬
¯ªÑ(9Ô(9Ñ:Ô:Ñ:¸QÑ>ˆBˆBå" 8°5Ð9Ñ9Ô9‰EˆDØ˜˜1˜1˜1˜d˜7œŸš¨¨$°°°¨'¬
Ñ3Ô3Ñ3°aÑ7ˆBàˆT�A˜U r¨QÐ/Ñ/Ô/ˆÝ�F %Ð(Ñ(Ô(ˆØˆˆAˆqˆD‰	Ø!&¨%¢ �B—G’G‘I”I�I°RˆˆAˆqˆD‰	Ý! # rÑ*Ô*Ð*Ð*Ð*r3   c                 ó  — t           j                             d¦  «        }d}|                     ||f¦  «                             |¦  «        }|t          v rM||                     ||f¦  «        dz  z  }||                     ¦   «         j        z  }t          d|¬¦  «        \  }n||j        z  }t          d|¬¦  «        \  }t          |¦  «        \  }}|||f         }|                     |¦  «                             |¦  «        }	|                     |¦  «                             |¦  «        }
 |d¦  «        }|                     ¦   «         |	d d …d f          	                    |
d d d …f                              ¦   «         ¦  «        z  }||z   |                     ¦   «         j        z   } ||||	|
|¬¦  «        }t          d	|¬¦  «        }||||f<   |g d
¢                              ¦   «         |g d¢g d¢f<   t          ||¦  «         d S )Nrù   rU   r®   )Úhpr2r$   )Úspr2r   )rÇ   rþ   r—   r˜   r  r)  )rT   rU   rm   )rT   r   r   )r   r   rT   )r&   r  r  r  r_   rã   r×   r   r   r6   r   r   )ra   r   r  rÇ   r  r  r%   r  r  r—   r˜   rþ   rõ   r  rš   r+  s                   r1   Útest_spr2_hpr2zTestFBLAS2Simple.test_spr2_hpr2  sæ  € åŒi×#Ò# DÑ)Ô)ˆØˆØ�JŠJ˜˜1�vÑÔ×%Ò% eÑ,Ô,ˆØ•NÐ"Ð"Ø�—’˜Q ˜FÑ#Ô# BÑ&Ñ&ˆAØ�—’‘””‰OˆAÝ" 9°EÐ:Ñ:Ô:‰EˆDˆDà�”‰HˆAÝ" 9°EÐ:Ñ:Ô:‰EˆDå˜A‰Œ‰ˆˆ1Øˆq�!ˆtŒWˆØ�JŠJ�q‰MŒM× Ò  Ñ'Ô'ˆØ�JŠJ�q‰MŒM× Ò  Ñ'Ô'ˆØ��a‘”ˆà�JŠJ‰LŒL˜1˜Q˜Q˜Q ˜Wœ:Ÿ>š>¨!¨D°!°!°!¨G¬*¯/ª/Ñ*;Ô*;Ñ<Ô<Ñ<ˆØ�‰U�Q—V’V‘X”X”ZÑˆØˆT�A˜U a¨1°Ð4Ñ4Ô4ˆÝ�F %Ð(Ñ(Ô(ˆØˆˆAˆqˆD‰	Ø$& y y y¤M×$6Ò$6Ñ$8Ô$8ˆˆIˆIˆI�y�y�yÐ Ñ!Ý! # rÑ*Ô*Ð*Ð*Ð*r3   c           
      ó  — t           j                             d¦  «        }d}d}|                     |¦  «                             |¦  «        }t	          ||f|¬¦  «        }t          |dz   ¦  «        D ]=}|                     ||z
  ¦  «        |t          ||z
  ¦  «        t          ||¦  «        f<   Œ>|t          v rX|t          |¦  «        xx         d|                     |dz   |z  ||dz   z  dz  z
  ¦  «                             |¦  «        z  z  cc<   t	          |dz   |f|¬¦  «        }t          |dz   ¦  «        D ]}	t          ||	¬¦  «        ||	 dz
  |	d …f<   Œt          d	|¬¦  «        \  }
 |
|||¬
¦  «        }|                     |¦  «        }t          ||¦  «          |
|||d¬¦  «        } |d¦  «        |t          |¦  «        t          |¦  «        f<   |                     |¦  «        }t          ||¦  «          |
|||dd¬¦  «        }|j                             |¦  «        }t          ||¦  «          |
|||dd¬¦  «        }|                     ¦   «         j                             |¦  «        }t          ||¦  «         d S )Nrù   r’   rU   r$   rT   r®   r   ©r  )Útbmv©r  rY   r—   ©r  rY   r—   r   ©r  rY   r—   r   r   )r&   r  r  r  r   r  r   r_   r   r   r   r6   r   r×   rã   ©ra   r   r  rÇ   r  r—   r  Úsupr  Úrowr  rš   r  s                r1   Ú	test_tbmvzTestFBLAS2Simple.test_tbmv  s‡  € åŒi×#Ò# DÑ)Ô)ˆØˆØˆØ�JŠJ�q‰MŒM× Ò  Ñ'Ô'ˆÝ�1�a�& Ð&Ñ&Ô&ˆå˜˜1™‘:”:ð 	Að 	AˆCØ/2¯zªz¸!¸C¹%Ñ/@Ô/@ˆA�f�Q�s‘U‰mŒm�V C¨™^œ^Ð+Ñ,Ð,ð •NÐ"Ð"Ø�g�a‰jŒjˆMˆMŒM˜R #§*¢*¨a°©c°1©W°a¸¸1¹±g¸q±jÑ-AÑ"BÔ"B×"IÒ"IÈ%Ñ"PÔ"PÑPÑPˆMˆM‰Mõ �A�a‘C˜�8 5Ð)Ñ)Ô)ˆÝ˜˜1™‘:”:ð 	.ð 	.ˆCÝ# A¨˜~™~œ~ˆB�ˆt�A‰v�s�t�tˆ|ÑÐÝ˜y°Ð6Ñ6Ô6‰ˆàˆT�A˜˜qÐ!Ñ!Ô!ˆØ�UŠU�1‰XŒXˆÝ! " bÑ)Ô)Ð)àˆT�A˜˜q qÐ)Ñ)Ô)ˆØ"' %¨¡(¤(ˆ�&�‰)Œ)•V˜A‘Y”YÐ
ÑØ�UŠU�1‰XŒXˆÝ! " bÑ)Ô)Ð)àˆT�A˜˜q q°Ð2Ñ2Ô2ˆØŒS�WŠW�Q‰ZŒZˆÝ! " bÑ)Ô)Ð)àˆT�A˜˜q q°Ð2Ñ2Ô2ˆØ�VŠV‰XŒXŒZ�^Š^˜AÑÔˆÝ! " bÑ)Ô)Ð)Ð)Ð)r3   c           
      óÞ  — t           j                             d¦  «        }d}d}|                     |¦  «                             |¦  «        }t	          ||f|¬¦  «        }t          |dz   ¦  «        D ]=}|                     ||z
  ¦  «        |t          ||z
  ¦  «        t          ||¦  «        f<   Œ>|t          v rX|t          |¦  «        xx         d|                     |dz   |z  ||dz   z  dz  z
  ¦  «                             |¦  «        z  z  cc<   t	          |dz   |f|¬¦  «        }t          |dz   ¦  «        D ]}	t          ||	¬¦  «        ||	 dz
  |	d …f<   Œt          d	|¬¦  «        \  }
 |
|||¬
¦  «        }t          ||¦  «        }t          ||¦  «          |
|||d¬¦  «        } |d¦  «        |t          |¦  «        t          |¦  «        f<   t          ||¦  «        }t          ||¦  «          |
|||dd¬¦  «        }t          |j        |¦  «        }t          ||¦  «          |
|||dd¬¦  «        }t          |                     ¦   «         j        |¦  «        }t          ||¦  «         d S )Ni90  r‘   rU   r$   rT   r®   r   r2  )Útbsvr4  r5  r6  )r&   r  r  r  r   r  r   r_   r   r   r   r   r   r×   rã   r7  s                r1   Ú	test_tbsvzTestFBLAS2Simple.test_tbsvC  s  € åŒi×#Ò# EÑ*Ô*ˆØˆØˆØ�JŠJ�q‰MŒM× Ò  Ñ'Ô'ˆÝ�1�a�& Ð&Ñ&Ô&ˆå˜˜1™‘:”:ð 	Að 	AˆCØ/2¯zªz¸!¸C¹%Ñ/@Ô/@ˆA�f�Q�s‘U‰mŒm�V C¨™^œ^Ð+Ñ,Ð,ð •NÐ"Ð"Ø�g�a‰jŒjˆMˆMŒM˜R #§*¢*¨a°©c°1©W°a¸¸1¹±g¸q±jÑ-AÑ"BÔ"B×"IÒ"IÈ%Ñ"PÔ"PÑPÑPˆMˆM‰Mõ �A�a‘C˜�8 5Ð)Ñ)Ô)ˆÝ˜˜1™‘:”:ð 	.ð 	.ˆCÝ# A¨˜~™~œ~ˆB�ˆt�A‰v�s�t�tˆ|ÑÐÝ˜y°Ð6Ñ6Ô6‰ˆàˆT�A˜˜qÐ!Ñ!Ô!ˆÝ�1�a‰[Œ[ˆÝ! " bÑ)Ô)Ð)àˆT�A˜˜q qÐ)Ñ)Ô)ˆØ"' %¨¡(¤(ˆ�&�‰)Œ)•V˜A‘Y”YÐ
ÑÝ�1�a‰[Œ[ˆÝ! " bÑ)Ô)Ð)àˆT�A˜˜q q°Ð2Ñ2Ô2ˆÝ�1”3˜‰]Œ]ˆÝ! " bÑ)Ô)Ð)àˆT�A˜˜q q°Ð2Ñ2Ô2ˆÝ�1—6’6‘8”8”:˜qÑ!Ô!ˆÝ! " bÑ)Ô)Ð)Ð)Ð)r3   c                 óþ  — t           j                             d¦  «        }d}|                     |¦  «                             |¦  «        }|t          v r@t          |                     ||f¦  «        |                     ||f¦  «        dz  z   ¦  «        }n$t          |                     ||f¦  «        ¦  «        }t          |¦  «        \  }}|||f         }t          d|¬¦  «        \  }	 |	|||¬¦  «        }
|                     |¦  «        }t          |
|¦  «          |	|||d¬¦  «        }
 |d¦  «        |t          |¦  «        t          |¦  «        f<   |                     |¦  «        }t          |
|¦  «          |	|||dd¬	¦  «        }
|j                             |¦  «        }t          |
|¦  «          |	|||dd
¬	¦  «        }
|                     ¦   «         j                             |¦  «        }t          |
|¦  «         d S )Nrù   r’   r®   )Útpmvr$   ©rÇ   r  r—   rT   ©rÇ   r  r—   r   ©rÇ   r  r—   r   r   r   )r&   r  r  r  r_   r	   r   r   r6   r   r   r×   rã   ©ra   r   r  rÇ   r—   r  r%   r  r  r  rš   r  s               r1   Ú	test_tpmvzTestFBLAS2Simple.test_tpmvi  sá  € åŒi×#Ò# DÑ)Ô)ˆØˆØ�JŠJ�q‰MŒM× Ò  Ñ'Ô'ˆà•NÐ"Ð"Ý�S—Z’Z  A Ñ'Ô'¨#¯*ª*°a¸°VÑ*<Ô*<¸RÑ*?Ñ?Ñ@Ô@ˆAˆAå�S—Z’Z  A Ñ'Ô'Ñ(Ô(ˆAõ ˜A‰Œ‰ˆˆ1Øˆq�!ˆtŒWˆÝ˜y°Ð6Ñ6Ô6‰ˆàˆT�A˜" Ð"Ñ"Ô"ˆØ�UŠU�1‰XŒXˆÝ! " bÑ)Ô)Ð)àˆT�A˜" ¨Ð*Ñ*Ô*ˆØ"' %¨¡(¤(ˆ�&�‰)Œ)•V˜A‘Y”YÐ
ÑØ�UŠU�1‰XŒXˆÝ! " bÑ)Ô)Ð)àˆT�A˜" ¨°Ð3Ñ3Ô3ˆØŒS�WŠW�Q‰ZŒZˆÝ! " bÑ)Ô)Ð)àˆT�A˜" ¨°Ð3Ñ3Ô3ˆØ�VŠV‰XŒXŒZ�^Š^˜AÑÔˆÝ! " bÑ)Ô)Ð)Ð)Ð)r3   c                 óú  — t           j                             d¦  «        }d}|                     |¦  «                             |¦  «        }|t          v r@t          |                     ||f¦  «        |                     ||f¦  «        dz  z   ¦  «        }n$t          |                     ||f¦  «        ¦  «        }|t          |¦  «        z  }t          |¦  «        \  }}|||f         }t          d|¬¦  «        \  }	 |	|||¬¦  «        }
t          ||¦  «        }t          |
|¦  «          |	|||d¬¦  «        }
 |d¦  «        |t          |¦  «        t          |¦  «        f<   t          ||¦  «        }t          |
|¦  «          |	|||dd¬	¦  «        }
t          |j        |¦  «        }t          |
|¦  «          |	|||dd
¬	¦  «        }
t          |                     ¦   «         j        |¦  «        }t          |
|¦  «         d S )Nrù   r’   r®   )Útpsvr$   r@  rT   rA  rB  r   )r&   r  r  r  r_   r	   r   r   r   r   r   r   r×   rã   rC  s               r1   Ú	test_tpsvzTestFBLAS2Simple.test_tpsvŠ  sæ  € åŒi×#Ò# DÑ)Ô)ˆØˆØ�JŠJ�q‰MŒM× Ò  Ñ'Ô'ˆà•NÐ"Ð"Ý�S—Z’Z  A Ñ'Ô'¨#¯*ª*°a¸°VÑ*<Ô*<¸RÑ*?Ñ?Ñ@Ô@ˆAˆAå�S—Z’Z  A Ñ'Ô'Ñ(Ô(ˆAØ	�S�‰VŒV‰ˆå˜A‰Œ‰ˆˆ1Øˆq�!ˆtŒWˆÝ˜y°Ð6Ñ6Ô6‰ˆàˆT�A˜" Ð"Ñ"Ô"ˆÝ�1�a‰[Œ[ˆÝ! " bÑ)Ô)Ð)àˆT�A˜" ¨Ð*Ñ*Ô*ˆØ"' %¨¡(¤(ˆ�&�‰)Œ)•V˜A‘Y”YÐ
ÑÝ�1�a‰[Œ[ˆÝ! " bÑ)Ô)Ð)àˆT�A˜" ¨°Ð3Ñ3Ô3ˆÝ�1”3˜‰]Œ]ˆÝ! " bÑ)Ô)Ð)àˆT�A˜" ¨°Ð3Ñ3Ô3ˆÝ�1—6’6‘8”8”:˜qÑ!Ô!ˆÝ! " bÑ)Ô)Ð)Ð)Ð)r3   c                 óÀ  — t           j                             d¦  «        }d}|                     ||f¦  «        t          |¦  «        z                        |¦  «        }|                     d¦  «                             |¦  «        }t          d|¬¦  «        \  } |||¬¦  «        }t          |¦  «                             |¦  «        }t          ||¦  «          |||d¬¦  «        } |d¦  «        |t          |¦  «        t          |¦  «        f<   t          |¦  «                             |¦  «        }t          ||¦  «          |||dd¬¦  «        }t          |¦  «        j
                             |¦  «        }t          ||¦  «          |||dd	¬¦  «        }t          |¦  «                             ¦   «         j
                             |¦  «        }t          ||¦  «         d S )
Nrù   rU   )Útrmvr$   ©rY   r—   rT   ©rY   r—   r   ©rY   r—   r   r   r   )r&   r  r  r   r  r   r	   r6   r   r   r×   rã   ©	ra   r   r  rÇ   r  r—   r  rš   r  s	            r1   Ú	test_trmvzTestFBLAS2Simple.test_trmv«  s¢  € åŒi×#Ò# DÑ)Ô)ˆØˆØ�ZŠZ˜˜A˜ÑÔ¥ A¡¤Ñ&×.Ò.¨uÑ5Ô5ˆØ�JŠJ�q‰MŒM× Ò  Ñ'Ô'ˆÝ˜y°Ð6Ñ6Ô6‰ˆàˆT�A˜ˆ^‰^Œ^ˆÝ�!‰WŒW�[Š[˜‰^Œ^ˆÝ! " bÑ)Ô)Ð)àˆT�A˜ Ð#Ñ#Ô#ˆØ"' %¨¡(¤(ˆ�&�‰)Œ)•V˜A‘Y”YÐ
ÑÝ�!‰WŒW�[Š[˜‰^Œ^ˆÝ! " bÑ)Ô)Ð)àˆT�A˜ ¨!Ð,Ñ,Ô,ˆÝ�!‰WŒWŒY�]Š]˜1ÑÔˆÝ! " bÑ)Ô)Ð)àˆT�A˜ ¨!Ð,Ñ,Ô,ˆÝ�!‰WŒW�\Š\‰^Œ^Ô×!Ò! !Ñ$Ô$ˆÝ! " bÑ)Ô)Ð)Ð)Ð)r3   c                 ó  — t           j                             d¦  «        }d}|                     ||f¦  «        t          |¦  «        z                        |¦  «        }|                     |¦  «                             |¦  «        }t          d|¬¦  «        \  } |||¬¦  «        }t          t          |¦  «        |¦  «        }t          ||¦  «          |||d¬¦  «        }t          t          |¦  «        |¦  «        }t          ||¦  «          |||d¬¦  «        } |d¦  «        |t          |¦  «        t          |¦  «        f<   t          t          |¦  «        |¦  «        }t          ||¦  «          |||dd¬	¦  «        }t          t          |¦  «        j        |¦  «        }t          ||¦  «          |||dd
¬	¦  «        }t          t          |¦  «                             ¦   «         j        |¦  «        }t          ||¦  «         d S )Nrù   é   )Útrsvr$   rJ  rT   )rY   r—   rÃ   rK  rL  r   )r&   r  r  r   r  r   r   r	   r   r
   r   r×   rã   rM  s	            r1   Ú	test_trsvzTestFBLAS2Simple.test_trsvÄ  s×  € åŒi×#Ò# DÑ)Ô)ˆØˆØ�ZŠZ˜˜A˜ÑÔ¥ A¡¤Ñ&×.Ò.¨uÑ5Ô5ˆØ�JŠJ�q‰MŒM× Ò  Ñ'Ô'ˆÝ˜y°Ð6Ñ6Ô6‰ˆàˆT�A˜ˆ^‰^Œ^ˆÝ•4˜‘7”7˜AÑÔˆÝ! " bÑ)Ô)Ð)àˆT�A˜ !Ð$Ñ$Ô$ˆÝ•4˜‘7”7˜AÑÔˆÝ! " bÑ)Ô)Ð)àˆT�A˜ Ð#Ñ#Ô#ˆØ"' %¨¡(¤(ˆ�&�‰)Œ)•V˜A‘Y”YÐ
ÑÝ•4˜‘7”7˜AÑÔˆÝ! " bÑ)Ô)Ð)àˆT�A˜ ¨!Ð,Ñ,Ô,ˆÝ•4˜‘7”7”9˜aÑ Ô ˆÝ! " bÑ)Ô)Ð)àˆT�A˜ ¨!Ð,Ñ,Ô,ˆÝ•4˜‘7”7—<’<‘>”>Ô# QÑ'Ô'ˆÝ! " bÑ)Ô)Ð)Ð)Ð)r3   N)rd   re   rf   rM   r£   r©   r°   r´   r·   rà   ræ   rò   r÷   rA   rB   rG   ÚDTYPESr	  r  ÚREAL_DTYPESr_   r!  r,  r0  r:  r=  rD  rG  rN  rR  rg   r3   r1   r¥   r¥   ±   só  € € € € € ØÐ�e˜V VÑ,Ô,ð1ð 1ñ -Ô,ð1ð Ð�e˜U DÑ)Ô)ð
Dð 
Dñ *Ô)ð
Dð Ð�e˜V TÑ*Ô*ð@ð @ñ +Ô*ð@ð Ð�e˜V TÑ*Ô*ð@ð @ñ +Ô*ð@ð Ð�e˜U FÑ+Ô+ð0Jð 0Jñ ,Ô+ð0Jðd Ð�e˜U DÑ)Ô)ðJð Jñ *Ô)ðJð@ Ð�e˜V TÑ*Ô*ð'Mð 'Mñ +Ô*ð'MðR Ð�e˜V TÑ*Ô*ð.4ð .4ñ +Ô*ð.4ð` „[×Ò˜W fÑ-Ô-ð*ð *ñ .Ô-ð*ðB „[×Ò˜W fÑ-Ô-ð*ð *ñ .Ô-ð*ð< „[×Ò˜]ð -Ø	DÐ	D {°^Ñ'CÐ	DÑ	DÔ	Dð-à	6Ð	6 ~Ð	6Ñ	6Ô	6ð-ñ ô ð-ð -ñ	ô ð-ð6 „[×Ò˜]ð -Ø	CÐ	C k°NÑ&BÐ	CÑ	CÔ	Cð-à	5Ð	5 nÐ	5Ñ	5Ô	5ð-ñ ô ð+ð +ñ	ô ð+ð2 „[×Ò˜W fÑ-Ô-ð+ð +ñ .Ô-ð+ð4 „[×Ò˜W fÑ-Ô-ð#*ð #*ñ .Ô-ð#*ðJ „[×Ò˜W fÑ-Ô-ð#*ð #*ñ .Ô-ð#*ðJ „[×Ò˜W fÑ-Ô-ð*ð *ñ .Ô-ð*ð@ „[×Ò˜W fÑ-Ô-ð*ð *ñ .Ô-ð*ð@ „[×Ò˜W fÑ-Ô-ð*ð *ñ .Ô-ð*ð0 „[×Ò˜W fÑ-Ô-ð*ð *ñ .Ô-ð*ð *ð *r3   r¥   c                   ó:   — e Zd Z eedd¦  «        d„ ¦   «         ZdS )ÚTestFBLAS3Simpler#   rP   c           	      ó  — t           |ddgdg¦  «        dgg¦  «         t           |ddgdgddg¦  «        dg¦  «         |t          v rBt           |ddgdg¦  «        dgg¦  «         t           |ddgdgdd	g¦  «        d
g¦  «         d S d S r¨   r^   r`   s      r1   Ú	test_gemmzTestFBLAS3Simple.test_gemmã  s¹   € å! ! ! A¨ s¨R¨D¡/¤/°S°E°7Ñ;Ô;Ð;Ý! ! ! A¨ s¨R¨D°!°a°SÑ"9Ô"9¸C¸5ÑAÔAÐAØ•NÐ"Ð"Ý% a a¨¨T¨F°R°DÑ&9Ô&9¸W¸I¸;ÑGÔGÐGÝ% a a¨¨T¨F°R°D¸!¸b¸TÑ&BÔ&BÀWÀIÑNÔNÐNÐNÐNð #Ð"r3   N)rd   re   rf   rM   r£   rX  rg   r3   r1   rV  rV  â  sB   € € € € € ØÐ�e˜V VÑ,Ô,ðOð Oñ -Ô,ðOð Oð Or3   rV  c                   ó˜   — e Zd Zd„ Z eedd¦  «        d„ ¦   «         Z eedd¦  «        d„ ¦   «         Z eedd¦  «        d„ ¦   «         ZdS )ÚTestBLAS3Symmc                 óò   — t          j        ddgddgg¦  «        | _        t          j        g d¢g d¢g¦  «        | _        t          j        d¦  «        | _        t          j        g d¢g d¢g¦  «        | _        d S )	Nr¿   rÌ   ç        )r¿   r\  ç      @)r\  ç      ð¿rÌ   )r   rU   )rÌ   r^  g       @)r]  r\  g      "@)r&   ÚarrayrY   rß   r   r%   Út©ra   s    r1   Úsetup_methodzTestBLAS3Symm.setup_methodî  s„   € Ý”˜B ˜8Ø ˜8ð%ñ &ô &ˆŒå”˜<˜<˜<Ø(˜=˜=ð*ñ +ô +ˆŒå”˜‘”ˆŒÝ”˜=˜=˜=Ø'˜<˜<ð)ñ *ô *ˆŒˆˆr3   ÚsymmrP   c                 ój  —  || j         | j        | j        dd¬¦  «        }t          || j        ¦  «          || j         j        | j        d| j        dd¬¦  «        }t          || j        ¦  «          || j         | j        j        d| j        j        dd¬¦  «        }t          || j        j        ¦  «         d S )Nr¿   ©rY   rß   r%   rþ   rÿ   rT   ©rY   rß   rÃ   r%   rþ   rÿ   )rY   rß   Úsider%   rþ   rÿ   )rY   rß   r%   r   r`  r×   ©ra   r9   r   Úress       r1   Ú	test_symmzTestBLAS3Symm.test_symm÷  s±   € àˆa�$”&˜DœF d¤f°B¸RÐ@Ñ@Ô@ˆÝ! # t¤vÑ.Ô.Ð.àˆa�$”&”(˜dœf¨A°´¸rÈÐKÑKÔKˆÝ! # t¤vÑ.Ô.Ð.àˆa�$”&˜DœFœH¨1°´´Ø˜rð#ñ #ô #ˆå! # t¤v¤xÑ0Ô0Ð0Ð0Ð0r3   c                 óœ   — t          j        t          ¦  «        5   || j        | j        dd¬¦  «         ddd¦  «         dS # 1 swxY w Y   dS )z|`side=1` means C <- B*A, hence shapes of A and B are to be
        compatible. Otherwise, f2py exception is raised.
        rT   )rY   rß   rþ   rg  N)rA   r   rÙ   rY   rß   r`   s      r1   Útest_symm_wrong_sidez"TestBLAS3Symm.test_symm_wrong_side  s•   € õ Œ]�9Ñ%Ô%ð 	3ð 	3ØˆA�”˜$œ&¨°Ð2Ñ2Ô2Ð2ð	3ð 	3ð 	3ñ 	3ô 	3ð 	3ð 	3ð 	3ð 	3ð 	3ð 	3ð 	3øøøð 	3ð 	3ð 	3ð 	3ð 	3ð 	3s   šAÁAÁAc                 óô   —  || j         | j        | j        dd¬¦  «        }t          j        || j        ¦  «        sJ ‚ || j         | j        d| j        dd¬¦  «        }t          j        || j        ¦  «        rJ ‚dS )z°SYMM only considers the upper/lower part of A. Hence setting
        wrong value for `lower` (default is lower=0, meaning upper triangle)
        gives a wrong result.
        r¿   re  rT   rf  N)rY   rß   r%   r&   Úallcloser`  rh  s       r1   Útest_symm_wrong_uploz"TestBLAS3Symm.test_symm_wrong_uplo  s€   € ð ˆa�$”&˜DœF d¤f°B¸RÐ@Ñ@Ô@ˆÝŒ{˜3 ¤Ñ'Ô'Ð'Ð'Ð'Øˆa�$”&˜DœF¨!¨t¬v¸RÀbÐIÑIÔIˆÝ”;˜s D¤FÑ+Ô+Ð+Ð+Ð+Ð+Ð+r3   N)	rd   re   rf   rb  rM   r£   rj  rl  ro  rg   r3   r1   rZ  rZ  ì  s¤   € € € € € ð*ð *ð *ð Ð�e˜V VÑ,Ô,ð	1ð 	1ñ -Ô,ð	1ð Ð�e˜V VÑ,Ô,ð3ð 3ñ -Ô,ð3ð Ð�e˜V VÑ,Ô,ð,ð ,ñ -Ô,ð,ð ,ð ,r3   rZ  c                   ól   — e Zd Zd„ Z eedd¦  «        d„ ¦   «         Z eedd¦  «        d„ ¦   «         ZdS )ÚTestBLAS3Syrkc                 óÌ   — t          j        ddgddgddgg¦  «        | _        t          j        g d¢g d¢g d¢g¦  «        | _        t          j        d	d
gd
dgg¦  «        | _        d S )Nr¿   r\  ç       ÀrÌ   r]  )r¿   r\  rÌ   )r\  ç      @ç      À)rÌ   ru  ç      *@ç      @ç      @rv  )r&   r_  rY   r`  Úttra  s    r1   rb  zTestBLAS3Syrk.setup_method  s‡   € Ý”˜B ˜8Ø ˜9Ø ˜8ð%ñ &ô &ˆŒõ ”˜<˜<˜<Ø(˜=˜=Ø)˜>˜>ð+ñ ,ô ,ˆŒõ ”(˜R ˜HØ ˜Ið'ñ (ô (ˆŒˆˆr3   ÚsyrkrP   c                 ó¨  —  || j         d¬¦  «        }t          t          j        |¦  «        t          j        | j        ¦  «        ¦  «          || j         dd¬¦  «        }t          t          j        |¦  «        t          j        | j        ¦  «        ¦  «         t          j        | j        j        ¦  «        } || j         dd|¬¦  «        }t          t          j        |¦  «        t          j        | j        |z   ¦  «        ¦  «          || j         dd¬¦  «        }t          t          j        |¦  «        t          j        | j        ¦  «        ¦  «         d S )Nr¿   ©rY   rþ   rT   )rY   rþ   rÃ   )rY   rþ   rÿ   r%   )rY   rþ   r   )	rY   r   r&   r	   r`  r
   r   Úshapery  ©ra   r9   r   r%   Úc0s        r1   Ú	test_syrkzTestBLAS3Syrk.test_syrk#  s  € àˆA�”˜bÐ!Ñ!Ô!ˆÝ!¥"¤'¨!¡*¤*­b¬g°d´f©o¬oÑ>Ô>Ð>àˆA�”˜b¨Ð*Ñ*Ô*ˆÝ!¥"¤'¨!¡*¤*­b¬g°d´f©o¬oÑ>Ô>Ð>åŒW�T”V”\Ñ"Ô"ˆØˆA�”˜b r¨RÐ0Ñ0Ô0ˆÝ!¥"¤'¨!¡*¤*­b¬g°d´f¸R±iÑ.@Ô.@ÑAÔAÐAàˆA�”˜b¨Ð*Ñ*Ô*ˆÝ!¥"¤'¨!¡*¤*­b¬g°d´gÑ.>Ô.>Ñ?Ô?Ð?Ð?Ð?r3   c                 ó´   — t          j        t          ¦  «        5   || j        dt	          j        d¦  «        ¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr¿   )rW   rn   )rY   rþ   r%   )rA   r   rÙ   rY   r&   r   r`   s      r1   Útest_syrk_wrong_czTestBLAS3Syrk.test_syrk_wrong_c4  s™   € õ Œ]�9Ñ%Ô%ð 	5ð 	5ØˆA�”˜b¥B¤G¨F¡O¤OÐ4Ñ4Ô4Ð4ð	5ð 	5ð 	5ñ 	5ô 	5ð 	5ð 	5ð 	5ð 	5ð 	5ð 	5ð 	5øøøð 	5ð 	5ð 	5ð 	5ð 	5ð 	5s   š&AÁAÁAN)rd   re   rf   rb  rM   r£   r€  r‚  rg   r3   r1   rq  rq    s|   € € € € € ð(ð (ð (ð Ð�e˜V VÑ,Ô,ð@ð @ñ -Ô,ð@ð  Ð�e˜V VÑ,Ô,ð5ð 5ñ -Ô,ð5ð 5ð 5r3   rq  c                   ól   — e Zd Zd„ Z eedd¦  «        d„ ¦   «         Z eedd¦  «        d„ ¦   «         ZdS )ÚTestBLAS3Syr2kc                 ó  — t          j        ddgddgddgg¦  «        | _        t          j        ddgddgddgg¦  «        | _        t          j        g d¢g d¢g d	¢g¦  «        | _        t          j        ddgdd
gg¦  «        | _        d S )Nr¿   r\  rs  rÌ   r]  r   )r\  r^  r]  )r^  r\  r\  )r]  r\  rx  r‘   )r&   r_  rY   rß   r`  ry  ra  s    r1   rb  zTestBLAS3Syr2k.setup_method=  sµ   € Ý”˜B ˜8Ø ˜9Ø ˜8ð%ñ &ô &ˆŒõ ”˜B ˜8Ø ˜8Ø˜r˜7ð$ñ %ô %ˆŒõ ”˜=˜=˜=Ø(˜=˜=Ø'˜<˜<ð)ñ *ô *ˆŒõ ”(˜R ˜HØ ˜Gð%ñ &ô &ˆŒˆˆr3   Úsyr2krP   c                 óØ  —  || j         | j        d¬¦  «        }t          t          j        |¦  «        t          j        | j        ¦  «        ¦  «          || j         | j        dd¬¦  «        }t          t          j        |¦  «        t          j        | j        ¦  «        ¦  «         t          j        | j        j        ¦  «        } || j         | j        dd|¬¦  «        }t          t          j        |¦  «        t          j        | j        |z   ¦  «        ¦  «          || j         | j        dd¬¦  «        }t          t          j        |¦  «        t          j        | j	        ¦  «        ¦  «         d S )Nr¿   ©rY   rß   rþ   rT   )rY   rß   rþ   rÃ   )rY   rß   rþ   rÿ   r%   )rY   rß   rþ   r   )
rY   rß   r   r&   r	   r`  r
   r   r}  ry  r~  s        r1   Ú
test_syr2kzTestBLAS3Syr2k.test_syr2kJ  s  € àˆA�”˜$œ&¨Ð+Ñ+Ô+ˆÝ!¥"¤'¨!¡*¤*­b¬g°d´f©o¬oÑ>Ô>Ð>àˆA�”˜$œ&¨°!Ð4Ñ4Ô4ˆÝ!¥"¤'¨!¡*¤*­b¬g°d´f©o¬oÑ>Ô>Ð>åŒW�T”V”\Ñ"Ô"ˆØˆA�”˜$œ&¨°°rÐ:Ñ:Ô:ˆÝ!¥"¤'¨!¡*¤*­b¬g°d´f¸R±iÑ.@Ô.@ÑAÔAÐAàˆA�”˜$œ&¨°!Ð4Ñ4Ô4ˆÝ!¥"¤'¨!¡*¤*­b¬g°d´gÑ.>Ô.>Ñ?Ô?Ð?Ð?Ð?r3   c           	      óÀ   — t          j        t          ¦  «        5   || j        | j        dt          j        d¦  «        ¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr¿   )rP  rn   )rY   rß   rþ   r%   )rA   r   rÙ   rY   rß   r&   r   r`   s      r1   Útest_syr2k_wrong_cz!TestBLAS3Syr2k.test_syr2k_wrong_cZ  s±   € åŒ]�9Ñ%Ô%ð 	Að 	AØˆA�”˜$œ&¨­b¬h°wÑ.?Ô.?Ð@Ñ@Ô@Ð@ð	Að 	Að 	Añ 	Aô 	Að 	Að 	Að 	Að 	Að 	Að 	Að 	Aøøøð 	Að 	Að 	Að 	Að 	Að 	As   š,AÁAÁAN)rd   re   rf   rb  rM   r£   r‰  r‹  rg   r3   r1   r„  r„  <  s�   € € € € € ð&ð &ð &ð Ð�e˜W fÑ-Ô-ð@ð @ñ .Ô-ð@ð Ð�e˜W fÑ-Ô-ðAð Añ .Ô-ðAð Að Ar3   r„  c                   ó   — e Zd ZdZd„ Z eedd¦  «        d„ ¦   «         Z eedd¦  «        d„ ¦   «         Z eedd¦  «        d	„ ¦   «         Z	 eed
d¦  «        d„ ¦   «         Z
 eedd¦  «        d„ ¦   «         Z eedd¦  «        d„ ¦   «         ZdS )ÚTestSyHez2Quick and simple tests for (zc)-symm, syrk, syr2k.c                 óD   — t          j        ddgddgg¦  «        | _        d S )Nr\  y       €      ð¿r®   )r&   r_  Úsigma_yra  s    r1   rb  zTestSyHe.setup_methodd  s+   € Ý”x " d Ø"% r ð!,ñ -ô -ˆŒˆˆr3   rc  Úzcc                 ó¢   —  || j         | j         d¬¦  «        }t          t          j        |¦  «        t          j        ddg¦  «        ¦  «         d S )Nr¿   rˆ  rT   rV   ©r�  r   r&   r	   r   rh  s       r1   rj  zTestSyHe.test_symmh  sJ   € ð ˆa�$”, $¤,°bÐ9Ñ9Ô9ˆÝ!¥"¤'¨#¡,¤,µ´¸¸B¸Ñ0@Ô0@ÑAÔAÐAÐAÐAr3   Úhemmc                 ó¢   —  || j         | j         d¬¦  «        }t          t          j        |¦  «        t          j        ddg¦  «        ¦  «         d S )Nr¿   rˆ  rT   r’  rh  s       r1   Ú	test_hemmzTestSyHe.test_hemmn  sH   € ð ˆa�$”, $¤,°bÐ9Ñ9Ô9ˆÝ!¥"¤'¨#¡,¤,µ´¸¸A¸±´Ñ@Ô@Ð@Ð@Ð@r3   rz  c                 ó–   —  || j         d¬¦  «        }t          t          j        |¦  «        t          j        ddg¦  «        ¦  «         d S )Nr¿   r|  rV   r’  rh  s       r1   r€  zTestSyHe.test_syrkt  sD   € àˆa�$”, bÐ)Ñ)Ô)ˆÝ!¥"¤'¨#¡,¤,µ´¸¸R¸Ñ0AÔ0AÑBÔBÐBÐBÐBr3   Úherkc                 ó–   —  || j         d¬¦  «        }t          t          j        |¦  «        t          j        ddg¦  «        ¦  «         d S )Nr¿   r|  rT   r’  rh  s       r1   Ú	test_herkzTestSyHe.test_herky  sB   € àˆa�$”, bÐ)Ñ)Ô)ˆÝ!¥"¤'¨#¡,¤,µ´¸¸A¸±´Ñ@Ô@Ð@Ð@Ð@r3   r†  c                 ó¨   —  || j         | j         d¬¦  «        }t          t          j        |¦  «        dt          j        ddg¦  «        z  ¦  «         d S )Nr¿   rˆ  rÌ   rV   r’  rh  s       r1   Útest_syr2k_zrzTestSyHe.test_syr2k_zr~  sM   € àˆa�$”, $¤,°bÐ9Ñ9Ô9ˆÝ!¥"¤'¨#¡,¤,°µ2´7¸BÀ¸8Ñ3DÔ3DÑ0DÑEÔEÐEÐEÐEr3   Úher2kc                 ó¨   —  || j         | j         d¬¦  «        }t          t          j        |¦  «        dt          j        ddg¦  «        z  ¦  «         d S )Nr¿   rˆ  rÌ   rT   r’  rh  s       r1   Útest_her2k_zrzTestSyHe.test_her2k_zrƒ  sK   € àˆa�$”, $¤,°bÐ9Ñ9Ô9ˆÝ!¥"¤'¨#¡,¤,°µ2´7¸A¸q¸6±?´?Ñ0BÑCÔCÐCÐCÐCr3   N)rd   re   rf   Ú__doc__rb  rM   r£   rj  r•  r€  r™  r›  rž  rg   r3   r1   r�  r�  a  s?  € € € € € Ø<Ð<ð-ð -ð -ð Ð�e˜V TÑ*Ô*ðBð Bñ +Ô*ðBð
 Ð�e˜V TÑ*Ô*ðAð Añ +Ô*ðAð
 Ð�e˜V TÑ*Ô*ðCð Cñ +Ô*ðCð Ð�e˜V TÑ*Ô*ðAð Añ +Ô*ðAð Ð�e˜W dÑ+Ô+ðFð Fñ ,Ô+ðFð Ð�e˜W dÑ+Ô+ðDð Dñ ,Ô+ðDð Dð Dr3   r�  c                   óä   — e Zd ZdZd„ Zej                             de¦  «        d„ ¦   «         Z	 e
edd¦  «        d„ ¦   «         Z e
edd¦  «        d„ ¦   «         Z e
edd¦  «        d	„ ¦   «         Zd
S )ÚTestTRMMz!Quick and simple tests for *trmm.c                 ó$  — t          j        ddgddgg¦  «        | _        t          j        g d¢g d¢g¦  «        | _        t          j        g d¢g d¢g d¢g d	¢gd
¬¦  «        | _        t          j        ddgddgddgddgddggd
¬¦  «        | _        d S )Nr¿   rÌ   rs  ©r]  rt  r^  ©rw  rx  rs  )rT   rT   r   rU   )r   rT   rm   rW   )r   r   rT   r‘   )r   r   r   rT   r9   )r   rT   rm   r   rW   rU   r‘   rZ   rn   r[   r’   )r&   r_  rY   rß   Úa2Úb2ra  s    r1   rb  zTestTRMM.setup_methodŒ  sÍ   € Ý”˜B ˜:Ø ˜9ð&ñ 'ô 'ˆŒå”˜=˜=˜=Ø(˜=˜=ð*ñ +ô +ˆŒõ ”(˜L˜L˜LØ(˜L˜LØ(˜L˜LØ(˜L˜Lð*ð 25ð6ñ 6ô 6ˆŒõ ”(˜Q ˜F Q¨ F¨Q°¨F°Q¸°F¸QÀ¸GÐDØ!$ð&ñ &ô &ˆŒˆˆr3   r   c           	      óš  — t          d|¬¦  «        }t          t          |d| j        | j        ¦  «          |d| j                             |¦  «        | j                             |¦  «        d¬¦  «        }| j        j        d         }t          || j        | j        d |…d |…f         z  ddt          j	        |¦  «        j
        z  ¬¦  «         d S )	NÚtrmmr$   r¿   rT   )rg  r\  éd   )rÁ   Úatol)r   rØ   rÙ   r¥  r¦  r  r}  r   r&   rÕ   rÖ   )ra   r   r¨  ri  r  s        r1   Ú	test_sidezTestTRMM.test_side™  sÊ   € å˜f¨EÐ2Ñ2Ô2ˆå•i  s¨D¬G°T´WÑ=Ô=Ð=Øˆd�3˜œŸš uÑ-Ô-¨t¬w¯~ª~¸eÑ/DÔ/DØðñ ô ˆàŒGŒM˜!ÔˆÝ˜˜TœW t¤w¨r°¨r°2°A°2¨v¤Ñ6¸RØ ¥¤¨%¡¤Ô!4Ñ4ð	6ñ 	6ô 	6ð 	6ð 	6ð 	6r3   r¨  rP   c                 óˆ   —  |d| j         | j        ¦  «        }t          j        g d¢g d¢g¦  «        }t	          ||¦  «         d S )Nr¿   )rv  g      0@g      Àr¤  ©rY   rß   r&   r_  r   ©ra   r9   r   ÚresultÚexpecteds        r1   Útest_abzTestTRMM.test_ab¤  sR   € à��2�t”v˜tœvÑ&Ô&ˆå”8˜_˜_˜_Ø,˜_˜_ð.ñ /ô /ˆå! &¨(Ñ3Ô3Ð3Ð3Ð3r3   c                 óŒ   —  |d| j         | j        d¬¦  «        }t          j        g d¢g d¢g¦  «        }t	          ||¦  «         d S )Nr¿   TrÂ   r£  )r^  rs  r\  r­  r®  s        r1   Útest_ab_lowerzTestTRMM.test_ab_lower¬  sW   € à��2�t”v˜tœv¨TÐ2Ñ2Ô2ˆÝ”8˜_˜_˜_Ø,˜_˜_ð.ñ /ô /ˆå! &¨(Ñ3Ô3Ð3Ð3Ð3r3   c                 óÜ  — | j                              |¦  «        }dD ]_}|                     ¦   «         } |d| j        ||¬¦  «        }|j        j        rJ ‚t          j        ||¦  «        rJ ‚t          ||¦  «         Œ`t          j	        |                     ¦   «         ¦  «        } |d| j        |d¬¦  «        }|j        j        sJ ‚t          j        ||¦  «        sJ ‚t          ||¦  «         d S )N)TFr¿   )Úoverwrite_bT)rß   r  rk   rY   ÚflagsÚf_contiguousr&   Úmay_share_memoryr   Úasfortranarrayr   )ra   r9   r   rß   ÚoverwrÚbcopyr¯  s          r1   Útest_b_overwriteszTestTRMM.test_b_overwrites³  sü   € ð ŒF�MŠM˜%Ñ Ô ˆØ#ð 	#ð 	#ˆFØ—F’F‘H”HˆEØ�Q�r˜4œ6 5°fÐ=Ñ=Ô=ˆFà”{Ô/Ð/Ð/Ð/ÝÔ*¨5°&Ñ9Ô9Ð9Ð9Ð9Ý˜ Ñ"Ô"Ð"Ð"åÔ! !§&¢&¡(¤(Ñ+Ô+ˆØ��2�t”v˜u°$Ð7Ñ7Ô7ˆØŒ{Ô'Ð'Ð'Ð'ÝÔ" 5¨&Ñ1Ô1Ð1Ð1Ð1Ý! %¨Ñ0Ô0Ð0Ð0Ð0r3   N)rd   re   rf   rŸ  rb  rA   rB   rG   rS  r«  rM   r£   r±  r³  r¼  rg   r3   r1   r¡  r¡  ‰  sØ   € € € € € Ø+Ð+ð&ð &ð &ð „[×Ò˜W fÑ-Ô-ð6ð 6ñ .Ô-ð6ð Ð�e˜V VÑ,Ô,ð4ð 4ñ -Ô,ð4ð Ð�e˜V VÑ,Ô,ð4ð 4ñ -Ô,ð4ð Ð�e˜V VÑ,Ô,ð1ð 1ñ -Ô,ð1ð 1ð 1r3   r¡  r   c                 óp  — t           j                             d¦  «        }t          j        | ¦  «        j        dz  }t          d| ¬¦  «        \  }|                     d¦  «                             | ¦  «        }|                     d¦  «                             | ¦  «        } | d¦  «        }t          t          ||||¦  «         t          t          |||j	        |¦  «         d}d	} | d
¦  «        }| t          v rC|                     ||f¦  «        |                     ||f¦  «        dz  z   t          |¦  «        z   }n'|                     ||f¦  «        t          |¦  «        z   }|                     | ¦  «        }t          |¦  «        }	t          |¦  «        }
|                     ||f¦  «                             | ¦  «        }|                     ||f¦  «                             | ¦  «        } ||||¬¦  «        }t          |j        |j        ¦  «         t!          |	||z  ¦  «        }t#          |||¬¦  «          ||||d¬¦  «        }t!          |	j	        ||z  ¦  «        }t#          |||¬¦  «          ||||d¬¦  «        }t!          |	                     ¦   «         j	        ||z  ¦  «        }t#          |||¬¦  «          ||||d¬¦  «        } | d¦  «        |	t'          |¦  «        t'          |¦  «        f<   t!          |	||z  ¦  «        }t#          |||¬¦  «          ||||dd¬¦  «        }t!          |	                     ¦   «         j	        ||                     ¦   «         j	        z  ¦  «        }t#          ||                     ¦   «         j	        |¬¦  «          ||||ddd¬¦  «        } | d¦  «        |
t'          |¦  «        t'          |¦  «        f<   t!          |
                     ¦   «         j	        ||                     ¦   «         j	        z  ¦  «        }t#          ||                     ¦   «         j	        |¬¦  «         d S )Nrù   iè  )Útrsmr$   )rm   rW   rÉ   rT   rn   rZ   g      Àr®   )rþ   rY   rß   )rª  )rþ   rY   rß   Útrans_ar   )rþ   rY   rß   r   )rþ   rY   rß   r   rg  )rþ   rY   rß   r   rg  rÃ   )r&   r  r  rÕ   rÖ   r   r  rØ   rÙ   r×   r_   r   r	   r
   r   r}  r   r   rã   r   )r   r  Útolr  r  ÚBrþ   rÇ   rû   ÚAuÚAlÚB1ÚB2r™   Úx2s                  r1   Ú	test_trsmrÇ  Ç  sÒ  € å
Œ)×
Ò
 Ñ
%Ô
%€CÝ
Œ(�5‰/Œ/Ô
˜dÑ
"€CÝ˜9¨EÐ2Ñ2Ô2�E€Dð 	�
Š
�6ÑÔ×!Ò! %Ñ(Ô(€AØ�
Š
�6ÑÔ×!Ò! %Ñ(Ô(€AØˆE�!‰HŒH€EÝ•)˜T 5¨!¨QÑ/Ô/Ð/Ý•)˜T 5¨!¬#¨qÑ1Ô1Ð1à	€AØ	€AØˆE�$‰KŒK€EØ•ÐÐØ�ZŠZ˜˜A˜ÑÔ #§*¢*¨a°¨VÑ"4Ô"4°RÑ"7Ñ7½3¸q¹6¼6ÑAˆˆà�JŠJ˜˜1�vÑÔ¥ Q¡¤Ñ'ˆØ	�Š�‰Œ€AÝ	ˆa‰Œ€BÝ	ˆa‰Œ€BØ	�Š�Q˜�FÑ	Ô	×	"Ò	" 5Ñ	)Ô	)€BØ	�Š�Q˜�FÑ	Ô	×	"Ò	" 5Ñ	)Ô	)€Bà	ˆ�E˜Q "Ð	%Ñ	%Ô	%€BÝ�”˜2œ8Ñ$Ô$Ð$Ý	ˆr�5˜‘8Ñ	Ô	€BÝ�B˜ Ð%Ñ%Ô%Ð%à	ˆ�E˜Q "¨aÐ	0Ñ	0Ô	0€BÝ	ˆrŒt�U˜2‘XÑ	Ô	€BÝ�B˜ Ð%Ñ%Ô%Ð%à	ˆ�E˜Q "¨aÐ	0Ñ	0Ô	0€BÝ	ˆr�wŠw‰yŒyŒ{˜E "™HÑ	%Ô	%€BÝ�B˜ Ð%Ñ%Ô%Ð%à	ˆ�E˜Q "¨1Ð	-Ñ	-Ô	-€BØ$˜u Q™xœx€B…vˆa�y„y•&˜‘)”)ÐÑÝ	ˆr�5˜‘8Ñ	Ô	€BÝ�B˜ Ð%Ñ%Ô%Ð%à	ˆ�E˜Q "¨1°1Ð	5Ñ	5Ô	5€BÝ	ˆr�wŠw‰yŒyŒ{˜E "§'¢'¡)¤)¤+Ñ-Ñ	.Ô	.€BÝ�B˜Ÿš™	œ	œ¨#Ð.Ñ.Ô.Ð.à	ˆ�E˜Q "¨1°1¸AÐ	>Ñ	>Ô	>€BØ$˜u Q™xœx€B…vˆa�y„y•&˜‘)”)ÐÑÝ	ˆr�wŠw‰yŒyŒ{˜E "§'¢'¡)¤)¤+Ñ-Ñ	.Ô	.€BÝ�B˜Ÿš™	œ	œ¨#Ð.Ñ.Ô.Ð.Ð.Ð.r3   Fzgh-16930)Úrunr>   c                  óÆ   — t          j        dd¦  «        } t          j        j                             | ddd¦  «        }t          j        d¦  «        }t          ||¦  «         d S )Nr’   r[   rW   rU   rV   iô  )	r&   ÚrepeatÚscipyÚlinalgÚblasÚdnrm2rŠ   r‹   r   )r—   Úactualr°  s      r1   Útest_gh_169309rÐ  ý  sV   € õ 	Œ	�"�aÑÔ€AÝŒ\Ô×$Ò$ Q¨¨1¨bÑ1Ô1€FÝŒy˜‰~Œ~€HÝ�F˜HÑ%Ô%Ð%Ð%Ð%r3   c                  óæ   — t          j        dd¦  «        } d}t          t          j        ¦  «        5  t
          j        j                             | dd|¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr’   r[   rV   rW   rU   )	r&   rÊ  rØ   r£   Ú__fblas_errorrË  rÌ  rÍ  rÎ  )r—   rÅ   s     r1   Útest_dnrm2_neg_incxrÓ    s®   € õ 	Œ	�"�aÑÔ€AØ€DÝ	•uÔ*Ñ	+Ô	+ð /ð /ÝŒÔ×Ò  1 a¨Ñ.Ô.Ð.ð/ð /ð /ñ /ô /ð /ð /ð /ð /ð /ð /ð /øøøð /ð /ð /ð /ð /ð /s   ±(A&Á&A*Á-A*)8rŠ   rA   Únumpyr&   Únumpy.testingr   r   r   r   r   rØ   r   r	   r
   r   r   r   r   r   r   r   rË  Úscipy.linalgr   r£   r   r   r   r   r    ÚImportErrorrD   r-   rT  r(   r)   r_   rS  r2   r<   rM   rO   ri   r¥   rV  rZ  rq  r„  r�  r¡  rB   rG   rÇ  ÚxfailrÐ  rÓ  rg   r3   r1   ú<module>rÙ     sË  ðð
 €€€Ø €€€Ø Ð Ð Ð ðGð Gð Gð Gð Gð Gð Gð Gð Gð Gð Gð Gà *Ð *Ð *Ð *Ð *Ð *ð/ð /ð /ð /ð /ð /ð /ð /ð /ð /ð /ð /ð /ð /ð /ð /ð /ð /ð /ð /ð /ð /ð /ð /ð €€€Ø IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IðØ,Ð,Ð,Ð,Ð,Ð,Ð,øØð ð ð Ø€E€E€Eðøøøð Œz˜2œ:Ð&€Ø”, ¤Ð.€Ø	�~Ñ	%€ð$#ð $#ð $#ðNð ð ð6ð 6ð 6ð*6ð 6ð 6ð 6ð 6ñ 6ô 6ð 6ð?.ð ?.ð ?.ð ?.ð ?.ñ ?.ô ?.ð ?.ðHn*ð n*ð n*ð n*ð n*ñ n*ô n*ð n*ðbOð Oð Oð Oð Oñ Oô Oð Oð),ð ),ð ),ð ),ð ),ñ ),ô ),ð ),ðX 5ð  5ð  5ð  5ð  5ñ  5ô  5ð  5ðH!Að !Að !Að !Að !Añ !Aô !Að !AðJ%Dð %Dð %Dð %Dð %Dñ %Dô %Dð %DðP;1ð ;1ð ;1ð ;1ð ;1ñ ;1ô ;1ð ;1ð| „×Ò˜ &Ñ)Ô)ð2/ð 2/ñ *Ô)ð2/ðj „×Ò�uØ$ð ñ &ô &ð&ð &ñ&ô &ð&ð/ð /ð /ð /ð /s   ÁA ÁAÁA