+
    0i                        ^ RI t ^ RIt^ RIt^ RIt^ RIHt ^ RIHtH	t	 ^ RI
HtHtHtHtHtHtHtHtHtHtHt ] P,                  P/                  ] P,                  P1                  ]4      R4      tR tR tR tR	 tR
 tR t ]PB                  PE                  R^ R.4      ]PB                  PE                  R. RO4      R 4       4       t#R t$R t%R t&R# )    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                     \         P                  ! R R7      w  r\        P                  ! V4        \	        W 4       \        V4      p\        P                  ! V4       V#   \        P                  ! T4       i ; i).npzsuffix)tempfilemkstemposcloser	   r
   remove)matrixfdtmpfileloaded_matrixs   &   _/var/www/html/photoedit/myenv/lib/python3.14/site-packages/scipy/sparse/tests/test_matrix_io.py_save_and_loadr       sX    ""&1KBHHRL! )
		' 			's   A A7c                 X   \         \        \        \        \        3 F  pV! V 4      p\        V4      p\        \        V4      VJ 4       \        VP                  V P                  8H  4       \        VP                  V P                  8H  4       \        VP                  4       V 4       K  	  R # )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##|'9'99:##|'9'99:]**,l; U    c                      ^
p \         P                  P                  ^ 4       \         P                  P                  W 34      p^ WR8  &   \        V4       R# )
   gffffff?N)nprandomseedr(   )Nr&   s     r   test_save_and_load_randomr0   $   sB    
AIINN199##QF+L'(L#$&r)   c                  H    \         P                  ! R4      p \        V 4       R# )   Nr2      r,   zerosr(   r&   s    r   test_save_and_load_emptyr8   +   s    88E?L&r)   c                  R    \         P                  ! R4      p ^V R&   \        V 4       R# )r2   Nr3   )      r5   r7   s    r   test_save_and_load_one_entryr<   /   s!    88E?LL&r)   c                     \         P                  ! R R7      w  r\        P                  ! V 4        \	        V\        . RO. RO.4      4       \        V4      p\        P                  ! V4       \         P                  ! R R7      w  r\        P                  ! V 4        \	        V\        . RO. RO.4      4       \        V4      p\        P                  ! V4       \        V\        4      '       d   Q h\        V\        4      '       g   Q h\        VP                  VP                  8H  4       \        VP                  4       VP                  4       4       R#   \        P                  ! T4       i ; i  \        P                  ! T4       i ; i)r   r   N)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   ""&1KBHHRL*m[%ABC )
		' ""&1KBHHRL)]K$@AB(
		'-1111lG,,,,M<#5#556&&(,*>*>*@A 			' 			's   &E &E0 E-0Fvaluer>   ndimc                    \        V.4      P                  RV ,          4      p\        P                  ! RR7      w  r4\        P
                  ! V4        \        WB4       \        V4      p\        P                  ! V4       \        V\         4      '       g   Q h\        VP                  VP                  8H  4       \        VP                  4       VP                  4       4       R#   \        P                  ! T4       i ; i)r:   r   r   N)r:   )r   reshaper   r   r   r   r	   r
   r   r?   r   r#   r   r%   )rC   rB   Ar   r   loaded_As   &&    r   test_nd_coo_formatrH   L   s     	5'""4$;/A ""&1KBHHRLG$
		'h	****HNNagg%&h..01	 			's   C# #C;c                  >    ! R  R4      p \         P                  ! RR7      w  r\        P                  ! V4        \        P
                  ! W ! 4       R7       \        \        \        V4       \        P                  ! V4       R#   \        P                  ! T4       i ; i)c                   &   a  ] tR t^_t o R tRtV tR# )%test_malicious_load.<locals>.Executorc                    \         R3# )F)Fzunexpected code execution)r   )selfs   &r   
__reduce__0test_malicious_load.<locals>.Executor.__reduce__`   s    ABBr)    N)__name__
__module____qualname____firstlineno__rN   __static_attributes____classdictcell__)__classdict__s   @r   ExecutorrK   _   s     	C 	Cr)   rX   r   r   )formatN)
r   r   r   r   r,   savezassert_raises
ValueErrorr
   r   )rX   r   r   s      r   test_malicious_loadr]   ^   si    C C ""&1KBHHRL
, 	j(G4
		'		's   1B Bc                  t   \        \        P                  P                  \        R 4      4      p \        \        P                  P                  \        R4      4      p\        ^ ..4      p\        V P                  4       VP                  4       4       \        VP                  4       VP                  4       4       R# )zcsc_py2.npzzcsc_py3.npzN)r
   r   pathjoinDATA_DIRr   r   r%   )abcs      r   test_py23_compatibilityre   n   sp    
 	h67Ah67AQC5Aaiik*aiik*r)   c                  R    \        R4      p ^V R&   \        \        \        RV 4       R# )r;   zx.npzN)r;      )r   r:   )r   r[   NotImplementedErrorr	   )xs    r   test_implemented_errorrj   z   s&     	5AAcF%x!<r)   )r:   r;   rg   )'r   numpyr,   r   pytestr   r[   numpy.testingr   r   scipy.sparser   r   r   r	   r
   r   r   r   r   r   r   r_   r`   dirname__file__ra   r    r(   r0   r8   r<   rA   markparametrizerH   r]   re   rj   rP   r)   r   <module>rs      s    	    * /2 2 2 2
 77<<16:<'''
B0 1c(++2 , ,2  
+=r)   