§
    rŠtj„‘  ã                   óL  — d dl Zd dlZd dlmZ d dlmZ d dlm	Z	m
Z
 d dlmZ d dlmZ d dlmZ d dlmZmZ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! d d	l"m#Z#m$Z$m%Z%m&Z& ej'         (                    d
e¦  «        ej'         (                    de¦  «        ej'         (                    de¦  «        d„ ¦   «         ¦   «         ¦   «         Z)ej'         (                    dej*        ej+        g¦  «        ej'         (                    deez   ¦  «        d„ ¦   «         ¦   «         Z,ej'         (                    d
e¦  «        ej'         (                    de¦  «        ej'         (                    de¦  «        d„ ¦   «         ¦   «         ¦   «         Z-ej'         (                    g d¢g d¢g d¢gg d¢g d¢gg d¢fg d¢g d¢gg d¢g d¢gg d¢fg d¢g d¢gg d¢g d¢gdfd ej.        dgd ej.        ej.        ggd ej.        dgd ej.        ej.        ggg d¢fd d gdej.        gdd gd dgej.        ej.        gej.        dggg d¢ddej.        gg d¢g d ¢ej.        ej.        ej.        gej.        ej.        dggd!d"gfg d#¢g d$¢gg d%¢g d&¢g ej/        g d'¢¦  «        fg¦  «        ej'         (                    deez   ¦  «        ej'         (                    dej*        ej+        g¦  «        d(„ ¦   «         ¦   «         ¦   «         Z0ej'         (                    g d¢g d¢g d¢gg d¢g d¢gddgfg d¢g d¢gg d¢g d¢g d¢gddgfg d¢g d¢gg d¢g d¢gdfd ej.        dgd ej.        ej.        ggd ej.        dgd ej.        ej.        ggd"d"gfd d dej.        dd gd dej.        ej.        ej.        dggd d dej.        dd gd d dej.        dd gd dej.        ej.        ej.        dggd!d"gfg d#¢g d¢gg d#¢g d¢g d¢g d¢g ej/        ddg¦  «        fg¦  «        ej'         (                    deez   ¦  «        ej'         (                    dej*        ej+        g¦  «        d)„ ¦   «         ¦   «         ¦   «         Z1ej'         (                    d
e¦  «        ej'         (                    de¦  «        ej'         (                    de¦  «        d*„ ¦   «         ¦   «         ¦   «         Z2ej'         (                    deez   ¦  «        d+„ ¦   «         Z3ej'         (                    d, ed-d.d/d ¬0¦  «         ed1d.d/d ¬0¦  «        f ed-d.d/d ¬0¦  «         ej4         ej5        d2ej.        ¬3¦  «         ed2d.d4¬5¦  «        gd/¬6¦  «        fg¦  «        ej'         (                    de¦  «        d7„ ¦   «         ¦   «         Z6d8„ Z7d9„ Z8ej'         (                    d:d dg¦  «        ej'         (                    deez   ¦  «        d;„ ¦   «         ¦   «         Z9ej'         (                    de¦  «        d<„ ¦   «         Z:ej'         (                    de¦  «        d=„ ¦   «         Z;d>„ Z<d?„ Z=ej'         (                    d
e¦  «        ej'         (                    de¦  «        d@„ ¦   «         ¦   «         Z>ej'         (                    d
e¦  «        ej'         (                    de¦  «        dA„ ¦   «         ¦   «         Z?ej'         (                    dej*        ej+        g¦  «        ej'         (                    d:g dB¢¦  «        ej'         (                    dCeez   ¦  «        ej'         (                    dDd ej@        ejA        dEfej.        ejB        ejC        dFfg¦  «        ej'         (                    dGdFdEg¦  «        dH„ ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         ZDej'         (                    d
e¦  «        ej'         (                    de¦  «        dI„ ¦   «         ¦   «         ZEej'         (                    d
e¦  «        ej'         (                    de¦  «        dJ„ ¦   «         ¦   «         ZFej'         (                    d
e¦  «        ej'         (                    de¦  «        dK„ ¦   «         ¦   «         ZGej'         (                    dLe%e&f¦  «        ej'         (                    de¦  «        dM„ ¦   «         ¦   «         ZHej'         (                    dej*        ej+        g¦  «        dN„ ¦   «         ZI ejJ        dOeez   ¬P¦  «        dQ„ ¦   «         ZKdR„ ZLdS„ ZMdT„ ZNdU„ ZOej'         (                    g dV¢ ejP        dd/¬6¦  «         ejP        dd/¬6¦  «        ddWf ejP        dd/¬6¦  «         ejP        dd/¬6¦  «         ejP        d¦  «        dXf ejP        ddY¬6¦  «         ejP        dd/¬6¦  «        ddZf ejP        dd/¬6¦  «         ejP        ddY¬6¦  «        dd[f ejP        dd/ejQ        ¬\¦  «         ejP        dd/¬6¦  «        dd]f ejP        dd/ej*        ¬\¦  «         ejP        dd/ej+        ¬\¦  «        dd]fg¦  «        d^„ ¦   «         ZRej'         (                    d_dEdFg¦  «        ej'         (                    d`eez   ¦  «        ej'         (                    daeez   ¦  «        ej'         (                    dej*        ej+        g¦  «        db„ ¦   «         ¦   «         ¦   «         ¦   «         ZSdS )cé    N)ÚRandomState)Úassert_array_almost_equalÚassert_array_equal)Úlinalg)Úmake_classification)Úassert_allclose)ÚCSC_CONTAINERSÚCSR_CONTAINERSÚLIL_CONTAINERSÚ_sparse_random_array)Ú_implicit_column_offsetÚcount_nonzeroÚcsc_median_axis_0Úincr_mean_variance_axisÚinplace_column_scaleÚinplace_row_scaleÚinplace_swap_columnÚinplace_swap_rowÚmean_variance_axisÚmin_max_axisÚsparse_matmul_to_dense)Úassign_rows_csrÚcsr_row_normsÚinplace_csr_row_normalize_l1Úinplace_csr_row_normalize_l2Úcsc_containerÚcsr_containerÚlil_containerc           	      óB  — t          ddd¬¦  «        \  }}d|d<   d|d<   d|d<    ||¦  «        }d|d<   d|d<   t          j        t          ¦  «        5  t	          |d¬	¦  «         d d d ¦  «         n# 1 swxY w Y    ||¦  «        } | |¦  «        }t
          j        t
          j        ft
          j        t
          j        ft
          j        t
          j        ft
          j	        t
          j        fg}|D ]¬\  }	}
| 
                    |	¦  «        }||fD ]�}| 
                    |	¦  «        }t	          |d¬	¦  «        \  }}|j        |
k    sJ ‚|j        |
k    sJ ‚t          |t          j        |d¬	¦  «        ¦  «         t          |t          j        |d¬	¦  «        ¦  «         ŒŽŒ­d S )
Né   é   r   ©Úrandom_state©r   r   ©é   é   ©r!   é   ©r'   r   ©Úaxis©r   ÚpytestÚraisesÚ	TypeErrorr   ÚnpÚfloat32Úfloat64Úint32Úint64ÚastypeÚdtyper   ÚmeanÚvar©r   r   r   ÚXÚ_ÚX_lilÚX_csrÚX_cscÚexpected_dtypesÚinput_dtypeÚoutput_dtypeÚX_testÚX_sparseÚX_meansÚX_varss                  úb/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/sklearn/utils/tests/test_sparsefuncs.pyÚtest_mean_variance_axis0rH   %   ó  € õ ˜q !°!Ð4Ñ4Ô4�D€A€qà€A€d�GØ€A€d�GØ€A€d�GØˆM˜!ÑÔ€EØ€Eˆ$�KØ€A€d�Gå	Œ•yÑ	!Ô	!ð *ð *Ý˜5 qÐ)Ñ)Ô)Ð)ð*ð *ð *ñ *ô *ð *ð *ð *ð *ð *ð *øøøð *ð *ð *ð *ð ˆM˜%Ñ Ô €EØˆM˜%Ñ Ô €Eõ 
Œ•R”ZÐ Ý	Œ•R”ZÐ Ý	Œ•2”:ÐÝ	Œ•2”:Ðð	€Oð &5ð Fð FÑ!ˆ�\Ø—’˜+Ñ&Ô&ˆØ ˜ð 	Fð 	FˆHØ—’ {Ñ3Ô3ˆHÝ0°ÀÐBÑBÔB‰OˆG�VØ”= LÒ0Ð0Ð0Ð0Ø”< <Ò/Ð/Ð/Ð/Ý% g­r¬w°vÀAÐ/FÑ/FÔ/FÑGÔGÐGÝ% f­b¬f°VÀ!Ð.DÑ.DÔ.DÑEÔEÐEÐEð	FðFð Fó   ÁA1Á1A5Á8A5r7   Úsparse_constructorc                 óâ  — t           j                             d¦  «        }t          j        dd| ¬¦  «        }|                     t          j        |j        d         ¦  «        dd¬¦  «        }t           j        ||df<    ||¦  «        }|                     |j        d         ¦  «         	                    | ¦  «        }t          ||d¬¦  «        \  }}|t          j        | ¦  «        j        k     sJ ‚d S )	Nr   g      Y@)iè  r'   )Ú
fill_valueÚshaper7   é
   F)Úreplace)Úweightsr,   )r1   Úrandomr   ÚfullÚchoiceÚarangerN   ÚnanÚrandr6   r   ÚfinfoÚeps)r7   rK   Úrngr;   Úmissing_indicesÚsample_weightr<   r9   s           rG   Ú"test_mean_variance_axis0_precisionr]   J   sØ   € õ
 Œ)×
Ò
 Ñ
"Ô
"€CÝ
Œ˜5¨	¸Ð?Ñ?Ô?€Aà—j’j¥¤¨1¬7°1¬:Ñ!6Ô!6¸ÀE�jÑJÔJ€OÝœF€A€o�qÐÑØÐ˜1ÑÔ€Að —H’H˜QœW QœZÑ(Ô(×/Ò/°Ñ6Ô6€Må ¨=¸qÐAÑAÔA�F€A€sà•”˜%‘”Ô$Ò$Ð$Ð$Ð$Ð$Ð$ó    c           	      óB  — t          ddd¬¦  «        \  }}d|d<   d|d<   d|d<    ||¦  «        }d|d<   d|d<   t          j        t          ¦  «        5  t	          |d	¬
¦  «         d d d ¦  «         n# 1 swxY w Y    ||¦  «        } | |¦  «        }t
          j        t
          j        ft
          j        t
          j        ft
          j        t
          j        ft
          j	        t
          j        fg}|D ]¬\  }	}
