Ë
    âQ(hº  ã                   ót   — d dl mZmZmZ d dlmZmZ d dlmZ	 d dlm
Z
mZmZ d dlmZmZmZmZ  G d„ d«      Zy)	é    )ÚarrayÚkronÚdiag)Úassert_Úassert_equal)Ú_spfuncs)Ú
csr_matrixÚ
csc_matrixÚ
bsr_matrix)Úcsr_scale_rowsÚcsr_scale_columnsÚbsr_scale_rowsÚbsr_scale_columnsc                   ó   — e Zd Zd„ Zd„ Zd„ Zy)ÚTestSparseFunctionsc           
      ó¤  — t        g d¢g d¢g d¢g«      }t        |«      }t        g d¢«      }t        dd|j                  |j                  |j
                  |«       t        |j                  «       t        |«      |z  «       t        |«      }t        g d¢«      }t        dd|j                  |j                  |j
                  |«       t        |j                  «       |t        |«      z  «       t        |dd	gdd
gg«      }t        |d¬«      }t        g d¢«      }t        ddd	d	|j                  |j                  |j
                  |«       t        |j                  «       t        |«      |z  «       t        |d¬«      }t        g d¢«      }t        ddd	d	|j                  |j                  |j
                  |«       t        |j                  «       |t        |«      z  «       t        |g d¢g d¢g«      }t        |d¬«      }t        g d¢«      }t        ddd	d|j                  |j                  |j
                  |«       t        |j                  «       t        |«      |z  «       t        |d¬«      }t        g d¢«      }t        ddd	d|j                  |j                  |j
                  |«       t        |j                  «       |t        |«      z  «       y )N)é   r   r   é   é   )r   é   r   é   r   )r   r   é   é   r   )r   r   r   r   r   )r   r   r   r   r   r   r   r   )r   r   )Ú	blocksize)r   r   r   r   r   r   )
