+
    ÏÜ³jE  ã                   óò  € ^ RI t ^ RIt^ RIt ^ RIt^ RIt	 ^ RI
HtHtHtHt  ^ RItR]	P                   ! 4       3R]	P"                  ! 4       3R]	P$                  ! 4       3R]	P&                  ! 4       3R]	P(                  ! 4       3R]	P*                  ! 4       3R	]	P,                  ! 4       3R
]	P.                  ! 4       3R]	P0                  ! 4       3R]	P2                  ! 4       3R]	P4                  ! 4       3.t] U u. uF  q ^ ,          R8w  g   K  V NK  	  up t] P                  P;                  R]	P<                  ]	P>                  ]	P@                  ]	PB                  .4      R 4       t"R t#R t$R t%] P                  P;                  R]	P<                  ]	P>                  ]	P@                  ]	PB                  .4      R 4       t&] P                  P;                  R]4      R 4       t'] P                  P;                  R]4      R 4       t(] P                  P;                  R]4      R 4       t)] P                  P;                  R]4      R 4       t*] P                  P;                  R]4      R 4       t+] P                  P;                  R]4      R 4       t,] P                  P;                  R]4      R 4       t-] P                  P;                  R]	P<                  ]	P>                  ]	P@                  ]	PB                  .4      ] P                  P;                  R]4      R 4       4       t.] P                  P_                  ]'       * RR7      ] P                  P;                  R]]34      ] P                  P;                  R]4      R  4       4       4       t0] P                  P_                  ]'       * RR7      ] P                  P;                  R]]34      ] P                  P;                  R]4      R! 4       4       4       t1] P                  P_                  ]'       * R"R7      ] P                  P;                  R]4      R# 4       4       t2R#   ] d    ] P                  P                  t EL8i ; i  ] d    RtRtRtRt EL=i ; i  ] d    Rt ELHi ; iu up i )$é    N)Ú	csr_arrayÚ	coo_arrayÚ
csr_matrixÚ
coo_matrixÚi1Úi2Úi4Úi8Úu1Úu2Úu4Úu8Úf2Úf4Úf8Úsparse_tensor_typec                 ó  € \         P                  ! . RO. RO. RO. RO.4      pRpV P                  W4      pVP                  ^8X  g   Q hVP                  ^8X  g   Q hVP
                  VP
                  8X  g   Q hVP                  '       g   Q hVP                  ^ 4      V^ ,          8X  g   Q hVP                  V8X  g   Q hVP                  ^8X  g   Q h\        P                  ! V4      pV! 4       f   Q h?V! 4       e   Q hR# )é   N©r   r   é   r   r   r   ©r   r   r   r   r   é   ©é   r   r   r   r   r   ©r   r   r   r   é   é   ©ÚxÚy)ÚnpÚarrayÚfrom_dense_numpyÚndimÚsizeÚshapeÚ