| 
                    |	¦  «        }||fD ]�}| 
                    |	¦  «        }t	          |d¬
¦  «        \  }}|j        |
k    sJ ‚|j        |
k    sJ ‚t          |t          j        |d¬
¦  «        ¦  «         t          |t          j        |d¬
¦  «        ¦  «         ŒŽŒ­d S )Nr    r!   r   r"   r$   r%   r(   r*   r'   r+   r-   r:   s                  rG   Útest_mean_variance_axis1r`   ^   rI   rJ   )ÚXwr;   rQ   )r   r   r'   ©r   r&   r)   )r'   r'   r'   )r   r'   r'   )r   r   r   r'   )r   r'   r'   r'   )r'   r&   r'   r&   )ç      ð?rc   rc   r'   r)   ©r   r   r   )r&   r&   r   )r   r   r)   g       @rc   )r'   r   r'   )r   r)   r'   )r'   r   r   r   r'   )r   r)   r)   r)   r'   )r'   r)   r'   c                 óÖ  — d} || ¦  «                              |¦  «        } ||¦  «                              |¦  «        }t          j        t          j        | ¦  «        d         |¬¦  «        }t          j        ||¬¦  «        }	t          j        |t          j        ¬¦  «        }
t          ||||	|
d ¬¦  «        \  }}}t          ||||	|
|¬¦  «        \  }}}|j        |k    sJ ‚|j        |k    sJ ‚|j        |k    sJ ‚t          ||¬¦  «        \  }}t          ||¦  «         t          ||¦  «         t          ||¦  «         t          ||¦  «         t          ||¦  «         t          |||||d ¬¦  «        \  }}}t          ||||||¬¦  «        \  }}}t          ||¦  «         t          ||¦  «         t          ||¦  «         |j        |k    sJ ‚|j        |k    sJ ‚|j        |k    sJ ‚d S )Nr'   r   ©r7   ©r;   r,   Ú	last_meanÚlast_varÚlast_nrQ   ©r;   r,   )
r6   r1   ÚzerosrN   Ú
zeros_liker5   r   r7   r   r   ©ra   r;   rQ   rK   r7   r,   Ú	Xw_sparserD   rh   ri   rj   Úmeans0Úvars0Ún_incr0Úmeans_w0Úvars_w0Ú	n_incr_w0Úmeans_simpleÚvars_simpleÚmeans1Úvars1Ún_incr1Úmeans_w1Úvars_w1Ú	n_incr_w1s                            rG   Ú+test_incr_mean_variance_axis_weighted_axis1r~   ƒ   s]  € ðF €DØ"Ð" 2Ñ&Ô&×-Ò-¨eÑ4Ô4€IØ!Ð! !Ñ$Ô$×+Ò+¨EÑ2Ô2€Hå”�œ "™œ aœ°Ð6Ñ6Ô6€IÝŒ}˜Y¨eÐ4Ñ4Ô4€HÝŒ]˜9­B¬HÐ5Ñ5Ô5€FÝ4Ø
ØØØØØðñ ô Ñ€FˆE�7õ $;Ø
ØØØØØð$ñ $ô $Ñ €Hˆg�yð Œ>˜UÒ"Ð"Ð"Ð"ØŒ=˜EÒ!Ð!Ð!Ð!ØŒ?˜eÒ#Ð#Ð#Ð#å 2°XÀDÐ IÑ IÔ IÑ€L�+å˜f hÑ/Ô/Ð/Ý˜f lÑ3Ô3Ð3Ý˜e WÑ-Ô-Ð-Ý˜e [Ñ1Ô1Ð1Ý˜g yÑ1Ô1Ð1õ 5Ø
ØØØØØðñ ô Ñ€FˆE�7õ $;Ø
ØØØØØð$ñ $ô $Ñ €Hˆg�yõ ˜f hÑ/Ô/Ð/Ý˜e WÑ-Ô-Ð-Ý˜g yÑ1Ô1Ð1àŒ>˜UÒ"Ð"Ð"Ð"ØŒ=˜EÒ!Ð!Ð!Ð!ØŒ?˜eÒ#Ð#Ð#Ð#Ð#Ð#r^   c                 óÈ  — d} || ¦  «                              |¦  «        } ||¦  «                              |¦  «        }t          j        t          j        | d¦  «        |¬¦  «        }t          j        |¦  «        }	t          j        |t          j        ¬¦  «        }
t          ||||	|
d ¬¦  «        \  }}}t          ||||	|
|¬¦  «        \  }}}|j        |k    sJ ‚|j        |k    sJ ‚|j        |k    sJ ‚t          ||¬¦  «        \  }}t          ||¦  «         t          ||¦  «         t          ||¦  «         t          ||¦  «         t          ||¦  «         t          |||||d ¬¦  «        \  }}}t          ||||||¬¦  «        \  }}}t          ||¦  «         t          ||¦  «         t          ||¦  «         |j        |k    sJ ‚|j        |k    sJ ‚|j        |k    sJ ‚d S )Nr   r'   rf   rg   rk   )
r6   r1   rl   Úsizerm   r5   r   r7   r   r   rn   s                            rG   Ú+test_incr_mean_variance_axis_weighted_axis0r�   ç   sV  € ð@ €DØ"Ð" 2Ñ&Ô&×-Ò-¨eÑ4Ô4€IØ!Ð! !Ñ$Ô$×+Ò+¨EÑ2Ô2€Hå”�œ  Q™œ¨uÐ5Ñ5Ô5€IÝŒ}˜YÑ'Ô'€HÝŒ]˜9­B¬HÐ5Ñ5Ô5€FÝ4Ø
ØØØØØðñ ô Ñ€FˆE�7õ $;Ø
ØØØØØð$ñ $ô $Ñ €Hˆg�yð Œ>˜UÒ"Ð"Ð"Ð"ØŒ=˜EÒ!Ð!Ð!Ð!ØŒ?˜eÒ#Ð#Ð#Ð#å 2°XÀDÐ IÑ IÔ IÑ€L�+å˜f hÑ/Ô/Ð/Ý˜f lÑ3Ô3Ð3Ý˜e WÑ-Ô-Ð-Ý˜e [Ñ1Ô1Ð1Ý˜g yÑ1Ô1Ð1õ 5Ø
ØØØØØðñ ô Ñ€FˆE�7õ $;Ø
ØØØØØð$ñ $ô $Ñ €Hˆg�yõ ˜f hÑ/Ô/Ð/Ý˜e WÑ-Ô-Ð-Ý˜g yÑ1Ô1Ð1àŒ>˜UÒ"Ð"Ð"Ð"ØŒ=˜EÒ!Ð!Ð!Ð!ØŒ?˜eÒ#Ð#Ð#Ð#Ð#Ð#r^   c           
      ó¸  ‡‡‡— dD �]Ò}t           j                             d¦  «        ŠdŠdŠ|dk    rˆˆfd„t          ‰¦  «        D ¦   «         }nˆˆfd„t          ‰¦  «        D ¦   «         }|dk    rt          j        ‰¦  «        nt          j        ‰¦  «        }t          j        |¦  «        }t          j        |t           j        ¬¦  «        }t          j        |d         ¦  «        }t          j        |¦  «        }|dk    r|j	        n|} ||¦  «        }	 ||	¦  «        }
t          j        t          ¦  «        5  t          ||||¬	¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          ¦  «        5  t          |	||||¬
¦  «         d d d ¦  «         n# 1 swxY w Y   t          |
|¦  «        \  }}t          |
||||¬
¦  «        \  }}}t          ||¦  «         t          ||¦  «         t!          |j        |         |¦  «          | |	¦  «        }t          ||¦  «        \  }}t          ||¦  «         t          ||¦  «         t!          |j        |         |¦  «         t          j        |¦  «        }|dk    r|j	        n|} ||¦  «        }	 ||	¦  «        }
 | |	¦  «        }t           j        t           j        ft           j        t           j        ft           j        t           j        ft           j        t           j        fg}|D ]Ë\  }}|