r   r   r   r   r   r   r   é   é	   é
   )r   r   r   )r   r   )r   r   r   r   r   r   r   r   r   r   é   é   é   é   é   )r   r	   r   ÚindptrÚindicesÚdatar   Útoarrayr   r   r   r   r   r   )ÚselfÚDÚSÚvÚEs        ú]/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/scipy/sparse/tests/test_spfuncs.pyÚtest_scale_rows_and_colsz,TestSparseFunctions.test_scale_rows_and_cols   s  € Ü’?Ú"Ú"ð$ó %ˆô
 �q‹MˆÜ’'‹NˆÜ�q˜˜1Ÿ8™8 A§I¡I¨a¯f©f°QÔ7Ü�Q—Y‘Y“[¤$ q£'¨!¡)Ô,ä�q‹MˆÜ’+ÓˆÜ˜!˜A˜aŸh™h q§y¡y°·±¸Ô:Ü�Q—Y‘Y“[ !¤D¨£G¡)Ô,ô ��Q�q�E˜1˜Q˜%�=Ó!ˆÜ�q 5Ô)ˆÜ’-Ó ˆÜ�q˜˜1˜Q˜qŸx™x¨¯	©	°!·&±&¸Ô;Ü�Q—Y‘Y“[¤$ q£'¨!¡)Ô,ä�q 5Ô)ˆÜÒ(Ó)ˆÜ˜!˜A˜a  !§(¡(¨1¯9©9°Q·V±V¸AÔ>Ü�Q—Y‘Y“[ !¤D¨£G¡)Ô,ä�’GšGÐ$Ó%ˆÜ�q 5Ô)ˆÜ’-Ó ˆÜ�q˜˜1˜Q˜qŸx™x¨¯	©	°!·&±&¸Ô;Ü�Q—Y‘Y“[¤$ q£'¨!¡)Ô,ä�q 5Ô)ˆÜÒ7Ó8ˆÜ˜!˜A˜a  !§(¡(¨1¯9©9°Q·V±V¸AÔ>Ü�Q—Y‘Y“[ !¤D¨£G¡)Õ,ó    c                 ó–  — g }|j                  ddgddgg«       |j                  g d¢g d¢g d¢g«       |j                  dgdgdgg«       |D �cg c]  }t        |«      ‘Œ }}g }|j                  dgg«       |j                  ddgddgg«       |j                  ddgddgg«       |j                  g d¢g d¢g d¢g«       |D �cg c]  }t        |«      ‘Œ }}|D ]c  }|D ]\  }t        ||«      }t        j                  |«      \  }}t        ||j                  d   k\  «       t        ||j                  d   k\  «       Œ^ Œe y c c}w c c}w )Nr   r   ©r   r   r   ©r   r   r   ©r   r   r   )r   r   r   )Úappendr   r   ÚspfuncsÚestimate_blocksizer   Úshape)	r'   ÚmatsÚxÚblksÚAÚBÚXÚrÚcs	            r,   Útest_estimate_blocksizez+TestSparseFunctions.test_estimate_blocksize2   s?  € ØˆØ�‰�a˜�U˜A˜a˜5�MÔ"Ø�‰’WšW¢WÐ-Ô.Ø�‰�a�S˜!˜˜a˜S�MÔ"Ø"&Ö'˜Q”�a•Ð'ˆÐ'àˆØ�‰�a�S�EÔØ�‰�a˜�U˜A˜a˜5�MÔ"Ø�‰�a˜�U˜A˜a˜5�MÔ"Ø�‰’WšW¢WÐ-Ô.Ø"&Ö'˜Q”�a•Ð'ˆÐ'àò 	)ˆAØò )�Ü˜˜1“I�Ü×0Ñ0°Ó3‘��!Ü˜˜QŸW™W Q™Z™Ô(Ü˜˜QŸW™W Q™Z™Õ(ñ	)ñ	)ùò (ùò (s   ÁEÃEc                 ó   — d„ }g }|j                  dgg«       |j                  dgg«       |j                  ddgg«       |j                  ddgg«       |j                  ddgddgg«       |j                  g d¢g d¢g d¢g«       |j                  dgdgdgg«       |D ]m  }|D ]f  }t        ||«      }t        |«      }t        dd«      D ]>  }t        dd«      D ]-  }t	        t        j                  |||f«       ||||f«      «       Œ/ Œ@ Œh Œo t        g d¢g d¢g d¢gddgg«      }t        |«      }t	        t        j                  |d«       ||d«      «       t	        t        j                  |d«       ||d«      «       y )	Nc           	      óz   — |\  }}| j                  «       \  }}t        t        t        ||z  ||z  «      «      «      S )N)ÚnonzeroÚlenÚsetÚzip)r:   ÚbsÚRÚCÚIÚJs         r,   Úgoldz3TestSparseFunctions.test_count_blocks.<locals>.goldH   s8   € Ø‰CˆAˆaØ—)‘)“+‰CˆAˆaÜ”sœ3˜q !™t A q¡D›>Ó*Ó+Ð+r.   r   r   r0   r1   r2   r   )r   r   )r3   r   r	   Úranger   r4   Úcount_blocksr
   )	r'   rK   r7   r:   r;   r<   ÚYrG   rH   s	            r,   Útest_count_blocksz%TestSparseFunctions.test_count_blocksG   s}  € ò	,ð
 ˆØ�‰�a�S�EÔØ�‰�a�S�EÔØ�‰�a˜�U�GÔØ�‰�a˜�U�GÔØ�‰�a˜�U˜A˜a˜5�MÔ"Ø�‰’WšW¢WÐ-Ô.Ø�‰�a�S˜!˜˜a˜S�MÔ"àò 	WˆAØò W�Ü˜˜1“I�Ü˜q“M�Ü˜q ›ò W�AÜ" 1 Q›Zò W˜Ü$¤W×%9Ñ%9¸!¸aÀ¸VÓ%DÁdÈ1ÈqÐRSÈfÃoÕVñWñWñWð	Wô ’'š'¢'Ð*¨Q¨q¨E¨7Ó3ˆÜ�q‹MˆÜ”W×)Ñ)¨!¨VÓ4±d¸1¸f³oÔFÜ”W×)Ñ)¨!¨VÓ4±d¸1¸f³oÕFr.   N)Ú__name__Ú
__module__Ú__qualname__r-   r?   rO   © r.   r,   r   r   
   s   „ ò%-òN)ó*Gr.   r   N)Únumpyr   r   r   Únumpy.testingr   r   Úscipy.sparser   r4   r	   r
   r   Úscipy.sparse._sparsetoolsr   r   r   r   r   rS   r.   r,   ú<module>rX      s1   ðß #Ñ #ß /å ,ß ;Ñ ;÷Jó J÷WGò WGr.   