is_mutableÚdim_nameÚ	dim_namesÚnon_zero_lengthÚweakrefÚref)r   Údatar)   Úsparse_tensorÚwrs   &    Úa/home/luca/screen-checking/.venv/lib/python3.14/site-packages/pyarrow/tests/test_sparse_tensor.pyÚtest_sparse_tensor_attrsr1   >   sü   € ô �8Š8ÚÚÚÚð	ó €Dð €IØ&×7Ñ7¸ÓH€Mà×Ñ Ô"Ð"Ð"Ø×Ñ Ô#Ð#Ð#Ø×Ñ $§*¡*Ô,Ð,Ð,Ø×#×#Ð#Ð#Ð#Ø×!Ñ! !Ó$¨	°!­Ô4Ð4Ð4Ø×"Ñ" iÔ/Ð/Ð/Ø×(Ñ(¨AÔ-Ð-Ð-ä	�Š�]Ó	#€BÙ‹4ÒÐÐØÙ‹4Š<ÐŠ<ó    c                  ó’  € \         P                  ! . RO.4      P                  p \         P                  ! . RO. RO.4      P                  p\         P                  ! . RO. RO. RO. RO.4      p\        P                  P                  V4      p\        P                  ! V4      pVP                  4       w  rVVP                  '       g   Q h\        P                  ! V4      V^,           8X  g   Q hRp\         P                  ! W4      '       g   Q h\         P                  ! W4      '       g   Q hVP                  P                  '       g   Q hR# ©	r   N©r   r   r   r   r   r   )r   r   é   r   r   r   ©r   r   r   r   r   r   r   r   r   r   )r!   r"   ÚTÚpaÚSparseCOOTensorr#   ÚsysÚgetrefcountÚto_numpyÚhas_canonical_formatÚarray_equalÚflagsÚc_contiguous)Úexpected_dataÚexpected_coordsr"   r.   ÚnÚresult_dataÚresult_coordss          r0   Ú"test_sparse_coo_tensor_base_objectrG   \   s	  € Ü—H’HÒ0Ð1Ó2×4Ñ4€MÜ—h’hÚÚð ó ÷ 	�qð ô �HŠHÚÚÚÚð	ó €Eô ×&Ñ&×7Ñ7¸Ó>€MÜ�Š˜Ó&€AØ!.×!7Ñ!7Ó!9Ñ€KØ×-×-Ð-Ð-Ð-Ü�?Š?˜=Ó)¨Q°­UÔ2Ð2Ð2à€MÜ�>Š>˜-×5Ò5Ð5Ð5Ü�>Š>˜/×9Ò9Ð9Ð9Ø×Ñ×+×+Ð+Ð+Ò+r2   c                  ó€  € \         P                  ! . RO.4      P                  p \         P                  ! . RO4      p\         P                  ! . RO4      p\         P                  ! . RO. RO. RO. RO.4      p\        P                  P                  V4      p\        P                  ! V4      pVP                  4       w  rgp\        P                  ! V4      V^,           8X  g   Q hRp\         P                  ! W4      '       g   Q h\         P                  ! W4      '       g   Q h\         P                  ! W(4      '       g   Q hR# ©	r   Nr5   ©r   r   r   r   r   r7   r   r   r   r   )
r!   r"   r8   r9   ÚSparseCSRMatrixr#   r;   r<   r=   r?   ©	r-   ÚindptrÚindicesr"   r.   rD   rE   Úresult_indptrÚresult_indicess	            r0   Ú"test_sparse_csr_matrix_base_objectrQ   t   sî   € Ü�8Š8Ò'Ð(Ó)×+Ñ+€DÜ�XŠX’oÓ&€FÜ�hŠhÒ)Ó*€GÜ�HŠHÚÚÚÚð	ó €Eô ×&Ñ&×7Ñ7¸Ó>€MÜ�Š˜Ó&€AØ1>×1GÑ1GÓ1IÑ.€K Ü�?Š?˜=Ó)¨Q°­UÔ2Ð2Ð2à€MÜ�>Š>˜$×,Ò,Ð,Ð,Ü�>Š>˜&×0Ò0Ð0Ð0Ü�>Š>˜'×2Ò2Ð2Ò2r2   c                  óH  € \         P                  ! . RO.4      P                  p \         P                  ! . RO4      .p\         P                  ! . RO4      \         P                  ! . RO4      .p\         P                  ! . RO. RO. RO. R	O.4      p\        P                  P                  V4      p\        P                  ! V4      pVP                  4       w  rgp\        P                  ! V4      V^,           8X  g   Q hRp\         P                  ! W4      '       g   Q h\         P                  ! V^ ,          V^ ,          4      '       g   Q h\         P                  ! V^ ,          V^ ,          4      '       g   Q h\         P                  ! V^,          V^,          4      '       g   Q hR# ©
r   Nr5   rJ   ©r   r6   r   r   r7   r   r   r   r   )
r!   r"   r8   r9   ÚSparseCSFTensorr#   r;   r<   r=   r?   rL   s	            r0   Ú"test_sparse_csf_tensor_base_objectrV   ‰   s:  € Ü�8Š8Ò'Ð(Ó)×+Ñ+€DÜ�hŠh’Ó'Ð(€Fä
�Š’ÓÜ
�ŠÒ#Ó$ð€Gô �HŠHÚÚÚÚð	ó €Eô ×&Ñ&×7Ñ7¸Ó>€MÜ�Š˜Ó&€AØ1>×1GÑ1GÓ1IÑ.€K Ü�?Š?˜=Ó)¨Q°­UÔ2Ð2Ð2à€MÜ�>Š>˜$×,Ò,Ð,Ð,Ü�>Š>˜& �) ]°1Õ%5×6Ò6Ð6Ð6Ü�>Š>˜' !�* n°QÕ&7×8Ò8Ð8Ð8Ü�>Š>˜' !�* n°QÕ&7×8Ò8Ð8Ò8r2   c                 ó`  € R  pR p\         P                  P                  ^
^4      R,          pV P                  V4      pV P                  \         P                  ! V4      4      pV! WE4       VP                  4       pRVR&   V P                  \         P                  ! V4      4      pV! WE4       R# )c                 óX   € V P                  V4      '       g   Q hW8X  g   Q hW8w  d   Q hR # ©N©Úequals©ÚaÚbs   &&r0   ÚeqÚ%test_sparse_tensor_equals.<locals>.eq©   s)   € Ø�x‰x˜�{Š{Ðˆ{ØŒvˆˆvØ”FÐˆ|‘Fr2   c                 óX   € V P                  V4      '       d   Q hW8X  d   Q hW8w  g   Q hR # rY   rZ   r\   s   &&r0   ÚneÚ%test_sparse_tensor_equals.<locals>.ne®   s'   € Ø—8‘8˜A—;’;ÐˆØ”FÐˆ|ØŒvˆŠvr2   g      ð?N):NNN:NNr   )é	   r   )r!   ÚrandomÚrandnr#   ÚascontiguousarrayÚcopy)r   r_   rb   r-   Úsparse_tensor1Úsparse_tensor2s   &     r0   Útest_sparse_tensor_equalsrk   ¢   s—   € òò
ô
 �9‰9�?‰?˜2˜qÓ! 'Õ*€DØ'×8Ñ8¸Ó>€NØ'×8Ñ8Ü
×Ò˜TÓ"ó$€Ná€~Ô&Ø�9‰9‹;€DØ€Dˆ�JØ'×8Ñ8Ü
×Ò˜TÓ"ó$€Ná€~Ö&r2   zdtype_str,arrow_typec                 ó®  € \         P                  ! V 4      p\         P                  ! . RO.4      P                  P	                  V4      p\         P                  ! . RO. RO.4      P                  p\         P                  ! . RO. RO. RO. RO.4      P	                  V4      p\
        P                  P                  V4      p\
        P                  P                  V4      p\        V4       VP                  4       w  r‰VP                  V8X  g   Q h\         P                  ! W84      '       g   Q h\         P                  ! WI4      '       g   Q h\
        P                  P                  V4      p\        V4       VP                  4       w  r‰VP                  V8X  g   Q h\         P                  ! W84      '       g   Q h\         P                  ! WI4      '       g   Q hR# r4   )r!   Údtyper"   r8   Úastyper9   ÚTensorÚ
from_numpyr:   r#   Úreprr=   Útyper?   Úfrom_tensor)
Ú	dtype_strÚ
arrow_typerm   rB   rC   r"   Útensorr.   rE   rF   s
   &&        r0   Ú!test_sparse_coo_tensor_from_denserw   ¿   sy  € ä�HŠH�YÓ€EÜ—H’HÒ0Ð1Ó2×4Ñ4×;Ñ;¸EÓB€MÜ—h’hÚÚð ó ÷ 	�qð ô �HŠHÚÚÚÚð	ó ÷
 �vˆeƒ}ð 