|fD ]Á}|                     |¦  «        }|                     |¦  «        }|                     |¦  «        }t          ||¦  «        \  }}t          |||||¬
¦  «        \  }}}|j        |k    sJ ‚|j        |k    sJ ‚t          ||¦  «         t          ||¦  «         t!          |j        |         |¦  «         ŒÂŒÌ�ŒÔd S )N©r   r'   r   é2   rO   c                 ó@   •— g | ]}‰                      d d‰¬¦  «        ‘ŒS ©r   r&   )r€   ©Úrandint)Ú.0ÚiÚ
n_featuresrZ   s     €€rG   ú
<listcomp>z0test_incr_mean_variance_axis.<locals>.<listcomp>Q  s+   ø€ ÐXÐXÐXÀ!˜3Ÿ;š; q¨!°*˜;Ñ=Ô=ÐXÐXÐXr^   c                 ó@   •— g | ]}‰                      d d‰¬¦  «        ‘ŒS r†   r‡   )r‰   rŠ   Ú	n_samplesrZ   s     €€rG   rŒ   z0test_incr_mean_variance_axis.<locals>.<listcomp>S  s+   ø€ ÐXÐXÐXÀ˜3Ÿ;š; q¨!°)˜;Ñ<Ô<ÐXÐXÐXr^   rf   r'   )r;   r,   rh   ri   ©r,   rh   ri   rj   )r1   rR   r   Úrangerl   rm   r5   ÚarrayÚ
atleast_2dÚTr.   r/   r0   r   r   r   r   rN   Úvstackr2   r3   r4   r6   r7   )r   r   r   r,   Údata_chunksrh   ri   rj   r;   r=   r>   rE   rF   ÚX_means_incrÚX_vars_incrÚn_incrr?   r@   rA   rB   rD   r‹   rŽ   rZ   s                        @@@rG   Útest_incr_mean_variance_axisr™   H  s¥  øøø€ ð ð M:ñ M:ˆÝŒi×#Ò# AÑ&Ô&ˆØˆ
Øˆ	Ø�1Š9ˆ9ØXÐXÐXÐXÐXÅuÈYÑGWÔGWÐXÑXÔXˆKˆKàXÐXÐXÐXÐXÅeÈJÑFWÔFWÐXÑXÔXˆKð -1°AªI¨I•B”H˜ZÑ(Ô(Ð(½2¼8ÀIÑ;NÔ;Nˆ	Ý”= Ñ+Ô+ˆÝ”˜yµ´Ð9Ñ9Ô9ˆõ ŒH�[ ”^Ñ$Ô$ˆÝŒM˜!ÑÔˆØ˜1’9�9ˆAŒCˆC !ˆØ�˜aÑ Ô ˆØ�˜eÑ$Ô$ˆåŒ]�9Ñ%Ô%ð 	ð 	Ý#Ø˜Y°(ÀVðñ ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ Œ]�9Ñ%Ô%ð 	ð 	Ý#Ø˜D¨IÀÐQWðñ ô ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ -¨U°DÑ9Ô9‰ˆ�Ý,CØ˜¨	¸HÈVð-
ñ -
ô -
Ñ)ˆ�k 6õ 	" '¨<Ñ8Ô8Ð8Ý! &¨+Ñ6Ô6Ð6å˜1œ7 4œ=¨&Ñ1Ô1Ð1à�˜eÑ$Ô$ˆÝ,¨U°DÑ9Ô9‰ˆ�Ý! '¨<Ñ8Ô8Ð8Ý! &¨+Ñ6Ô6Ð6Ý˜1œ7 4œ=¨&Ñ1Ô1Ð1õ ŒI�kÑ"Ô"ˆØ˜1’9�9ˆAŒCˆC !ˆØ�˜aÑ Ô ˆØ�˜eÑ$Ô$ˆØ�˜eÑ$Ô$ˆõ ŒZ�œÐ$ÝŒZ�œÐ$ÝŒX•r”zÐ"ÝŒX•r”zÐ"ð	
ˆð *9ð 	:ð 	:Ñ%ˆK˜Ø" E˜Nð :ð :�Ø#Ÿ?š?¨;Ñ7Ô7�Ø%×,Ò,¨\Ñ:Ô:�	Ø#Ÿ?š?¨<Ñ8Ô8�Ý"4°X¸tÑ"DÔ"D‘�˜Ý4KØØØ'Ø%Ø!ð5ñ 5ô 5Ñ1�˜k¨6ð $Ô)¨\Ò9Ð9Ð9Ð9Ø"Ô(¨LÒ8Ð8Ð8Ð8Ý)¨'°<Ñ@Ô@Ð@Ý)¨&°+Ñ>Ô>Ð>Ý" 1¤7¨4¤=°&Ñ9Ô9Ð9Ð9ð!:ñ	:ðyM:ð M:s$   Ä9EÅE	Å E	Å=FÆF"	Æ%F"	c                 ó~  — d\  }}t           j                             d¦  «        } | |                     ||¦  «        ¦  «        }t          j        |¦  «        }t          j        |¦  «        }t          j        |j        t           j        ¬¦  «        }t          |||¬¦  «        }t          |fddi|¤Ž\  }	}
}t          t          j        |                     ¦   «         d¬¦  «        |	¦  «         t          t          j        |                     ¦   «         d¬¦  «        |
¦  «         t          j        t           ¦  «        5  t          |fddi|¤Ž d	d	d	¦  «         n# 1 swxY w Y   t          |d	d
…         ||¬¦  «        }t          j        t           ¦  «        5  t          |fddi|¤Ž d	d	d	¦  «         d	S # 1 swxY w Y   d	S )z¦Check that we raise proper error when axis=1 and the dimension mismatch.
    Non-regression test for:
    https://github.com/scikit-learn/scikit-learn/pull/18655
    )é<   r!   é*   rf   )rh   ri   rj   r,   r   r+   r'   Néÿÿÿÿ)r1   rR   r   rW   rl   rm   rN   r5   Údictr   r   r8   Útoarrayr9   r.   r/   Ú
ValueError)rK   rŽ   r‹   rZ   r;   rh   ri   rj   ÚkwargsÚmean0Úvar0r<   s               rG   Ú)test_incr_mean_variance_axis_dim_mismatchr¤   œ  s(  € ð "Ñ€IˆzÝ
Œ)×
Ò
 Ñ
#Ô
#€CØÐ˜3Ÿ8š8 I¨zÑ:Ô:Ñ;Ô;€Aå”˜Ñ$Ô$€IÝŒ}˜YÑ'Ô'€HÝŒX�i”o­R¬XÐ6Ñ6Ô6€Få˜I°ÀÐHÑHÔH€FÝ,¨QÐAÐA°QÐA¸&ÐAÐA�N€Eˆ4�Ý•B”G˜AŸIšI™KœK¨aÐ0Ñ0Ô0°%Ñ8Ô8Ð8Ý•B”F˜1Ÿ9š9™;œ;¨QÐ/Ñ/Ô/°Ñ6Ô6Ð6õ 
Œ•zÑ	"Ô	"ð 5ð 5Ý Ð4Ð4¨Ð4¨VÐ4Ð4Ð4ð5ð 5ð 5ñ 5ô 5ð 5ð 5ð 5ð 5ð 5ð 5øøøð 5ð 5ð 5ð 5õ ˜I c r cœN°XÀfÐMÑMÔM€FÝ	Œ•zÑ	"Ô	"ð 5ð 5Ý Ð4Ð4¨Ð4¨VÐ4Ð4Ð4ð5ð 5ð 5ñ 5ô 5ð 5ð 5ð 5ð 5ð 5ð 5ð 5øøøð 5ð 5ð 5ð 5ð 5ð 5s$   Ä;EÅEÅEÆF2Æ2F6Æ9F6zX1, X2©r    r&   çš™™™™™é?Úcsr©ÚdensityÚformatrZ   )é   r&   )r«   r'   )rM   rœ   )r©   rZ   )rª   c           	      óþ  —  || ¦  «        }  ||¦  «        }d}t          j        | j        d         ¦  «        t          j        | j        d         ¦  «        }}t          j        | j        d         t           j        ¬¦  «        }t	          | ||||¬¦  «        \  }}}	t	          |||||	¬¦  «        \  }}}	t          j        | |g¦  «        }
t          |t          j        |
 	                    ¦   «         |¬¦  «        ¦  «         t          |t          j
        |
 	                    ¦   «         |¬¦  «        ¦  «         t          |	t          j        t          j        |
 	                    ¦   «         ¦  «         d¬¦  «        ¦  «         d S )Nr   r'   rf   r�   r+   )r1   rl   rN   r5   r   Úspr”   r   ÚnanmeanrŸ   Únanvarr   Úisnan)ÚX1ÚX2r   r,   rh   ri   rj   Úupdated_meanÚupdated_varÚ	updated_nr;   s              rG   Ú6test_incr_mean_variance_axis_equivalence_mean_variancer¶   ¹  sY  € ð2 
