+
    /i                     $   ^ RI Ht ^ RIt^ RIt^ RIHt ^ RIHt ^ RI	H
t
 ^ RIHt ^ RIHtHt R tR	 tR
 tR tR tR tR tR t]P0                  P3                  R. RO4      R 4       t]P0                  P3                  R]4      R 4       tR tR# )    )assert_array_equalN)linear_sum_assignment)random_array)matrix)"min_weight_full_bipartite_matching) linear_sum_assignment_assertions linear_sum_assignment_test_casesc                      \         P                  ! \        R R7      ;_uu_ 4        \        . RO4       RRR4       R#   + '       g   i     R# ; i)zexpected a matrixmatchN         )pytestraises
ValueErrorr        i/var/www/html/photoedit/myenv/lib/python3.14/site-packages/scipy/optimize/tests/test_linear_assignment.py&test_linear_sum_assignment_input_shaper      s+    	z)<	=	=i( 
>	=	=	=s	   =A	c                      . RO. RO.p \        \        V 4      \        \        P                  ! V 4      4      4       \        \        V 4      \        \	        V 4      4      4       R# )r   Nr   )         )r   r   npasarrayr   )Cs    r   'test_linear_sum_assignment_input_objectr      sH    	IA,Q/,RZZ];=,Q/,VAY79r   c                      \         P                  ! ^4      p \        \        V P	                  \         P
                  4      4      \        V 4      4       R# )r   N)r   identityr   r   astypebool_Is    r   %test_linear_sum_assignment_input_boolr&      s4    
AA,QXXbhh-?@,Q/1r   c                      \         P                  ! ^4      p \        P                  ! \        RR7      ;_uu_ 4        \        V P                  \        4      4       RRR4       R#   + '       g   i     R# ; i)r   zCannot cast array datar   N)r   r!   r   r   	TypeErrorr   r"   strr$   s    r   'test_linear_sum_assignment_input_stringr*   %   sA    
AA	y(@	A	Aahhsm, 
B	A	A	As   A$$A5	c                      \         P                  ! \         P                  ^^.4      p \        P                  ! \
        RR7      ;_uu_ 4        \        V 4       RRR4       R#   + '       g   i     R# ; ir   z contains invalid numeric entriesr   N)r   diagnanr   r   r   r   r$   s    r   $test_linear_sum_assignment_input_nanr/   +   sD    
AA	z)K	L	La  
M	L	L	Ls   A""A3	c                      \         P                  ! ^\         P                  ) ^.4      p \        P                  ! \
        RR7      ;_uu_ 4        \        V 4       RRR4       R#   + '       g   i     R# ; ir,   )r   r-   infr   r   r   r   r$   s    r   'test_linear_sum_assignment_input_neginfr2   1   sF    
RVVGQ A	z)K	L	La  
M	L	L	Ls   A##A4	c                      \         P                  ! ^4      p \         P                  V R&   \        P                  ! \
        RR7      ;_uu_ 4        \        V 4       RRR4       R#   + '       g   i     R# ; i)r   zcost matrix is infeasibler   N):NNNr   )r   r!   r1   r   r   r   r   r$   s    r   $test_linear_sum_assignment_input_infr4   7   sF    
AAffAdG	z)D	E	Ea  
F	E	E	Es   A$$A5	c                      ^p \         P                  ! W 34      p\        V4      w  r#\        V\         P                  ! V 4      4       \        V\         P                  ! V 4      4       R# )   N)r   onesr   r   arange)nr   row_indcol_inds       r   test_constant_cost_matrixr<   >   sG    	A
A,Q/Gw		!-w		!-r   znum_rows,num_colsc                     \         P                  ! W3R 7      p\        V4      w  r4\        V4      ^ 8X  g   Q h\        V4      ^ 8X  g   Q hR# ))shapeN)r   emptyr   len)num_rowsnum_colsr   r:   r;   s   &&   r   'test_linear_sum_assignment_trivial_costrC   G   sD    
+,A,Q/Gw<1w<1r   zsign,test_casec                 D    \        \        \        P                  W4       R # )N)r   r   r   array)sign	test_cases   &&r   'test_linear_sum_assignment_small_inputsrH   O   s    $rxx:r   c                  v  a	 \         P                  P                  R 4      o	\        ^d4       F  p RpRp\	        RRV	3R lR7      p\         P
                  ! VP                  \         P                  4      pVP                  WCP                  VP                  3&   VP                  4       p \        V4      w  rVWEV3,          P                  4       p \        V4      w  rVW5V3,          P                  4       pW8X  g   Q hV'       d   K  XX8X  d   K  Q h	  R#   \         d    Rp LVi ; i  \         d    Rp LCi ; i)i%T FgQ?c                 *   < SP                  ^^dV 4      # )r   )integers)sizerngs   &r   <lambda>Itest_two_methods_give_same_result_on_many_sparse_inputs.<locals>.<lambda>a   s    cll1c4&@r   )densitydata_samplerTN)d   rR   )r   randomdefault_rngranger   fullr>   r1   datarowcoltocsrr   sumr   r   )
_
lsa_raisesmwfbm_raisessparsedenser:   r;   lsa_cost
mwfbm_costrM   s
            @r   7test_two_methods_give_same_result_on_many_sparse_inputsrc   W   s   
 ))


)C3Z
j$@B bff-(.jj&**$%	4U;Gg-.224H	 A&IG 01557J )))zz)))/   	J	
  	 L	 s$   )%D%D(D%$D%(D87D8))r   r   )r   r   )r   r   )numpy.testingr   r   numpyr   scipy.optimizer   scipy.sparser   scipy.sparse._sputilsr   scipy.sparse.csgraphr   (scipy.sparse.csgraph.tests.test_matchingr   r	   r   r   r&   r*   r/   r2   r4   r<   markparametrizerC   rH   rc   r   r   r   <module>rm      s    -   0 % ( C
)
91-!!!. ,.FG H )+KL: M:*r   