ô �Y‰Y×!Ñ! %Ó(€Fô ×&Ñ&×7Ñ7¸Ó>€MÜˆÔØ!.×!7Ñ!7Ó!9Ñ€KØ×Ñ Ô+Ð+Ð+Ü�>Š>˜-×5Ò5Ð5Ð5Ü�>Š>˜/×9Ò9Ð9Ð9ô ×&Ñ&×2Ñ2°6Ó:€MÜˆÔØ!.×!7Ñ!7Ó!9Ñ€KØ×Ñ Ô+Ð+Ð+Ü�>Š>˜-×5Ò5Ð5Ð5Ü�>Š>˜/×9Ò9Ð9Ò9r2   c                 ó>  € \         P                  ! V 4      p\         P                  ! . RO.4      P                  P	                  V4      p\         P                  ! . RO4      p\         P                  ! . RO4      p\         P                  ! . RO. RO. RO. RO.4      P	                  V4      p\
        P                  P                  V4      p\
        P                  P                  V4      p\        V4       VP                  4       w  ršpVP                  V8X  g   Q h\         P                  ! W94      '       g   Q h\         P                  ! WJ4      '       g   Q h\         P                  ! W[4      '       g   Q h\
        P                  P                  V4      p\        V4       VP                  4       w  ršpVP                  V8X  g   Q h\         P                  ! W94      '       g   Q h\         P                  ! WJ4      '       g   Q h\         P                  ! W[4      '       g   Q hR# rI   )r!   rm   r"   r8   rn   r9   ro   rp   rK   r#   rq   r=   rr   r?   rs   ©rt   ru   rm   r-   rM   rN   r"   rv   r.   rE   rO   rP   s   &&          r0   Ú!test_sparse_csr_matrix_from_denserz   à   sŸ  € ä�HŠH�YÓ€EÜ�8Š8Ò'Ð(Ó)×+Ñ+×2Ñ2°5Ó9€DÜ�XŠX’oÓ&€FÜ�hŠhÒ)Ó*€GÜ�HŠHÚÚÚÚð	ó ÷
 �vˆeƒ}ð 
ô �Y‰Y×!Ñ! %Ó(€Fô ×&Ñ&×7Ñ7¸Ó>€MÜˆÔØ1>×1GÑ1GÓ1IÑ.€K Ø×Ñ Ô+Ð+Ð+Ü�>Š>˜$×,Ò,Ð,Ð,Ü�>Š>˜&×0Ò0Ð0Ð0Ü�>Š>˜'×2Ò2Ð2Ð2ô ×&Ñ&×2Ñ2°6Ó:€MÜˆÔØ1>×1GÑ1GÓ1IÑ.€K Ø×Ñ Ô+Ð+Ð+Ü�>Š>˜$×,Ò,Ð,Ð,Ü�>Š>˜&×0Ò0Ð0Ð0Ü�>Š>˜'×2Ò2Ð2Ò2r2   c                 ót  € \         P                  ! V 4      p\         P                  ! . RO.4      P                  P	                  V4      p\         P                  ! . RO4      .p\         P                  ! . RO4      \         P                  ! . RO4      .p\         P                  ! . RO. RO. RO. R	O.4      P	                  V4      p\
        P                  P                  V4      p\        V4       VP                  4       w  r‰p
VP                  V8X  g   Q h\         P                  ! W84      '       g   Q h\         P                  ! V^ ,          V	^ ,          4      '       g   Q h\         P                  ! V^ ,          V
^ ,          4      '       g   Q h\         P                  ! V^,          V
^,          4      '       g   Q hR# rS   )r!   rm   r"   r8   rn   r9   rU   r#   rq   r=   rr   r?   )rt   ru   rm   r-   rM   rN   r"   r.   rE   rO   rP   s   &&         r0   Ú'test_sparse_csf_tensor_from_dense_numpyr|     sO  € ä�HŠH�YÓ€EÜ�8Š8Ò'Ð(Ó)×+Ñ+×2Ñ2°5Ó9€DÜ�hŠh’Ó'Ð(€Fä
�Š’ÓÜ
�ŠÒ#Ó$ð€Gô �HŠHÚÚÚÚð	ó ÷
 �vˆeƒ}ð 
ô ×&Ñ&×7Ñ7¸Ó>€MÜˆÔØ1>×1GÑ1GÓ1IÑ.€K Ø×Ñ Ô+Ð+Ð+Ü�>Š>˜$×,Ò,Ð,Ð,Ü�>Š>˜& �) ]°1Õ%5×6Ò6Ð6Ð6Ü�>Š>˜' !�* n°QÕ&7×8Ò8Ð8Ð8Ü�>Š>˜' !�* n°QÕ&7×8Ò8Ð8Ò8r2   c                 ó²  € \         P                  ! V 4      p\         P                  ! . RO.4      P                  P	                  V4      p\         P                  ! . RO4      .p\         P                  ! . RO4      \         P                  ! . RO4      .p\         P                  ! . RO. RO. RO. R	O.4      P	                  V4      p\
        P                  P                  V4      p\
        P                  P                  V4      p\        V4       VP                  4       w  ršpVP                  V8X  g   Q h\         P                  ! W94      '       g   Q h\         P                  ! V^ ,          V