ˆ�rÑ	Ô	€BØ	ˆ�rÑ	Ô	€BØ€DÝœ( 2¤8¨A¤;Ñ/Ô/µ´¸"¼(À1¼+Ñ1FÔ1Fˆx€IÝŒX�b”h˜q”k­¬Ð2Ñ2Ô2€FÝ+BØ
� °XÀfð,ñ ,ô ,Ñ(€L�+˜yõ ,CØ
� ¸ÈIð,ñ ,ô ,Ñ(€L�+˜yõ 	Œ	�2�r�(ÑÔ€AÝ�L¥"¤*¨Q¯YªY©[¬[¸tÐ"DÑ"DÔ"DÑEÔEÐEÝ�K¥¤¨1¯9ª9©;¬;¸TÐ!BÑ!BÔ!BÑCÔCÐCÝ�I�rÔ/µ´¸!¿)º)¹+¼+Ñ1FÔ1FÐ0FÈQÐOÑOÔOÑPÔPÐPÐPÐPr^   c                  óè  — d} t          dddd¬¦  «        }t          dddd¬¦  «        }t          j        |j        d         ¦  «        t          j        |j        d         ¦  «        }}t          j        |j        d         t          j        ¬¦  «        }t          || |||¬	¦  «        \  }}}t          || |||¬	¦  «        \  }}}t          ||¦  «         t          ||¦  «         t          ||¦  «         d S )
Nr   )r    r'   r¦   r§   r¨   rƒ   r'   rf   r�   )r   r1   rl   rN   r5   r   r   )	r,   r±   r²   rh   ri   rj   r³   r´   rµ   s	            rG   Ú test_incr_mean_variance_no_new_nr¸   ã  sÿ   € à€DÝ	˜f¨c¸%ÀQÐ	GÑ	GÔ	G€BÝ	˜f¨c¸%ÀQÐ	GÑ	GÔ	G€BÝœ( 2¤8¨A¤;Ñ/Ô/µ´¸"¼(À1¼+Ñ1FÔ1Fˆx€IÝŒX�b”h˜q”k­¬Ð2Ñ2Ô2€FÝ"9Ø
� °XÀfð#ñ #ô #Ñ€Iˆx˜õ ,CØ
� °XÀfð,ñ ,ô ,Ñ(€L�+˜yõ �L )Ñ,Ô,Ð,Ý�K Ñ*Ô*Ð*Ý�I˜vÑ&Ô&Ð&Ð&Ð&r^   c                  óR  — d} t          dddd¬¦  «        }t          j        |j        d         ¦  «        t          j        |j        d         ¦  «        }}d}t	          || |||¬¦  «        \  }}}t          |t          j        |j        d         |j        d         ¦  «        ¦  «         d S )Nr   r¥   r¦   r§   r¨   r'   r�   )r   r1   rl   rN   r   r   rS   )r,   r;   rh   ri   rj   r<   Únew_ns          rG   Útest_incr_mean_variance_n_floatr»   ö  s    € à€DÝ˜V¨S¸ÀAÐFÑFÔF€AÝœ( 1¤7¨1¤:Ñ.Ô.µ´¸¼À¼Ñ0DÔ0Dˆx€IØ€FÝ)Ø	� 	°HÀVðñ ô �K€A€qˆ%õ �E�2œ7 1¤7¨1¤:¨q¬w°q¬zÑ:Ô:Ñ;Ô;Ð;Ð;Ð;r^   r,   c                 óX  — t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        g d¢t           j        ¬¦  «        } |t          j        g d¢g d¢g d¢g¦  «        ¦  «        } |t          j        dt           j        ddgt           j        dd	d	gd	d	t           j        d
gd
d
d
t           j        gg¦  «        ¦  «        }| r|j        }|j        }t          || |                     ¦   «         |                     ¦   «         |                     ¦   «         ¬¦  «        \  }}}	t          || |                     ¦   «         |                     ¦   «         |                     ¦   «         ¬¦  «        \  }
}}t          |
|¦  «         t          ||¦  «         t          ||	¦  «         d S )N)ç     ¸€@r½   r½   r½   )ç     �°@r¾   r¾   r¾   )r&   r&   r&   r&   rf   )éª   r¿   r¿   r¿   )é®  rÀ   rÀ   rÀ   )é,  rÁ   rÁ   rÁ   r¿   rÀ   rÁ   r�   )r1   r‘   r5   rV   r“   r   Úcopyr   )r,   rK   Ú	old_meansÚold_variancesÚold_sample_countr;   ÚX_nanrE   rF   ÚX_sample_countÚX_nan_meansÚ
X_nan_varsÚX_nan_sample_counts                rG   Ú'test_incr_mean_variance_axis_ignore_nanrË     sÕ  € õ ”Ð5Ð5Ð5Ñ6Ô6€IÝ”HÐ=Ð=Ð=Ñ>Ô>€MÝ”x   µB´HÐ=Ñ=Ô=ÐàÐÝ
ŒÐ&Ð&Ð&Ð(<Ð(<Ð(<Ð>RÐ>RÐ>RÐSÑTÔTñ	ô 	€Að ÐÝ
Œà•b”f˜c 3Ð'Ý”˜˜c 3Ð'Ø�c�2œ6 3Ð'Ø�c˜3¥¤Ð'ð	ñ	
ô 	
ñ	ô 	€Eð ð ØŒCˆØ”ˆõ '>Ø	ØØ—.’.Ñ"Ô"Ø×#Ò#Ñ%Ô%Ø×$Ò$Ñ&Ô&ð'ñ 'ô 'Ñ#€GˆV�^õ 3JØØØ—.’.Ñ"Ô"Ø×#Ò#Ñ%Ô%Ø×$Ò$Ñ&Ô&ð3ñ 3ô 3Ñ/€K�Ð/õ �K Ñ)Ô)Ð)Ý�J Ñ'Ô'Ð'ÝÐ&¨Ñ7Ô7Ð7Ð7Ð7r^   c                 ó�  — t          ddd¬¦  «        \  }}d|d<   d|d<   d|d<    | |¦  «        }t          j        t          ¦  «        5  t	          |d¬	¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          ¦  «        5  t	          |d
¬	¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          ¦  «        5  t	          |d¬	¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          ¦  «        5  t          |dd d d ¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          ¦  «        5  t          |d
d d d ¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          ¦  «        5  t          |dd d d ¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr    r!   r   r"   r$   r%   r(   éýÿÿÿr+   r&   r�   r�   )r   r.   r/   r    r   r   )r   r;   r<   r>   s       rG   Útest_mean_variance_illegal_axisrÎ   3  sV  € å˜q !°!Ð4Ñ4Ô4�D€A€qà€A€d�GØ€A€d�GØ€A€d�GØˆM˜!ÑÔ€EÝ	Œ•zÑ	"Ô	"ð +ð +Ý˜5 rÐ*Ñ*Ô*Ð*ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +å	Œ•zÑ	"Ô	"ð *ð *Ý˜5 qÐ)Ñ)Ô)Ð)ð*ð *ð *ñ *ô *ð *ð *ð *ð *ð *ð *øøøð *ð *ð *ð *å	Œ•zÑ	"Ô	"ð +ð +Ý˜5 rÐ*Ñ*Ô*Ð*ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +õ 
Œ•zÑ	"Ô	"ð 
ð 
ÝØ˜ d°TÀ$ð	
ñ 	
ô 	
ð 	
ð
ð 
ð 
ñ 
ô 
ð 
ð 
ð 
ð 
ð 
ð 
øøøð 
ð 
ð 
ð 
õ
 
Œ•zÑ	"Ô	"ð 
ð 
ÝØ˜ T°DÀð	
ñ 	
ô 	
ð 	
ð
ð 
ð 
ñ 
ô 
ð 
ð 
ð 
ð 
ð 
ð 
øøøð 
ð 
ð 
ð 
õ
 
Œ•zÑ	"Ô	"ð 
ð 
ÝØ˜ d°TÀ$ð	
ñ 	
ô 	
ð 	
ð
ð 
ð 
ñ 
ô 
ð 
ð 
ð 
ð 
ð 
ð 
ð 
øøøð 
ð 
ð 
ð 
ð 
ð 
sl   Á	A'Á'A+Á.A+ÂB)Â)B-Â0B-ÃC+Ã+C/Ã2C/ÄD0Ä0D4Ä7D4ÅE5Å5E9Å<E9ÆF;Æ;F?ÇF?c           	      óð  — t           j        t           j        fD ]Ü} | g d¢g d¢g d¢g d¢g d¢g|¬¦  «        }t          j        g d¢t           j        ¬¦  «        }t          j        d|j        d	         f|¬¦  «        }t          j        g d
¢t           j        ¬¦  «        }t          j        |¦  «        }||d d …f                              ¦   «         ||<   t          ||||¦  «         t          ||¦  «         ŒÝd S )N©r   r)   r   ©r&   r!   r   rd   ©é	   é   é   ©r!   r   r    rf   rb   é   r'   )r'   r)   r!   )r1   r2   r3   r‘   ÚintpÚonesrN   Ú	ones_likerŸ   r   r   )r   r7   r;   ÚX_rowsÚoutÚout_rowsÚexpects          rG   Útest_densify_rowsrß   R  s
  € å”*�bœjÐ)ð (ð (ˆØˆMØˆYˆY˜	˜	˜	 9 9 9¨i¨i¨i¸¸¸ÐCÈ5ð
ñ 
ô 
ˆõ ”˜)˜)˜)­2¬7Ð3Ñ3Ô3ˆÝŒg�q˜!œ' !œ*�o¨UÐ3Ñ3Ô3ˆÝ”8˜I˜I˜I­R¬WÐ5Ñ5Ô5ˆå”˜cÑ"Ô"ˆØ˜V Q Q Q˜Yœ<×/Ò/Ñ1Ô1ˆˆxÑå˜˜6 8¨SÑ1Ô1Ð1Ý˜3 Ñ'Ô'Ð'Ð'ð(ð (r^   c                  ó¾  — t           j                             d¦  «        } t          dd¬¦  «        }|                     ¦   «         }|                     ¦   «         }|                     ¦   «         }|                      d¦  «        }||z  }t          ||¦  «         t          ||¦  «         t          |                     ¦   «         |                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          j        t          ¦  «        5  t          |                     ¦   «         |¦  «         d d d ¦  «         n# 1 swxY w Y   |                     t           j        ¦  «        }|                     t           j        ¦  «        }|                     ¦   «         }|                     ¦   «         }|                     ¦   «         }||z  }t          ||¦  «         t          ||¦  «         t          |                     ¦   «         |                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          j        t          ¦  «        5  t          |                     ¦   «         |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   ©éd   éÈ   çš™™™™™©?©r©   rã   )r1   rR   r   r   ÚtocsrÚtocscrŸ   rW   r   r   r.   r/   r0   Útolilr6   r2   ©rZ   r;   ÚXrÚXcÚXAÚscales         rG   Útest_inplace_column_scalerî   c  s©  € Ý
Œ)×
Ò
 Ñ
"Ô
"€CÝ˜Z°Ð6Ñ6Ô6€AØ	
�Š‰Œ€BØ	
�Š‰Œ€BØ	
�Š‰Œ€BØ�HŠH�S‰MŒM€EØˆ%�K€Bå˜˜UÑ#Ô#Ð#Ý˜˜UÑ#Ô#Ð#Ý˜bŸjšj™lœl¨B¯JªJ©L¬LÑ9Ô9Ð9Ý˜b "§*¢*¡,¤,Ñ/Ô/Ð/Ý˜b "§*¢*¡,¤,Ñ/Ô/Ð/Ý	Œ•yÑ	!Ô	!ð /ð /Ý˜QŸWšW™YœY¨Ñ.Ô.Ð.ð/ð /ð /ñ /ô /ð /ð /ð /ð /ð /ð /øøøð /ð /ð /ð /ð 	
�Š•”ÑÔ€AØ�LŠL�œÑ$Ô$€EØ	
�Š‰Œ€BØ	
�Š‰Œ€BØ	
�Š‰Œ€BØˆ%�K€BÝ˜˜UÑ#Ô#Ð#Ý˜˜UÑ#Ô#Ð#Ý˜bŸjšj™lœl¨B¯JªJ©L¬LÑ9Ô9Ð9Ý˜b "§*¢*¡,¤,Ñ/Ô/Ð/Ý˜b "§*¢*¡,¤,Ñ/Ô/Ð/Ý	Œ•yÑ	!Ô	!ð /ð /Ý˜QŸWšW™YœY¨Ñ.Ô.Ð.ð/ð /ð /ñ /ô /ð /ð /ð /ð /ð /ð /ð /øøøð /ð /ð /ð /ð /ð /s$   Ä8#E'Å'E+Å.E+Ê"#KËKËKc                  ó  — t           j                             d¦  «        } t          dd¬¦  «        }|                     ¦   «         }|                     ¦   «         }|                     ¦   «         }|                      d¦  «        }||                     dd¦  «        z  }t          ||¦  «         t          ||¦  «         t          |                     ¦   «         |                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          j        t          ¦  «        5  t          |                     ¦   «         |¦  «         d d d ¦  «         n# 1 swxY w Y   |                     t           j        ¦  «        }|                     t           j        ¦  «        }|                     ¦   «         }|                     ¦   «         }|                     ¦   «         }||                     dd¦  «        z  }t          ||¦  «         t          ||¦  «         t          |                     ¦   «         |                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          j        t          ¦  «        5  t          |                     ¦   «         |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   rá   rä   rå   râ   r�   r'   )r1   rR   r   r   ræ   rç   rŸ   rW   Úreshaper   r   r.   r/   r0   r   rè   r6   r2   ré   s         rG   Útest_inplace_row_scalerñ   ƒ  sÇ  € Ý
Œ)×
Ò
 Ñ
