§
    fŠtj  ã                   ó¤  — d dl Z d dlZd dlZd dlZd dlmZ d dlmZ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 e j                             e j                             e¦  «        d¦  «        Zd„ Zd„ Zd„ Zd	„ Zd
„ Zd„ Z ej!         "                    dd dg¦  «        ej!         "                    dg d¢¦  «        d„ ¦   «         ¦   «         Z#d„ Z$d„ Z%d„ Z&dS )é    N)Úraises)Úassert_equalÚassert_)ÚsparrayÚ	csr_arrayÚ	coo_arrayÚsave_npzÚload_npzÚ
csc_matrixÚ
csr_matrixÚ
bsr_matrixÚ
dia_matrixÚ
coo_matrixÚ
dok_matrixÚdatac                 óú   — t          j        d¬¦  «        \  }}t          j        |¦  «         	 t	          || ¦  «         t          |¦  «        }t          j        |¦  «         n# t          j        |¦  «         w xY w|S )Nú.npz©Úsuffix)ÚtempfileÚmkstempÚosÚcloser	   r
   Úremove)ÚmatrixÚfdÚtmpfileÚloaded_matrixs       ú_/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/scipy/sparse/tests/test_matrix_io.pyÚ_save_and_loadr       sw   € ÝÔ"¨&Ð1Ñ1Ô1�K€BˆÝ„HˆR�L„L€LðÝ�˜&Ñ!Ô!Ð!Ý  Ñ)Ô)ˆå
Œ	�'ÑÔÐÐø�Œ	�'ÑÔÐÐøøøØÐs   ®A" Á"A8c                 ót  — t           t          t          t          t          fD ]–} || ¦  «        }t          |¦  «        }t          t          |¦  «        |u ¦  «         t          |j        | j        k    ¦  «         t          |j	        | j	        k    ¦  «         t          |                     ¦   «         | ¦  «         Œ—d S )N)r   r   r   r   r   r    r   ÚtypeÚshapeÚdtyper   Útoarray)Údense_matrixÚmatrix_classr   r   s       r   Ú_check_save_and_loadr(      s®   € Ý#¥Zµ½ZÍÐTð <ð <ˆØ�˜lÑ+Ô+ˆÝ& vÑ.Ô.ˆÝ•�]Ñ#Ô# |Ð3Ñ4Ô4Ð4Ý�Ô# |Ô'9Ò9Ñ:Ô:Ð:Ý�Ô# |Ô'9Ò9Ñ:Ô:Ð:Ý�]×*Ò*Ñ,Ô,¨lÑ;Ô;Ð;Ð;ð<ð <ó    c                  óº   — d} t           j                             d¦  «         t           j                             | | f¦  «        }d||dk    <   t          |¦  «         d S )Né
   r   gffffffæ?)ÚnpÚrandomÚseedr(   )ÚNr&   s     r   Útest_save_and_load_randomr0   $   sW   € Ø
€AÝ„I‡N‚N�1ÑÔÐÝ”9×#Ò# Q¨ FÑ+Ô+€LØ'(€L� Ò#Ñ$Ý˜Ñ&Ô&Ð&Ð&Ð&r)   c                  óL   — t          j        d¦  «        } t          | ¦  «         d S )N©é   é   ©r,   Úzerosr(   ©r&   s    r   Útest_save_and_load_emptyr8   +   s#   € Ý”8˜E‘?”?€LÝ˜Ñ&Ô&Ð&Ð&Ð&r)   c                  óV   — t          j        d¦  «        } d| d<   t          | ¦  «         d S )Nr2   é   )r:   é   r5   r7   s    r   Útest_save_and_load_one_entryr<   /   s-   € Ý”8˜E‘?”?€LØ€L�ÑÝ˜Ñ&Ô&Ð&Ð&Ð&r)   c                  ó8  — t          j        d¬¦  «        \  } }t          j        | ¦  «         	 t	          |t          g d¢g d¢g¦  «        ¦  «         t          |¦  «        }t          j        |¦  «         n# t          j        |¦  «         w xY wt          j        d¬¦  «        \  } }t          j        | ¦  «         	 t	          |t          g d¢g d¢g¦  «        ¦  «         t          |¦  «        }t          j        |¦  «         n# t          j        |¦  «         w xY wt          |t          ¦  «        rJ ‚t          |t          ¦  «        sJ ‚t          |j        |j        k    ¦  «         t          |                     ¦   «         |                     ¦   «         ¦  «         d S )Nr   r   )ç333333ó?r   gÍÌÌÌÌÌì?)r   g333333Ó?r   )r   r   r   r   r	   r   r
   r   r   Ú