^ ,          4      '       g   Q h\         P                  ! V^ ,          V^ ,          4      '       g   Q h\         P                  ! V^,          V^,          4      '       g   Q hR# rS   )r!   rm   r"   r8   rn   r9   ro   rp   rU   rs   rq   r=   rr   r?   ry   s   &&          r0   Ú(test_sparse_csf_tensor_from_dense_tensorr~     se  € ä�HŠH�YÓ€EÜ�8Š8Ò'Ð(Ó)×+Ñ+×2Ñ2°5Ó9€DÜ�hŠh’Ó'Ð(€Fä
�Š’ÓÜ
�ŠÒ#Ó$ð€Gô �HŠHÚÚÚÚð	ó ÷
 �vˆeƒ}ð 
ô �Y‰Y×!Ñ! %Ó(€Fô ×&Ñ&×2Ñ2°6Ó:€MÜˆÔØ1>×1GÑ1GÓ1IÑ.€K Ø×Ñ Ô+Ð+Ð+Ü�>Š>˜$×,Ò,Ð,Ð,Ü�>Š>˜& �) ]°1Õ%5×6Ò6Ð6Ð6Ü�>Š>˜' !�* n°QÕ&7×8Ò8Ð8Ð8Ü�>Š>˜' !�* n°QÕ&7×8Ò8Ð8Ò8r2   c                 ó*  € \         P                  ! V 4      p\         P                  ! . RO.4      P                  P	                  V4      p\         P                  ! . RO. RO.4      P                  pRpRp\
        P                  P                  W4VV4      p\        V4       VP                  4       w  r‰VP                  V8X  g   Q h\         P                  ! W84      '       g   Q h\         P                  ! WI4      '       g   Q hVP                  V8X  g   Q hR# )r6   N©r6   r   r   r   r   r   ©r   r   r   r   r6   r   ©r   r   r   r   r   r   ©r   r   r   )r!   rm   r"   r8   rn   r9   r:   rp   rq   r=   rr   r?   r)   )