"Ô
"€CÝ˜Z°Ð6Ñ6Ô6€AØ	
�Š‰Œ€BØ	
�Š‰Œ€BØ	
�Š‰Œ€BØ�HŠH�S‰MŒM€EØˆ%�-Š-˜˜AÑ
Ô
Ñ€Bå�b˜%Ñ Ô Ð Ý�b˜%Ñ Ô Ð Ý˜bŸjšj™lœl¨B¯JªJ©L¬LÑ9Ô9Ð9Ý˜b "§*¢*¡,¤,Ñ/Ô/Ð/Ý˜b "§*¢*¡,¤,Ñ/Ô/Ð/Ý	Œ•yÑ	!Ô	!ð /ð /Ý˜QŸWšW™YœY¨Ñ.Ô.Ð.ð/ð /ð /ñ /ô /ð /ð /ð /ð /ð /ð /øøøð /ð /ð /ð /ð 	
�Š•”ÑÔ€AØ�LŠL�œÑ$Ô$€EØ	
�Š‰Œ€BØ	
�Š‰Œ€BØ	
�Š‰Œ€BØˆ%�-Š-˜˜AÑ
Ô
Ñ€BÝ�b˜%Ñ Ô Ð Ý�b˜%Ñ Ô Ð Ý˜bŸjšj™lœl¨B¯JªJ©L¬LÑ9Ô9Ð9Ý˜b "§*¢*¡,¤,Ñ/Ô/Ð/Ý˜b "§*¢*¡,¤,Ñ/Ô/Ð/Ý	Œ•yÑ	!Ô	!ð /ð /Ý˜QŸWšW™YœY¨Ñ.Ô.Ð.ð/ð /ð /ñ /ô /ð /ð /ð /ð /ð /ð /ð /øøøð /ð /ð /ð /ð /ð /s$   Å#E;Å;E?ÆE?Ë
#K:Ë:K>ÌK>c                 ó´  — t          j        g d¢g d¢g d¢g d¢g d¢gt           j        ¬¦  «        } ||¦  «        } | |¦  «        }t          j        d|f¦  «        }|d         } ||d         |d	         ¦  «        \  |d<   |d	<   t          |dd	¦  «         t          |dd	¦  «         t          |                     ¦   «         |                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «          ||d
         |d         ¦  «        \  |d
<   |d<   t          |d
d¦  «         t          |d
d¦  «         t          |                     ¦   «         |                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          j	        t          ¦  «        5  t          |                     ¦   «         ¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        g d¢g d¢g d¢g d¢g d¢gt           j        ¬¦  «        } ||¦  «        } | |¦  «        }t          j        d|f¦  «        }|d         } ||d         |d	         ¦  «        \  |d<   |d	<   t          |dd	¦  «         t          |dd	¦  «         t          |                     ¦   «         |                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «          ||d
         |d         ¦  «        \  |d
<   |d<   t          |d
d¦  «         t          |d
d¦  «         t          |                     ¦   «         |                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          j	        t          ¦  «        5  t          |                     ¦   «         ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NrÐ   rÑ   rd   rÒ   rÖ   rf   ©Úswapr   r�   r&   r)   )r1   r‘   r3   r   Úget_blas_funcsr   r   rŸ   r.   r/   r0   rè   r2   ©r   r   r;   r>   r?   rô   s         rG   Útest_inplace_swap_rowr÷   £  sa  € õ 	ŒØ	ˆˆ�I�I�I˜y˜y˜y¨)¨)¨)°Y°Y°YÐ?ÅrÄzð	ñ 	ô 	€Að ˆM˜!ÑÔ€EØˆM˜!ÑÔ€EåÔ  ¨Q¨DÑ1Ô1€DØ�Œ7€DØ�$�q˜”t˜Q˜rœUÑ#Ô#�K€A€a�Dˆ!ˆB‰%Ý�U˜A˜rÑ"Ô"Ð"Ý�U˜A˜rÑ"Ô"Ð"Ý�u—}’}‘”¨¯ª©¬Ñ8Ô8Ð8Ý�q˜%Ÿ-š-™/œ/Ñ*Ô*Ð*Ý�q˜%Ÿ-š-™/œ/Ñ*Ô*Ð*à��a˜”d˜A˜aœDÑ!Ô!�J€A€a�Dˆ!ˆA‰$Ý�U˜A˜qÑ!Ô!Ð!Ý�U˜A˜qÑ!Ô!Ð!Ý�u—}’}‘”¨¯ª©¬Ñ8Ô8Ð8Ý�q˜%Ÿ-š-™/œ/Ñ*Ô*Ð*Ý�q˜%Ÿ-š-™/œ/Ñ*Ô*Ð*Ý	Œ•yÑ	!Ô	!ð (ð (Ý˜Ÿš™œÑ'Ô'Ð'ð(ð (ð (ñ (ô (ð (ð (ð (ð (ð (ð (øøøð (ð (ð (ð (õ 	ŒØ	ˆˆ�I�I�I˜y˜y˜y¨)¨)¨)°Y°Y°YÐ?ÅrÄzð	ñ 	ô 	€Að ˆM˜!ÑÔ€EØˆM˜!ÑÔ€EÝÔ  ¨Q¨DÑ1Ô1€DØ�Œ7€DØ�$�q˜”t˜Q˜rœUÑ#Ô#�K€A€a�Dˆ!ˆB‰%Ý�U˜A˜rÑ"Ô"Ð"Ý�U˜A˜rÑ"Ô"Ð"Ý�u—}’}‘”¨¯ª©¬Ñ8Ô8Ð8Ý�q˜%Ÿ-š-™/œ/Ñ*Ô*Ð*Ý�q˜%Ÿ-š-™/œ/Ñ*Ô*Ð*Ø��a˜”d˜A˜aœDÑ!Ô!�J€A€a�Dˆ!ˆA‰$Ý�U˜A˜qÑ!Ô!Ð!Ý�U˜A˜qÑ!Ô!Ð!Ý�u—}’}‘”¨¯ª©¬Ñ8Ô8Ð8Ý�q˜%Ÿ-š-™/œ/Ñ*Ô*Ð*Ý�q˜%Ÿ-š-™/œ/Ñ*Ô*Ð*Ý	Œ•yÑ	!Ô	!ð (ð (Ý˜Ÿš™œÑ'Ô'Ð'ð(ð (ð (ñ (ô (ð (ð (ð (ð (ð (ð (ð (øøøð (ð (ð (ð (ð (ð (s$   Ç3"H!È!H%È(H%Ð"QÑQÑQc                 ó4	  — t          j        g d¢g d¢g d¢g d¢g d¢gt           j        ¬¦  «        } ||¦  «        } | |¦  «        }t          j        d|f¦  «        }|d         } ||d d …df         |d d …d	f         ¦  «        \  |d d …df<   |d d …d	f<   t          |dd	¦  «         t          |dd	¦  «         t          |                     ¦   «         |                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «          ||d d …df         |d d …d
f         ¦  «        \  |d d …df<   |d d …d
f<   t          |dd
¦  «         t          |dd
¦  «         t          |                     ¦   «         |                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          j	        t          ¦  «        5  t          |                     ¦   «         ¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        g d¢g d¢g d¢g d¢g d¢gt           j        ¬¦  «        } ||¦  «        } | |¦  «        }t          j        d|f¦  «        }|d         } ||d d …df         |d d …d	f         ¦  «        \  |d d …df<   |d d …d	f<   t          |dd	¦  «         t          |dd	¦  «         t          |                     ¦   «         |                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «          ||d d …df         |d d …d
f         ¦  «        \  |d d …df<   |d d …d
f<   t          |dd
¦  «         t          |dd
¦  «         t          |                     ¦   «         |                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          ||                     ¦   «         ¦  «         t          j	        t          ¦  «        5  t          |                     ¦   «         ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NrÐ   rÑ   rd   rÒ   rÖ   rf   ró   r   r�   r'   )r1   r‘   r3   r   rõ   r   r   rŸ   r.   r/   r0   rè   r2   rö   s         rG   Útest_inplace_swap_columnrù   Õ  så  € õ 	ŒØ	ˆˆ�I�I�I˜y˜y˜y¨)¨)¨)°Y°Y°YÐ?ÅrÄzð	ñ 	ô 	€Að ˆM˜!ÑÔ€EØˆM˜!ÑÔ€EåÔ  ¨Q¨DÑ1Ô1€DØ�Œ7€DØ˜˜Q˜q˜q˜q !˜tœW a¨¨¨¨2¨¤hÑ/Ô/Ñ€A€a€a€aˆ€d�GˆQˆqˆqˆq�"ˆu‰XÝ˜˜q "Ñ%Ô%Ð%Ý˜˜q "Ñ%Ô%Ð%Ý�u—}’}‘”¨¯ª©¬Ñ8Ô8Ð8Ý�q˜%Ÿ-š-™/œ/Ñ*Ô*Ð*Ý�q˜%Ÿ-š-™/œ/Ñ*Ô*Ð*à�t˜A˜a˜a˜a ˜dœG Q q q q¨! t¤WÑ-Ô-Ñ€A€a€a€aˆ€d�GˆQˆqˆqˆq�!ˆt‰WÝ˜˜q !Ñ$Ô$Ð$Ý˜˜q !Ñ$Ô$Ð$Ý�u—}’}‘”¨¯ª©¬Ñ8Ô8Ð8Ý�q˜%Ÿ-š-™/œ/Ñ*Ô*Ð*Ý�q˜%Ÿ-š-™/œ/Ñ*Ô*Ð*Ý	Œ•yÑ	!Ô	!ð +ð +Ý˜EŸKšK™MœMÑ*Ô*Ð*ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +õ 	ŒØ	ˆˆ�I�I�I˜y˜y˜y¨)¨)¨)°Y°Y°YÐ?ÅrÄzð	ñ 	ô 	€Að ˆM˜!ÑÔ€EØˆM˜!ÑÔ€EÝÔ  ¨Q¨DÑ1Ô1€DØ�Œ7€DØ˜˜Q˜q˜q˜q !˜tœW a¨¨¨¨2¨¤hÑ/Ô/Ñ€A€a€a€aˆ€d�GˆQˆqˆqˆq�"ˆu‰XÝ˜˜q "Ñ%Ô%Ð%Ý˜˜q "Ñ%Ô%Ð%Ý�u—}’}‘”¨¯ª©¬Ñ8Ô8Ð8Ý�q˜%Ÿ-š-™/œ/Ñ*Ô*Ð*Ý�q˜%Ÿ-š-™/œ/Ñ*Ô*Ð*Ø�t˜A˜a˜a˜a ˜dœG Q q q q¨! t¤WÑ-Ô-Ñ€A€a€a€aˆ€d�GˆQˆqˆqˆq�!ˆt‰WÝ˜˜q !Ñ$Ô$Ð$Ý˜˜q !Ñ$Ô$Ð$Ý�u—}’}‘”¨¯ª©¬Ñ8Ô8Ð8Ý�q˜%Ÿ-š-™/œ/Ñ*Ô*Ð*Ý�q˜%Ÿ-š-™/œ/Ñ*Ô*Ð*Ý	Œ•yÑ	!Ô	!ð +ð +Ý˜EŸKšK™MœMÑ*Ô*Ð*ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +ð +ð +s$   È"IÉIÉIÑ"RÒRÒR)r   r'   NÚsparse_formatz.missing_values, min_func, max_func, ignore_nanFTÚlarge_indicesc                 ó€  — t          j        g d¢dd|gg d¢d|dgg d¢g| ¬¦  «        } ||¦  «        }	|r>|	j                             d	¦  «        |	_        |	j                             d	¦  «        |	_        t          |	||¬
¦  «        \  }
}t          |
 |||¬¦  «        ¦  «         t          | |||¬¦  «        ¦  «         d S )NrÐ   r&   r�   rd   rÓ   rÕ   rÖ   rf   r5   )r,   Ú