isinstancer   r   r$   r   r%   )r   r   r   Úloaded_arrays       r   Útest_sparray_vs_spmatrixrA   4   s  € åÔ"¨&Ð1Ñ1Ô1�K€BˆÝ„HˆR�L„L€LðÝ��* m m m°[°[°[Ð%AÑBÔBÑCÔCÐCÝ  Ñ)Ô)ˆå
Œ	�'ÑÔÐÐø�Œ	�'ÑÔÐÐøøøõ Ô"¨&Ð1Ñ1Ô1�K€BˆÝ„HˆR�L„L€LðÝ��) ] ] ]°K°K°KÐ$@ÑAÔAÑBÔBÐBÝ Ñ(Ô(ˆå
Œ	�'ÑÔÐÐø�Œ	�'ÑÔÐÐøøøå˜-­Ñ1Ô1Ð1Ð1Ð1Ý�l¥GÑ,Ô,Ð,Ð,Ð,ÝˆMÔ <Ô#5Ò5Ñ6Ô6Ð6Ý�×&Ò&Ñ(Ô(¨,×*>Ò*>Ñ*@Ô*@ÑAÔAÐAÐAÐAs   ®2A5 Á5BÂ;2D ÄDÚvaluer>   Úndim)r:   r;   é   c                 ó  — t          |g¦  «                             d| z  ¦  «        }t          j        d¬¦  «        \  }}t	          j        |¦  «         	 t          ||¦  «         t          |¦  «        }t	          j        |¦  «         n# t	          j        |¦  «         w xY wt          |t           ¦  «        sJ ‚t          |j        |j        k    ¦  «         t          |                     ¦   «         |                     ¦   «         ¦  «         d S )N)r:   r   r   )r   Úreshaper   r   r   r   r	   r
   r   r?   r   r#   r   r%   )rC   rB   ÚAr   r   Úloaded_As         r   Útest_nd_coo_formatrI   L   sí   € õ 	�5�'ÑÔ×"Ò" 4¨$¡;Ñ/Ô/€Aõ Ô"¨&Ð1Ñ1Ô1�K€BˆÝ„HˆR�L„L€LðÝ�˜!ÑÔÐÝ˜GÑ$Ô$ˆå
Œ	�'ÑÔÐÐø�Œ	�'ÑÔÐÐøøøå�h¥	Ñ*Ô*Ð*Ð*Ð*ÝˆHŒN˜aœgÒ%Ñ&Ô&Ð&Ý�—’‘”˜h×.Ò.Ñ0Ô0Ñ1Ô1Ð1Ð1Ð1s   ÁB ÂBc                  óF  —  G d„ d¦  «        } t          j        d¬¦  «        \  }}t          j        |¦  «         	 t	          j        | | ¦   «         ¬¦  «         t          t          t          |¦  «         t          j	        |¦  «         d S # t          j	        |¦  «         w xY w)Nc                   ó   — e Zd Zd„ ZdS )ú%test_malicious_load.<locals>.Executorc                 ó   — t           dfS )N)Fzunexpected code execution)r   )Úselfs    r   Ú
__reduce__z0test_malicious_load.<locals>.Executor.__reduce__`   s   € ÝÐAÐBÐBr)   N)Ú__name__Ú
__module__Ú__qualname__rO   © r)   r   ÚExecutorrL   _   s(   € € € € € ð	Cð 	Cð 	Cð 	Cð 	Cr)   rT   r   r   )Úformat)
r   r   r   r   r,   ÚsavezÚassert_raisesÚ
ValueErrorr
   r   )rT   r   r   s      r   Útest_malicious_loadrY   ^   s¸   € ðCð Cð Cð Cð Cñ Cô Cð Cõ Ô"¨&Ð1Ñ1Ô1�K€BˆÝ„HˆR�L„L€LðÝ
Œ�  ¡¤Ð,Ñ,Ô,Ð,õ 	•j¥(¨GÑ4Ô4Ð4å
Œ	�'ÑÔÐÐÐø�Œ	�'ÑÔÐÐøøøs   »9B
 Â
B c                  óÀ  — t          t          j                             t          d¦  «        ¦  «        } t          t          j                             t          d¦  «        ¦  «        }t          dgg¦  «        }t          |                      ¦   «         |                     ¦   «         ¦  «         t          |                     ¦   «         |                     ¦   «         ¦  «         d S )Nzcsc_py2.npzzcsc_py3.npzr   )r
   r   ÚpathÚjoinÚDATA_DIRr   r   r%   )ÚaÚbÚcs      r   Útest_py23_compatibilityra   n   s•   € õ
 	•”—’�h¨Ñ6Ô6Ñ7Ô7€AÝ•”—’�h¨Ñ6Ô6Ñ7Ô7€AÝ�Q�C�5ÑÔ€Aå�—’‘”˜aŸiši™kœkÑ*Ô*Ð*Ý�—’‘”˜aŸiši™kœkÑ*Ô*Ð*Ð*Ð*r)   c                  óf   — t          d¦  «        } d| d<   t          t          t          d| ¦  «         d S )N)r;   rD   r:   )r   r:   zx.npz)r   rW   ÚNotImplementedErrorr	   )Úxs    r   Útest_implemented_errorre   z   s5   € õ 	�5ÑÔ€AØ€A€c�FåÕ%¥x°¸!Ñ<Ô<Ð<Ð<Ð<r)   )'r   Únumpyr,   r   Úpytestr   rW   Únumpy.testingr   r   Úscipy.sparser   r   r   r	   r
   r   r   r   r   r   r   r[   r\   ÚdirnameÚ__file__r]   r    r(   r0   r8   r<   rA   ÚmarkÚparametrizerI   rY   ra   re   rS   r)   r   ú<module>rn      sä  ðØ 	€	€	€	Ø Ð Ð Ð Ø €€€à €€€Ø *Ð *Ð *Ð *Ð *Ð *Ø /Ð /Ð /Ð /Ð /Ð /Ð /Ð /ð2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð 2ð
 Œ7�<Š<˜œŸš¨Ñ1Ô1°6Ñ:Ô:€ðð ð ð<ð <ð <ð'ð 'ð 'ð'ð 'ð 'ð'ð 'ð 'ð
Bð Bð Bð0 „×Ò˜ 1 c (Ñ+Ô+Ø„×Ò˜   Ñ+Ô+ð2ð 2ñ ,Ô+ñ ,Ô+ð2ð ð ð ð 
+ð 
+ð 
+ð=ð =ð =ð =ð =r)   