rt   ru   rm   r-   Úcoordsr&   r)   r.   rE   rF   s
   &&        r0   Ú&test_sparse_coo_tensor_numpy_roundtripr…   8  sê   € ä�HŠH�YÓ€EÜ�8Š8Ò'Ð(Ó)×+Ñ+×2Ñ2°5Ó9€DÜ�XŠXÚÚðó ÷ 	�qð ð €EØ€Iä×&Ñ&×1Ñ1°$ÀØ2;ó=€MäˆÔØ!.×!7Ñ!7Ó!9Ñ€KØ×Ñ Ô+Ð+Ð+Ü�>Š>˜$×,Ò,Ð,Ð,Ü�>Š>˜&×0Ò0Ð0Ð0Ø×"Ñ" iÔ/Ð/Ò/r2   c                 ó|  € \         P                  ! V 4      p\         P                  ! . RO.4      P                  P	                  V4      p\         P                  ! . RO4      p\         P                  ! . RO4      pRpRp\
        P                  P                  W4VWg4      p\        V4       VP                  4       w  ršpVP                  V8X  g   Q h\         P                  ! W94      '       g   Q h\         P                  ! WJ4      '       g   Q h\         P                  ! W[4      '       g   Q hVP                  V8X  g   Q hR# )r   Nr5   rJ   r7   rƒ   r   )r!   rm   r"   r8   rn   r9   rK   rp   rq   r=   rr   r?   r)   )rt   ru   rm   r-   rM   rN   r&   r)   r.   rE   rO   rP   s   &&          r0   Ú&test_sparse_csr_matrix_numpy_roundtripr‡   M  sú   € ä�HŠH�YÓ€EÜ�8Š8Ò'Ð(Ó)×+Ñ+×2Ñ2°5Ó9€DÜ�XŠX’oÓ&€FÜ�hŠhÒ)Ó*€GØ€EØ€Iä×&Ñ&×1Ñ1°$ÀØ27óD€MäˆÔØ1>×1GÑ1GÓ1IÑ.€K Ø×Ñ Ô+Ð+Ð+Ü�>Š>˜$×,Ò,Ð,Ð,Ü�>Š>˜&×0Ò0Ð0Ð0Ü�>Š>˜'×2Ò2Ð2Ð2Ø×"Ñ" iÔ/Ð/Ò/r2   c                 óJ  € \         P                  ! V 4      p\         P                  ! . RO.4      P                  P	                  V4      p\         P                  ! . RO4      .p\         P                  ! . RO4      \         P                  ! . RO4      .pRpRpRp\
        P                  P                  W4VWvV4      p	\        V	4       V	P                  4       w  r«pV	P                  V8X  g   Q h\         P                  ! W:4      '       g   Q h\         P                  ! V^ ,          V^ ,          4      '       g   Q h\         P                  ! V^ ,          V^ ,          4      '       g   Q h\         P                  ! V^,          V^,          4      '       g   Q hV	P                  V8X  g   Q hR# )	r   Nr5   rJ   rT   r7   )r   r6   rƒ   r   )r!   rm   r"   r8   rn   r9   rU   rp   rq   r=   rr   r?   r)   )rt   ru   rm   r-   rM   rN   Ú