ignore_nanr+   )r1   r‘   Úindicesr6   Úindptrr   r   )r7   r,   rú   Úmissing_valuesÚmin_funcÚmax_funcrý   rû   r;   rD   Úmins_sparseÚmaxs_sparses               rG   Útest_min_maxr    só   € õ$ 	ŒàˆIˆIØ��NÐ#ØˆIˆIØ� Ð"ØˆIˆIð	
ð ð		ñ 		ô 		€Að ˆ}˜QÑÔ€Hàð :Ø#Ô+×2Ò2°7Ñ;Ô;ˆÔØ"œ/×0Ò0°Ñ9Ô9ˆŒå+¨H¸4ÈJÐWÑWÔWÑ€K�Ý�{ H H¨Q°TÐ$:Ñ$:Ô$:Ñ;Ô;Ð;Ý�{ H H¨Q°TÐ$:Ñ$:Ô$:Ñ;Ô;Ð;Ð;Ð;r^   c                 óB  — t          j        g d¢g d¢g d¢g d¢g d¢gt           j        ¬¦  «        } ||¦  «        } | |¦  «        }t          j        t
          ¦  «        5  t          |                     ¦   «         d¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          ¦  «        5  t          |d	¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          ¦  «        5  t          |d
¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NrÐ   ©r&   r�   r   rd   rÒ   rÖ   rf   r   r+   r&   rÍ   )	r1   r‘   r3   r.   r/   r0   r   rè   r    )r   r   r;   r>   r?   s        rG   Útest_min_max_axis_errorsr  .  sß  € õ 	ŒØ	ˆˆ�J�J�J 	 	 	¨9¨9¨9°i°i°iÐ@ÍÌ
ð	ñ 	ô 	€Að ˆM˜!ÑÔ€EØˆM˜!ÑÔ€EÝ	Œ•yÑ	!Ô	!ð ,ð ,Ý�U—[’[‘]”]¨Ð+Ñ+Ô+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,å	Œ•zÑ	"Ô	"ð $ð $Ý�U Ð#Ñ#Ô#Ð#ð$ð $ð $ñ $ô $ð $ð $ð $ð $ð $ð $øøøð $ð $ð $ð $å	Œ•zÑ	"Ô	"ð %ð %Ý�U Ð$Ñ$Ô$Ð$ð%ð %ð %ñ %ô %ð %ð %ð %ð %ð %ð %ð %øøøð %ð %ð %ð %ð %ð %s6   Á$BÂBÂBÂ3CÃCÃCÃ5DÄDÄDc                 óŠ  — t          j        g d¢g d¢g d¢g d¢g d¢gt           j        ¬¦  «        } ||¦  «        } | |¦  «        }|dk    }g d¢}|t          j        |¦  «        d d …d f         z  }d	D ]i}t          t	          ||¬
¦  «        |                     |¬
¦  «        ¦  «         t          t	          |||¬¦  «        |                     |¬
¦  «        ¦  «         Œjt          j        t          ¦  «        5  t	          |¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          ¦  «        5  t	          |d¬
¦  «         d d d ¦  «         n# 1 swxY w Y   t	          |d¬
¦  «        j
        t	          |d¬
¦  «        j
        k    sJ ‚t	          |d|¬¦  «        j
        t	          |d|¬¦  «        j
        k    sJ ‚	 |j                             t           j        ¦  «        |_        |j                             t           j        ¦  «        |_        t	          |d¬
¦  «        j
        t	          |d¬
¦  «        j
        k    sJ ‚t	          |d|¬¦  «        j
        t	          |d|¬¦  «        j
        k    sJ ‚d S # t          $ r@}	d|	j        d         v rt          j        ¦   «         j        dk     s
J |	¦   «         ‚Y d }	~	d S d }	~	ww xY w)NrÐ   r  rd   rÒ   rÖ   rf   r   )ç      à?gš™™™™™É?g333333Ó?çš™™™™™¹?r  )r   r'   r�   éþÿÿÿNr+   )r,   r\   r&   r'   zaccording to the rule 'safe'rÔ   )r1   r‘   r3   r   r   Úsumr.   r/   r0   r    r7   rþ   r6   r5   rÿ   ÚargsrØ   Únbytes)
r   r   r;   r>   r?   Ú	X_nonzeror\   ÚX_nonzero_weightedr,   Úes
             rG   Útest_count_nonzeror  >  sš  € õ 	ŒØ	ˆˆ�J�J�J 	 	 	¨9¨9¨9°i°i°iÐ@ÍÌ
ð	ñ 	ô 	€Að ˆM˜!ÑÔ€EØˆM˜!ÑÔ€EØ�Q’€IØ-Ð-Ð-€MØ"¥R¤X¨mÑ%<Ô%<¸Q¸Q¸QÀ¸WÔ%EÑEÐà$ð 
ð 
ˆÝ!Ý˜% dÐ+Ñ+Ô+¨Y¯]ª]À¨]Ñ-EÔ-Eñ	
ô 	
ð 	
õ 	"Ý˜% d¸-ÐHÑHÔHØ×"Ò"¨Ð"Ñ-Ô-ñ	
ô 	
ð 	
ð 	
õ
 
Œ•yÑ	!Ô	!ð ð Ý�eÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð å	Œ•zÑ	"Ô	"ð %ð %Ý�e !Ð$Ñ$Ô$Ð$ð%ð %ð %ñ %ô %ð %ð %ð %ð %ð %ð %øøøð %ð %ð %ð %õ ˜ QÐ'Ñ'Ô'Ô-µ¸uÈ1Ð1MÑ1MÔ1MÔ1SÒSÐSÐSÐSå�e !°=ÐAÑAÔAÔGÝ˜ Q°mÐDÑDÔDÔJò	Kð 	Kð 	Kð 	Kð	WØœ×,Ò,­R¬XÑ6Ô6ˆŒØ”|×*Ò*­2¬8Ñ4Ô4ˆŒÝ˜U¨Ð+Ñ+Ô+Ô1µ]À5ÈqÐ5QÑ5QÔ5QÔ5WÒWÐWÐWÐWå˜% a°}ÐEÑEÔEÔKÝ˜U¨¸-ÐHÑHÔHÔNòOð Oð Oð Oð Oð Oøõ ð Wð Wð WØ-°´¸´Ð:Ð:½r¼w¹y¼yÔ?OÐRSÒ?SÐ?SÐ?SÐUVÑ?SÔ?SÐSÐ?SÐ?SÐ?SÐ?SÐ?SÐ?SøøøøðWøøøs=   Ã6DÄDÄDÄ6EÅEÅEÇB4I8 É8
KÊ5J=Ê=Kc                 óª  — t           j                             d¦  «        }|                     dd¦  «        }t          j        |d¬¦  «        } | |¦  «        }t          |¦  «        }t          ||¦  «         |                     dd¦  «        }d||dk     <   |                     ddd¦  «        }||          ||<    | |¦  «        }t          j        |d¬¦  «        }t          |¦  «        }t          ||¦  «         dd	gd
d
gddgddgg} | |¦  «        }t          t          |¦  «        t          j        ddg¦  «        ¦  «         dd	gd
dgddgg} | |¦  «        }t          t          |¦  «        t          j        ddg¦  «        ¦  «         t          j
        t          ¦  «        5  t           ||¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   râ   r„   r+   é3   g        gffffffæ?rO   r  r�   r'   r&   r
  g      à¿éûÿÿÿrÍ   )r1   rR   r   rW   Úmedianr   r   rˆ   r‘   r.   r/   r0   )r   r   rZ   r;   Údense_medianÚcscÚsparse_medianÚinds           rG   Útest_csc_row_medianr  l  s$  € õ Œ)×
Ò
 Ñ
"Ô
"€CØ�Š��bÑÔ€AÝ”9˜Q QÐ'Ñ'Ô'€LØ
ˆ-˜Ñ
Ô
€CÝ% cÑ*Ô*€MÝ�} lÑ3Ô3Ð3ð 	�Š��SÑÔ€AØ€A€aˆ#‚g�JØ
�+Š+�a˜˜RÑ
 Ô
 €CØ�ŒfˆW€A€c�FØ
ˆ-˜Ñ
Ô
€CÝ”9˜Q QÐ'Ñ'Ô'€LÝ% cÑ*Ô*€MÝ�} lÑ3Ô3Ð3ð ˆRˆ�2�r�(˜Q ˜F Q¨ FÐ+€AØ
ˆ-˜Ñ
Ô
€CÝÕ(¨Ñ-Ô-­r¬x¸¸d¸Ñ/DÔ/DÑEÔEÐEØ
ˆRˆ�2�r�(˜Q ˜GÐ$€AØ
ˆ-˜Ñ
Ô
€CÝÕ(¨Ñ-Ô-­r¬x¸¸b¸	Ñ/BÔ/BÑCÔCÐCõ 
Œ•yÑ	!Ô	!ð ,ð ,Ý˜-˜-¨Ñ*Ô*Ñ+Ô+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,ð ,ð ,s   Æ"GÇGÇGÚinplace_csr_row_normalizec                 ó0  — t          t          j        | ¦  «        rt          j        d¦  «        }nt          j        d¦  «        }t          d¦  «        }t          j        t          j        fD �])}|                     dd¦  «         	                    |¦  «        } | |¦  «        }t          j
        t          j        fD ]Ù}|t          j        u r>|j         	                    |¦  «        |_        |j         	                    |¦  «        |_        |j        j        |k    sJ ‚|j        j        |k    sJ ‚ ||¦  «         |j        |k    sJ ‚|t          u r|xj        dz  c_        t#          t          j        |¦  «                             d¬¦  «        |¦  «         ŒÚ�Œ+d S )N)rO   r'   rO   r    r&   r'   r+   )Ú
issubclassr­   Ú
csr_matrixr1   rÙ   r   r3   r2   Úrandnr6   r4   r5   rÿ   rþ   r7   r   Údatar   Úabsr  )r   r  rÙ   Úrsr7   r;   r>   Úindex_dtypes           rG   Útest_inplace_normalizer&  �  sŠ  € õ •"”- Ñ/Ô/ð ÝŒw�wÑÔˆˆåŒw�r‰{Œ{ˆÝ	�R‰Œ€Bå”*�bœjÐ)ð Gñ GˆØ�HŠH�R˜‰OŒO×"Ò" 5Ñ)Ô)ˆØ�˜aÑ Ô ˆÝœH¥b¤hÐ/ð 	Gð 	GˆKð �bœhÐ&Ð&Ø$œ|×2Ò2°;Ñ?Ô?�”Ø %¤× 4Ò 4°[Ñ AÔ A�”Ø”=Ô&¨+Ò5Ð5Ð5Ð5Ø”<Ô%¨Ò4Ð4Ð4Ð4Ø%Ð% eÑ,Ô,Ð,Ø”; %Ò'Ð'Ð'Ð'Ø(Õ,HÐHÐHØ�
”
˜qÑ �
”
Ý%¥b¤f¨U¡m¤m×&7Ò&7¸QÐ&7Ñ&?Ô&?ÀÑFÔFÐFÐFñ	GðGð Gr^   c                 óø   — t          dd| d¬¦  «        }t          j                             |d¬¦  «        dz  }t	          |¦  «        }|j        | k    sJ ‚| t          j        k    rdnd	}t          |||¬
¦  «         d S )N)râ   rO   r§   rœ   )rª   r7   rZ   r'   r+   r&   g�íµ ÷Æ°>çH¯¼šò×z>)Úrtol)	r   r­   r   Únormr   r7   r1   r2   r   )r7   r;   Úscipy_normsÚnormsr)  s        rG   Útest_csr_row_normsr-  ®  s†   € õ 	˜Y¨u¸EÀrÐJÑJÔJ€Aå”)—.’. ¨�.Ñ+Ô+¨qÑ0€KÝ˜!ÑÔ€EàŒ;˜%ÒÐÐÐØ�BœJÒ&Ð&ˆ4ˆ4¨D€DÝ�E˜;¨TÐ2Ñ2Ô2Ð2Ð2Ð2r^   Úmodule)ÚscopeÚparamsc                 óT  — | j         }t          j                             d¦  «        } |t	          ddd|¬¦  «        ¦  «        }|                     ¦   «         }t          j        |                     d¬¦  «        ¦  «                             ¦   «         }t          ||¦  «        }||z
  }||fS )z?Returns equivalent tuple[sp.linalg.LinearOperator, np.ndarray].rœ   )iô  râ   r  r§   r¨   r   r+   )
Úparamr1   rR   Údefault_rngr   rŸ   Úasarrayr8   Úravelr   )ÚrequestÚsparse_containerrZ   rD   ÚX_denseÚmuÚX_sparse_centeredÚX_dense_centereds           rG   Úcentered_matricesr<  ¼  s©   € ð ”}Ðå
Œ)×
Ò
 Ñ
#Ô
#€CàÐÝ˜Z°¸UÈÐLÑLÔLñô €Hð ×ÒÑ Ô €GÝ	Œ�H—M’M q�MÑ)Ô)Ñ	*Ô	*×	0Ò	0Ñ	2Ô	2€Bå/°¸"Ñ=Ô=ÐØ ‘|ÐàÐ.Ð.Ð.r^   c                 ó
  — |\  }}t           j                             | ¦  «        }|                     |j        d         df¦  «        }t          ||z  |                     |¦  «        ¦  «         t          ||z  ||z  ¦  «         d S )Nr'   r„   )r1   rR   r3  Ústandard_normalrN   r   Úmatmat©Úglobal_random_seedr<  r:  r;  rZ   ÚYs         rG   Útest_implicit_center_matmatrC  Ï  sŒ   € Ø*;Ñ'ÐÐ'Ý
Œ)×
Ò
Ð 2Ñ
3Ô
3€CØ×ÒÐ-Ô3°AÔ6¸Ð;Ñ<Ô<€AÝÐ$ qÑ(Ð*;×*BÒ*BÀ1Ñ*EÔ*EÑFÔFÐFÝÐ$ qÑ(Ð*;¸aÑ*?Ñ@Ô@Ð@Ð@Ð@r^   c                 ó  — |\  }}t           j                             | ¦  «        }|                     |j        d         ¦  «        }t          ||z  |                     |¦  «        ¦  «         t          ||z  ||z  ¦  «         d S )Nr'   )r1   rR   r3  r>  rN   r   Úmatvec©rA  r<  r:  r;  rZ   Úys         rG   Útest_implicit_center_matvecrH  ×  s‡   € Ø*;Ñ'ÐÐ'Ý
Œ)×
Ò
Ð 2Ñ
3Ô
3€CØ×ÒÐ,Ô2°1Ô5Ñ6Ô6€AÝÐ$ qÑ(Ð*;×*BÒ*BÀ1Ñ*EÔ*EÑFÔFÐFÝÐ$ qÑ(Ð*;¸aÑ*?Ñ@Ô@Ð@Ð@Ð@r^   c                 ó(  — |\  }}t           j                             | ¦  «        }|                     |j        d         df¦  «        }t          |j        |z  |                     |¦  «        ¦  «         t          |j        |z  |j        |z  ¦  «         d S )Nr   r„   )r1   rR   r3  r>  rN   r   r“   Úrmatmatr@  s         rG   Útest_implicit_center_rmatmatrK  ß  s•   € Ø*;Ñ'ÐÐ'Ý
Œ)×
Ò
Ð 2Ñ
3Ô
3€CØ×ÒÐ-Ô3°AÔ6¸Ð;Ñ<Ô<€AÝÐ$Ô&¨Ñ*Ð,=×,EÒ,EÀaÑ,HÔ,HÑIÔIÐIÝÐ$Ô&¨Ñ*Ð,=Ô,?À!Ñ,CÑDÔDÐDÐDÐDr^   c                 ó$  — |\  }}t           j                             | ¦  «        }|                     |j        d         ¦  «        }t          |j        |z  |                     |¦  «        ¦  «         t          |j        |z  |j        |z  ¦  «         d S )Nr   )r1   rR   r3  r>  rN   r   r“   ÚrmatvecrF  s         rG   Útest_implit_center_rmatvecrN  ç  s�   € Ø*;Ñ'ÐÐ'Ý
Œ)×
Ò
Ð 2Ñ
3Ô
3€CØ×ÒÐ,Ô2°1Ô5Ñ6Ô6€AÝÐ$Ô&¨Ñ*Ð,=×,EÒ,EÀaÑ,HÔ,HÑIÔIÐIÝÐ$Ô&¨Ñ*Ð,=Ô,?À!Ñ,CÑDÔDÐDÐDÐDr^   ©ÚAÚBrÜ   ÚmsgzShapes must fulfilzShape of outÚcoozInput 'A' mustzInput 'B' must)rª   r7   zDtype of A and Bc                 ó’   — t          j        t          |¬¦  «        5  t          | ||¬¦  «         ddd¦  «         dS # 1 swxY w Y   dS )z7Test that sparse_matmul_to_dense raises when it should.)Úmatch©rÜ   N)r.   r/   r    r   rO  s       rG   Ú"test_sparse_matmul_to_dense_raisesrW  ï  s’   € õ. 
Œ•z¨Ð	-Ñ	-Ô	-ð .ð .Ý˜q !¨Ð-Ñ-Ô-Ð-ð.ð .ð .ñ .ô .ð .ð .ð .ð .ð .ð .ð .øøøð .ð .ð .ð .ð .ð .s   œ<¼A ÁA Úout_is_NoneÚa_containerÚb_containerc                 ót  — t           j                             | ¦  «        }d\  }}}|                     ||f¦  «                             |¦  «        }	|                     ||f¦  «                             |¦  «        }
d|	j        |                     ddg||z  ddg¬¦  «        <   d|
j        |                     ddg||z  ddg¬¦  «        <    ||	¦  «        } ||
¦  «        }|rd}nt          j        ||f|¬¦  «        }t          |||¬	¦  «        }t          ||	|
z  d
¬¦  «         |st          ||d
¬¦  «         dS dS )z4Test that sparse_matmul_to_dense computes correctly.)rO   é   r«   r   FTr
  )r€   ÚpNrf   rV  r(  )Úatol)
r1   rR   r3  r>  r6   ÚflatrT   Úemptyr   r   )rA  rX  rY  rZ  r7   rZ   Ún1Ún2Ún3Úa_denseÚb_denseÚaÚbrÜ   Úresults                  rG   Útest_sparse_matmul_to_denseri  
  sc  € õ Œ)×