axis_orderr&   r)   r.   rE   rO   rP   s   &&           r0   Ú&test_sparse_csf_tensor_numpy_roundtriprŠ   a  sO  € ä�HŠH�YÓ€EÜ�8Š8Ò'Ð(Ó)×+Ñ+×2Ñ2°5Ó9€DÜ�hŠh’Ó'Ð(€Fä
�Š’ÓÜ
�ŠÒ#Ó$ð€Gð €JØ€EØ€Iä×&Ñ&×1Ñ1°$ÀØ27Ø2;ó=€Mô 	ˆÔØ1>×1GÑ1GÓ1IÑ.€K Ø×Ñ Ô+Ð+Ð+Ü�>Š>˜$×,Ò,Ð,Ð,Ü�>Š>˜& �) ]°1Õ%5×6Ò6Ð6Ð6Ü�>Š>˜' !�* n°QÕ&7×8Ò8Ð8Ð8Ü�>Š>˜' !�* n°QÕ&7×8Ò8Ð8Ð8Ø×"Ñ" iÔ/Ð/Ò/r2   c                 ó¨  € \         P                  ! V 4      p\         P                  ! . RO. RO. RO. RO.4      P                  V4      pRpVP	                  WE4      pVP                  4       pVP                  4       pVP                  V8X  g   Q hVP                  V8X  g   Q hVP                  V8X  g   Q h\         P                  ! WH4      '       g   Q hR# )r   N)r   r   rd   r   )r   é   r   r   )r   r   r   r   )r   r   r   r   r   )
r!   rm   r"   rn   r#   Ú	to_tensorr=   rr   r)   r?   )	rt   ru   r   rm   r"   r)   r.   rv   Úresult_arrays	   &&&      r0   Útest_dense_to_sparse_tensorr�   {  s¾   € ô �HŠH�YÓ€EÜ�HŠH’lÚ"Ú"Ú"ð$ó %÷ &,¡V¨E£]ð 
ð €Ià&×7Ñ7¸ÓI€MØ×$Ñ$Ó&€FØ—?‘?Ó$€Là×Ñ Ô+Ð+Ð+Ø�;‰;˜*Ô$Ð$Ð$Ø×"Ñ" iÔ/Ð/Ð/Ü�>Š>˜%×.Ò.Ð.Ò.r2   zrequires scipy)ÚreasonÚsparse_objectc                 ó"  € RpRp\         P                  ! V 4      p\         P                  ! . RO4      P                  V4      p\         P                  ! . RO4      p\         P                  ! . RO4      pV! WgV33VR7      p	\        P
                  P                  V	VR7      p
V
P                  4       pV	P                  '       d   Q hV
P                  '       d   Q hVP                  '       d   Q hV
P                  V8X  g   Q hV
P                  V8X  g   Q hV	P                  VP                  8X  g   Q h\         P                  ! V	P                  VP                  4      '       g   Q h\         P                  ! V	P                  VP                  4      '       g   Q h\         P                  ! V	P                  VP                  4      '       g   Q hV	P                  4       p\         P                  ! WÊP!                  4       P#                  4       4      '       g   Q hV	P%                  4        \        P
                  P                  V	VR7      p
V
P                  4       pV	P                  '       g   Q hV
P                  '       g   Q hVP                  '       g   Q hR# )	r   ©r&   ©r)   Nrƒ   r   r€   r�   r‚   )r!   rm   r"   rn   r9   r:   Ú
from_scipyÚto_scipyr>   rr   r)   r?   r-   ÚrowÚcolÚtoarrayr�   r=   Úsum_duplicates)rt   ru   r‘   r&   r)   rm   r-   r—   r˜   Úscipy_matrixr.   Úout_scipy_matrixÚdense_arrays   &&&          r0   Ú&test_sparse_coo_tensor_scipy_roundtriprž   ”  s'  € ð
 €EØ€IÜ�HŠH�YÓ€EÜ�8Š8Ò&Ó'×.Ñ.¨uÓ5€DÜ