Ò
Ð 2Ñ
3Ô
3€CØ�J€BˆˆBØ×!Ò! 2 r (Ñ+Ô+×2Ò2°5Ñ9Ô9€GØ×!Ò! 2 r (Ñ+Ô+×2Ò2°5Ñ9Ô9€GØJK€G„L�—’˜U D˜M°°R±¸CÀ¸:�ÑFÔFÑGØJK€G„L�—’˜U D˜M°°R±¸CÀ¸:�ÑFÔFÑGØˆ�GÑÔ€AØˆ�GÑÔ€AØð .ØˆˆåŒh˜˜B�x uÐ-Ñ-Ô-ˆå# A q¨cÐ2Ñ2Ô2€Få�F˜G gÑ-°DÐ9Ñ9Ô9Ð9Øð 0Ý˜˜V¨$Ð/Ñ/Ô/Ð/Ð/Ð/ð0ð 0r^   )TÚnumpyr1   r.   Úscipy.sparseÚsparser­   Únumpy.randomr   Únumpy.testingr   r   Úscipyr   Úsklearn.datasetsr   Úsklearn.utils._testingr   Úsklearn.utils.fixesr	   r
   r   r   Úsklearn.utils.sparsefuncsr   r   r   r   r   r   r   r   r   r   r   Úsklearn.utils.sparsefuncs_fastr   r   r   r   ÚmarkÚparametrizerH   r2   r3   r]   r`   rV   r‘   r~   r�   r™   r¤   ÚhstackrS   r¶   r¸   r»   rË   rÎ   rß   rî   rñ   r÷   rù   ÚminÚmaxÚnanminÚnanmaxr  r  r  r  r&  r-  Úfixturer<  rC  rH  rK  rN  Úeyer4   rW  ri  © r^   rG   ú<module>r     sà  ðØ Ð Ð Ð Ø €€€Ø Ð Ð Ð Ð Ð Ø $Ð $Ð $Ð $Ð $Ð $Ø GÐ GÐ GÐ GÐ GÐ GÐ GÐ GØ Ð Ð Ð Ð Ð à 0Ð 0Ð 0Ð 0Ð 0Ð 0Ø 2Ð 2Ð 2Ð 2Ð 2Ð 2ðð ð ð ð ð ð ð ð ð ð ð ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ðð ð ð ð ð ð ð ð ð ð ð ð „×Ò˜¨.Ñ9Ô9Ø„×Ò˜¨.Ñ9Ô9Ø„×Ò˜¨.Ñ9Ô9ðFð Fñ :Ô9ñ :Ô9ñ :Ô9ðFðD „×Ò˜ 2¤:¨r¬zÐ":Ñ;Ô;Ø„×ÒÐ-¨~ÀÑ/NÑOÔOð%ð %ñ PÔOñ <Ô;ð%ð$ „×Ò˜¨.Ñ9Ô9Ø„×Ò˜¨.Ñ9Ô9Ø„×Ò˜¨.Ñ9Ô9ðFð Fñ :Ô9ñ :Ô9ñ :Ô9ðFðD „×ÒØÐÐà
ˆ)ˆ)�Y�Y�YÐ	 ) ) )¨Y¨Y¨YÐ!7¸¸¸ÐCØ
ˆ)ˆ)�Y�Y�YÐ	 , , ,°°°Ð!=¸y¸y¸yÐIØ
ˆ)ˆ)�Y�Y�YÐ	 ) ) )¨Y¨Y¨YÐ!7¸Ð>à�”˜ˆ^˜a ¤¨¬Ð0Ð1Ø�”˜ˆ^˜a ¤¨¬Ð0Ð1ØˆOˆOð	
ð �ˆV�a˜œ�[ 1 a &¨1¨a¨&°2´6¸2¼6Ð2BÀRÄVÈQÀKÐPà�	�	Ø�A�r”v�Ø�	�	Ø�	�	Ø”˜œ ¤Ð(Ø”˜œ Ð#ðð �#ˆJð	
ð ˆYˆY˜	˜	˜	Ð"Øˆ_ˆ_˜o˜o˜oÐ.ØˆBŒH�Y�Y�YÑÔð	
ð+ñô ð< „×ÒÐ-¨~ÀÑ/NÑOÔOØ„×Ò˜ 2¤:¨r¬zÐ":Ñ;Ô;ðA$ð A$ñ <Ô;ñ PÔOñ=ô ð@A$ðH „×ÒØÐÐà
ˆ)ˆ)�Y�Y�YÐ	 ) ) )¨Y¨Y¨YÐ!7¸!¸Q¸Ð@Ø
ˆ)ˆ)�Y�Y�YÐ	 ) ) )¨Y¨Y¨Y¸	¸	¸	Ð!BÀQÈÀFÐKØ
ˆ)ˆ)�Y�Y�YÐ	 ) ) )¨Y¨Y¨YÐ!7¸Ð>à�”˜ˆ^˜a ¤¨¬Ð0Ð1Ø�”˜ˆ^˜a ¤¨¬Ð0Ð1Ø�#ˆJð	
ð ��A�r”v˜q !Ð$ q¨!¨R¬V°R´V¸R¼VÀQÐ&GÐHà�A�q˜"œ& ! QÐ'Ø�A�q˜"œ& ! QÐ'Ø�A�r”v˜rœv r¤v¨qÐ1ðð
 �#ˆJð	
ð ˆYˆY˜	˜	˜	Ð"ØˆYˆY˜	˜	˜	 9 9 9¨i¨i¨iÐ8ØˆBŒH�a˜�VÑÔð	
ð%ñô ð6 „×ÒÐ-¨~ÀÑ/NÑOÔOØ„×Ò˜ 2¤:¨r¬zÐ":Ñ;Ô;ðA$ð A$ñ <Ô;ñ PÔOñ7ô ð:A$ðH „×Ò˜¨.Ñ9Ô9Ø„×Ò˜¨.Ñ9Ô9Ø„×Ò˜¨.Ñ9Ô9ðN:ð N:ñ :Ô9ñ :Ô9ñ :Ô9ðN:ðb „×ÒÐ-¨~ÀÑ/NÑOÔOð5ð 5ñ PÔOð5ð8 „×ÒØð !Ð  °¸UÈÐJÑJÔJØ Ð  °#¸eÈÐKÑKÔKð	
ð
 !Ð  °¸UÈÐJÑJÔJØˆBŒIà�B”G˜G°´Ð7Ñ7Ô7Ø(Ð(¨¸#À2ÐFÑFÔFðð ðñ ô ð		
ðñô ð& „×Ò˜¨.Ñ9Ô9ðQð Qñ :Ô9ñ'ô ð(Qð,'ð 'ð 'ð&	<ð 	<ð 	<ð „×Ò˜ ! Q Ñ(Ô(Ø„×ÒÐ-¨~ÀÑ/NÑOÔOð,8ð ,8ñ PÔOñ )Ô(ð,8ð^ „×Ò˜¨.Ñ9Ô9ð
ð 
ñ :Ô9ð
ð< „×Ò˜¨.Ñ9Ô9ð(ð (ñ :Ô9ð(ð /ð /ð /ð@/ð /ð /ð@ „×Ò˜¨.Ñ9Ô9Ø„×Ò˜¨.Ñ9Ô9ð-(ð -(ñ :Ô9ñ :Ô9ð-(ð` „×Ò˜¨.Ñ9Ô9Ø„×Ò˜¨.Ñ9Ô9ð-+ð -+ñ :Ô9ñ :Ô9ð-+ð` „×Ò˜ 2¤:¨r¬zÐ":Ñ;Ô;Ø„×Ò˜   Ñ.Ô.Ø„×Ò˜¨.¸>Ñ*IÑJÔJØ„×ÒØ4ØˆŒ�”˜Ð "¤&¨"¬)°R´YÀÐ!EÐFñô ð „×Ò˜¨4°¨-Ñ8Ô8ð<ð <ñ 9Ô8ñ	ô ñ KÔJñ /Ô.ñ <Ô;ð<ð> „×Ò˜¨.Ñ9Ô9Ø„×Ò˜¨.Ñ9Ô9ð%ð %ñ :Ô9ñ :Ô9ð%ð „×Ò˜¨.Ñ9Ô9Ø„×Ò˜¨.Ñ9Ô9ð)Wð )Wñ :Ô9ñ :Ô9ð)WðX „×Ò˜¨.Ñ9Ô9Ø„×Ò˜¨.Ñ9Ô9ð,ð ,ñ :Ô9ñ :Ô9ð,ðD „×ÒØØ!Ð#?Ð@ñô ð „×Ò˜¨.Ñ9Ô9ðGð Gñ :Ô9ñ	ô ð
Gð2 „×Ò˜ 2¤:¨r¬zÐ":Ñ;Ô;ð
3ð 
3ñ <Ô;ð
3ð €„�h ~¸Ñ'FÐGÑGÔGð/ð /ñ HÔGð/ð$Að Að AðAð Að AðEð Eð EðEð Eð Eð „×ÒØÐÐà	ˆŒ�˜%Ð	 Ñ	 Ô	  & "¤&¨°5Ð"9Ñ"9Ô"9¸4ÐAUÐVØ	ˆŒ�˜%Ð	 Ñ	 Ô	  & "¤&¨°5Ð"9Ñ"9Ô"9¸6¸2¼6À!¹9¼9ÀnÐUØ	ˆŒ�˜%Ð	 Ñ	 Ô	  & "¤&¨°5Ð"9Ñ"9Ô"9¸4ÐAQÐRØ	ˆŒ�˜%Ð	 Ñ	 Ô	  & "¤&¨°5Ð"9Ñ"9Ô"9¸4ÐAQÐRàˆBŒF�1˜U¨"¬(Ð3Ñ3Ô3ØˆBŒF�1˜UÐ#Ñ#Ô#ØØð		
ð ˆBŒF�1˜U¨"¬*Ð5Ñ5Ô5ØˆBŒF�1˜U¨"¬*Ð5Ñ5Ô5ØØð		
ðñô ð*.ð .ñ+ô ð*.ð „×Ò˜¨°¨Ñ6Ô6Ø„×Ò˜¨¸Ñ(GÑHÔHØ„×Ò˜¨¸Ñ(GÑHÔHØ„×Ò˜ 2¤:¨r¬zÐ":Ñ;Ô;ð0ð 0ñ <Ô;ñ IÔHñ IÔHñ 7Ô6ð0ð 0ð 0r^   