�(Š(Ò%Ó
&€CÜ
�(Š(Ò%Ó
&€Cñ ! $¨c¨
Ð!3¸5ÔA€LÜ×&Ñ&×1Ñ1°,Ø<Eð 2ó G€Mà$×-Ñ-Ó/Ðà×0×0Ð0Ð0Ð0Ø×1×1Ð1Ð1Ð1Ø×4×4Ð4Ð4Ð4Ø×Ñ Ô+Ð+Ð+Ø×"Ñ" iÔ/Ð/Ð/Ø×ÑÐ!1×!7Ñ!7Ô7Ð7Ð7Ü�>Š>˜,×+Ñ+Ð-=×-BÑ-B×CÒCÐCÐCÜ�>Š>˜,×*Ñ*Ð,<×,@Ñ,@×AÒAÐAÐAÜ�>Š>˜,×*Ñ*Ð,<×,@Ñ,@×AÒAÐAÐAà×&Ñ&Ó(€KÜ�>Š>˜+×'>Ñ'>Ó'@×'IÑ'IÓ'K×LÒLÐLÐLð ×ÑÔ!Ü×&Ñ&×1Ñ1°,Ø<Eð 2ó G€Mà$×-Ñ-Ó/Ðà×,×,Ð,Ð,Ð,Ø×-×-Ð-Ð-Ð-Ø×0×0Ð0Ð0Ò0r2   c                 ó®  € RpRp\         P                  ! V 4      p\         P                  ! . RO4      P                  V4      p\         P                  ! . RO4      p\         P                  ! . RO4      pV! WhV3VR7      p	\        P
                  P                  V	VR7      p
V
P                  4       pV
P                  V8X  g   Q hV
P                  V8X  g   Q hV	P                  VP                  8X  g   Q h\         P                  ! V	P                  VP                  4      '       g   Q h\         P                  ! V	P                  VP                  4      '       g   Q h\         P                  ! V	P                  VP                  4      '       g   Q hV	P                  4       p\         P                  ! WÊP                  4       P!                  4       4      '       g   Q hR# )	r   r“   r”   Nrƒ   r   r5   rJ   r7   )r!   rm   r"   rn   r9   rK   r•   r–   rr   r)   r?   r-   rM   rN   r™   r�   r=   )rt   ru   r‘   r&   r)   rm   r-   rM   rN   Úsparse_arrayr.   Úout_sparse_arrayr�   s   &&&          r0   Ú&test_sparse_csr_matrix_scipy_roundtripr¢   ¾  sx  € ð
 €EØ€IÜ�HŠH�YÓ€EÜ�8Š8Ò&Ó'×.Ñ.¨uÓ5€DÜ�XŠX’oÓ&€FÜ�hŠhÒ)Ó*€Gá  $°Ð!8ÀÔF€LÜ×&Ñ&×1Ñ1°,Ø<Eð 2ó G€Mà$×-Ñ-Ó/Ðà×Ñ Ô+Ð+Ð+Ø×"Ñ" iÔ/Ð/Ð/Ø×ÑÐ!1×!7Ñ!7Ô7Ð7Ð7Ü�>Š>˜,×+Ñ+Ð-=×-BÑ-B×CÒCÐCÐCÜ�>Š>˜,×-Ñ-Ð/?×/FÑ/F×GÒGÐGÐGÜ�>Š>˜,×.Ñ.Ð0@×0HÑ0H×IÒIÐIÐIà×&Ñ&Ó(€KÜ�>Š>˜+×'>Ñ'>Ó'@×'IÑ'IÓ'K×LÒLÐLÒLr2   zrequires pydata/sparsec                 ó6  € \         P                  ! V 4      p\         P                  ! . RO4      P                  V4      p\         P                  ! . RO. RO.4      pRpRp\        P
                  ! W4VR7      p\        P                  P                  VVR7      pVP                  4       p	VP                  V8X  g   Q hVP                  V8X  g   Q hVP                  V	P                  8X  g   Q h\         P                  ! VP                  V	P                  4      '       g   Q h\         P                  ! VP                  V	P                  4      '       g   Q h\         P                  ! VP                  4       VP!                  4       P#                  4       4      '       g   Q hR# )	r6   )r-   r„   r&   r”   Nr€   r�   r‚   rƒ   r   )r!   rm   r"   rn   ÚsparseÚCOOr9   r:   Úfrom_pydata_sparseÚto_pydata_sparserr   r)   r?   r-   r„   Útodenser�   r=   )
rt   ru   rm   r-   r„   r&   r)   r    r.   r¡   s
   &&        r0   Ú.test_pydata_sparse_sparse_coo_tensor_roundtripr©   Ú  s[  € ô �HŠH�YÓ€EÜ�8Š8Ò&Ó'×.Ñ.¨uÓ5€DÜ�XŠXÚÚðó €Fð €EØ€Iä—:’: 4¸eÔD€LÜ×&Ñ&×9Ñ9¸,ØDMð :ó O€Mà$×5Ñ5Ó7Ðà×Ñ Ô+Ð+Ð+Ø×"Ñ" iÔ/Ð/Ð/Ø×ÑÐ!1×!7Ñ!7Ô7Ð7Ð7Ü�>Š>˜,×+Ñ+Ð-=×-BÑ-B×CÒCÐCÐCÜ�>Š>˜,×-Ñ-Ð/?×/FÑ/F×GÒGÐGÐGÜ�>Š>˜,×.Ñ.Ó0Ø'×1Ñ1Ó3×<Ñ<Ó>÷@ò @ð @ò @r2   )3Úpytestr;   r+   Únumpyr!   ÚImportErrorÚmarkÚ
pytestmarkÚpyarrowr9   Úscipy.sparser   r   r   r   r¤   Úint8Úint16Úint32Úint64Úuint8Úuint16Úuint32Úuint64Úfloat16Úfloat32Úfloat64Útensor_type_pairsÚscipy_type_pairsÚparametrizerK   ÚSparseCSCMatrixr:   rU   r1   rG   rQ   rV   rk   rw   rz   r|   r~   r…   r‡   rŠ   r�   Úskipifrž   r¢   r©   )Úpairs   0r0   Ú<module>rÂ      s¦  ðó$ Û 
Û ð#Ûó ðßIÓIðÛð 
ˆ2�7Š7‹9ÐØ	ˆ2�8Š8‹:ÐØ	ˆ2�8Š8‹:ÐØ	ˆ2�8Š8‹:ÐØ	ˆ2�8Š8‹:ÐØ	ˆ2�9Š9‹;ÐØ	ˆ2�9Š9‹;ÐØ	ˆ2�9Š9‹;ÐØ	ˆ2�:Š:‹<ÐØ	ˆ2�:Š:‹<ÐØ	ˆ2�:Š:‹<ÐðÐ ñ  'óÙ&ˆT¨q­'°T©/‡D€DÑ&ñÐ ð
 ‡�×ÑÐ-Ø×ÑØ×ÑØ×ÑØ×Ñð	0ó ñóðò0,ò03ò*9ð2 ‡�×ÑÐ-Ø×ÑØ×ÑØ×ÑØ×Ñð	0ó ñ'óð'ð. ‡�×ÑÐ/Ð1BÓCñ:ó Dð:ð@ ‡�×ÑÐ/Ð1BÓCñ3ó Dð3ð@ ‡�×ÑÐ/Ð1BÓCñ9ó Dð9ð4 ‡�×ÑÐ/Ð1BÓCñ9ó Dð9ð6 ‡�×ÑÐ/Ð1BÓCñ0ó Dð0ð( ‡�×ÑÐ/Ð1BÓCñ0ó Dð0ð& ‡�×ÑÐ/Ð1BÓCñ0ó Dð0ð2 ‡�×ÑÐ-Ø×ÑØ×ÑØ×ÑØ×Ñð	0ó ð ‡�×ÑÐ/Ð1BÓCñ/ó Dóð/ð$ ‡�×Ñ˜
”NÐ+;ÐÓ<Ø‡�×Ñ˜¨9°jÐ*AÓBØ‡�×ÑÐ/Ð1AÓBñ$1ó Có Có =ð$1ðN ‡�×Ñ˜
”NÐ+;ÐÓ<Ø‡�×Ñ˜¨9°jÐ*AÓBØ‡�×ÑÐ/Ð1AÓBñMó Có Có =ðMð2 ‡�×Ñ˜”JÐ'?ÐÓ@Ø‡�×ÑÐ/Ð1BÓCñ@ó Dó Aò@øðI ô #Ø—‘×"Ñ"ƒJð#ûð ô Ø€JØ€JØ€IØƒIð	ûð ô ØƒFðüò&s?   ŽP* —Q ¤Q$ Ã4Q4ÄQ4Ð*QÑ
QÑQ!Ñ Q!Ñ$	Q1Ñ0Q1