§
    rŠtj8L  ã                   óê  — d Z ddlZddlZddlZddlZddlZddlZ	 ddlZ	n# e
$ r dZ	Y nw xY wddlmZ ddlmZ d ej        d¦  «        z  dk    Z ej        ¦   «         dv Z eej        ¦  «        Z eej        ¦  «        Z eej        ¦  «        Z eej        ¦  «        Zej        j        ej        j        gZej        j        ej        j        gZ ej        j!        ej        j"        gZ#ej        j$        ej        j%        gZ&ej        j'        ej        j(        gZ)ej        j*        ej        j+        gZ,ej        j-        ej        j.        gZ/	 dd	l0m1Z1 d
Z2n# e
$ r dZ2Y nw xY wd„ Z3d1d„Z4e ed¦  «        k     Z5e ed¦  «        k     Z6e ed¦  «        k    rej        j7        j8        Z9nd„ Z9e ed¦  «        k    rd„ Z:d„ Z;nd„ Z<d„ Z=d„ Z>d„ Z:d„ Z;e ed¦  «        k    r	ddl?m@Z@mAZA nddlm@Z@mAZA d„ ZBd„ ZCd2d„ZDe ed¦  «        k     rdd lEmFZF ndd lGmFZF d!„ ZHd"„ ZId#„ ZJe5s$ej        jK        ZLej        jM        ZNd$d%ddddd&œd'„ZOnd3dePdd(œd)„ZLddddd*œd+„ZNd$d%ddddd&œd,„ZOd-„ ZQejR        d.fd/„ZSg d0¢ZTdS )4z©Compatibility fixes for older version of the dependencies

If you add content to this file, please give the version of the package
at which the fix is no longer needed.
é    N)Úparse)Ú_get_threadpool_controlleré   ÚPé    )Úwasm32Úwasm64)ÚsparrayTFc                 ó   — | | k    S ©N© )ÚXs    úQ/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/sklearn/utils/fixes.pyÚ_object_dtype_isnanr   5   s   € Ø�Š6€Mó    c                 ó¦   — t           j                             | |d¬¦  «        }t          t	          d¦  «        k    r|€t          j        |¦  «        }|S )NT)ÚaxisÚkeepdimsz1.10.999)ÚscipyÚstatsÚmodeÚ
sp_versionÚparse_versionÚnpÚravel)Úar   r   s      r   Ú_moder   :   sJ   € ÝŒ;×Ò˜A D°4ÐÑ8Ô8€DÝ•] :Ñ.Ô.Ò.Ð.ð ˆ<Ý”8˜D‘>”>ˆDØ€Kr   z1.12.0z1.15.0c                 ó†   — d|v r|                      d¦  «        |d<   d|vrd|d<   t          j        j        j        | |fi |¤ŽS )NÚrtolÚtolÚatolÚlegacy)Úpopr   ÚsparseÚlinalgÚcg)ÚAÚbÚkwargss      r   Ú_sparse_linalg_cgr*   S   sV   € Ø�VÐÐØ"ŸJšJ vÑ.Ô.ˆF�5‰MØ˜ÐÐØ%ˆF�6‰NÝŒ|Ô"Ô% a¨Ð5Ð5¨fÐ5Ð5Ð5r   z1.11.0c                 óþ   — |                       |¬¦  «        }|                      |¬¦  «        }|�L|                     ¦   «                              ¦   «         }|                     ¦   «                              ¦   «         }||fS ©N)r   )ÚminÚmaxÚtoarrayr   ©r   r   Úthe_minÚthe_maxs       r   Ú_sparse_min_maxr3   `   so   € Ø—%’%˜T�%Ñ"Ô"ˆØ—%’%˜T�%Ñ"Ô"ˆàÐØ—o’oÑ'Ô'×-Ò-Ñ/Ô/ˆGØ—o’oÑ'Ô'×-Ò-Ñ/Ô/ˆGà˜ÐÐr   c                 óþ   — |                       |¬¦  «        }|                      |¬¦  «        }|�L|                     ¦   «                              ¦   «         }|                     ¦   «                              ¦   «         }||fS r,   )ÚnanminÚnanmaxr/   r   r0   s       r   Ú_sparse_nan_min_maxr7   j   so   € Ø—(’( �(Ñ%Ô%ˆØ—(’( �(Ñ%Ô%ˆàÐØ—o’oÑ'Ô'×-Ò-Ñ/Ô/ˆGØ—o’oÑ'Ô'×-Ò-Ñ/Ô/ˆGà˜ÐÐr   c                 ó  — t          j        t          j        | j        ¦  «        ¦  «        } t	          | ¦  «        | j        | j        | j        f| j        ¬¦  «        } |                     | j        | j        |         ¦  «        }||fS )N)Úshape)	r   ÚflatnonzeroÚdiffÚindptrÚtypeÚdataÚindicesr9   Úreduceat)r   ÚufuncÚmajor_indexÚvalues       r   Ú_minor_reducerD   w   so   € Ý”n¥R¤W¨Q¬XÑ%6Ô%6Ñ7Ô7ˆð
 �D�‰GŒG�Q”V˜QœY¨¬Ð1¸¼ÐAÑAÔAˆØ—’˜qœv q¤x°Ô'<Ñ=Ô=ˆØ˜EÐ!Ð!r   c           	      ój  — | j         |         }|dk    rt          d¦  «        ‚| j         d|z
           }|dk    r|                      ¦   «         n|                      ¦   «         }|                     ¦   «          t          ||¦  «        \  }}t          j        |j        ¦  «        |         |k     } |||         d¦  «        ||<   |dk    }	t          j	        |	|¦  «        }t          j	        |	|¦  «        }|dk    rMt          j                             |t          j        t          |¦  «        ¦  «        |ff| j        d|f¬¦  «        }
nLt          j                             ||t          j        t          |¦  «        ¦  «        ff| j        |df¬¦  «        }
|
                     ¦   «                              ¦   «         S )Nr   ú&zero-size array to reduction operationé   )Údtyper9   )r9   Ú
ValueErrorÚtocscÚtocsrÚsum_duplicatesrD   r   r;   r<   Úcompressr   r$   Ú	coo_arrayÚzerosÚlenrH   r/   r   )r   r   Ú
min_or_maxÚNÚMÚmatrB   rC   Únot_fullÚmaskÚress              r   Ú_min_or_max_axisrX   �   sŽ  € ØŒG�DŒMˆØ�Š6ˆ6ÝÐEÑFÔFÐFØŒG�A˜‘HÔˆØ 1š9˜9ˆa�gŠg‰iŒiˆi¨!¯'ª'©)¬)ˆØ×ÒÑÔÐÝ*¨3°
Ñ;Ô;Ñˆ�UÝ”7˜3œ:Ñ&Ô& {Ô3°aÒ7ˆØ$˜* U¨8¤_°aÑ8Ô8ˆˆh‰Ø˜ŠzˆÝ”k $¨Ñ4Ô4ˆÝ”˜D %Ñ(Ô(ˆà�1Š9ˆ9Ý”,×(Ò(Ø�œ¥# e¡*¤*Ñ-Ô-¨{Ð;Ð<Ø”gØ˜!�fð )ñ ô ˆCˆCõ ”,×(Ò(Ø˜¥b¤h­s°5©z¬zÑ&:Ô&:Ð;Ð<Ø”gØ˜!�fð )ñ ô ˆCð
 �{Š{‰}Œ}×"Ò"Ñ$Ô$Ð$r   c                 óª  — |€›d| j         v rt          d¦  «        ‚| j                             d¦  «        }| j        dk    r|S |                     | j                             ¦   «         ¦  «        }| j        t          j	        | j         ¦  «        k    r |||¦  «        }|S |dk     r|dz  }|dk    s|dk    rt          | ||¦  «        S t          d¦  «        ‚)Nr   rF   é   rG   z.invalid axis, use 0 for rows, or 1 for columns)r9   rI   rH   r=   ÚnnzÚreducer>   r   r   ÚprodrX   )r   r   rQ   ÚzeroÚms        r   Ú_sparse_min_or_maxr`   �   sÒ   € Øˆ<Ø�A”Gˆ|ˆ|Ý Ð!IÑJÔJÐJØ”7—<’< ‘?”?ˆDØŒu˜ŠzˆzØ�Ø×!Ò! !¤&§,¢,¡.¤.Ñ1Ô1ˆAØŒu�œ ¤Ñ(Ô(Ò(Ð(Ø�J˜t QÑ'Ô'�ØˆHØ�!Š8ˆ8Ø�A‰IˆDØ�AŠIˆI˜4 1š9˜9Ý# A t¨ZÑ8Ô8Ð8åÐMÑNÔNÐNr   c                 ón   — t          | |t          j        ¦  «        t          | |t          j        ¦  «        fS r   )r`   r   ÚminimumÚmaximum©r   r   s     r   r3   r3   ¯   s.   € å˜q $­¬
Ñ3Ô3Ý˜q $­¬
Ñ3Ô3ð
ð 	
r   c                 ón   — t          | |t          j        ¦  «        t          | |t          j        ¦  «        fS r   )r`   r   ÚfminÚfmaxrd   s     r   r7   r7   µ   s.   € å˜q $­¬Ñ0Ô0Ý˜q $­¬Ñ0Ô0ð
ð 	
r   z1.25.0)ÚComplexWarningÚVisibleDeprecationWarningc                 óF  — t          | j        ¦  «        j        }t          |¦  «        t          d¦  «        k     r!|                     t          j        ¬¦  «        }nÆt          |¦  «        t          d¦  «        k    ri nddi}t          |¦  «        t          d¦  «        k     rU | j        dd¦  «        5   |                     t          j        ¬¦  «        j        d	i |¤Ž}d d d ¦  «         n# 1 swxY w Y   n+ |                     t          j        ¬¦  «        j        d	i |¤Ž}|S )
Nz2.2)rC   Ú3ÚcopyFz3.0zfuture.no_silent_downcastingTr   )r   Ú__version__Úbase_versionÚfillnar   ÚnanÚoption_contextÚinfer_objects)ÚpdÚframeÚ
pd_versionÚinfer_objects_kwargss       r   Ú	pd_fillnarw   È   sf  € Ý˜rœ~Ñ.Ô.Ô;€JÝ�ZÑ Ô ¥=°Ñ#7Ô#7Ò7Ð7Ø—’¥2¤6�Ñ*Ô*ˆˆõ   
Ñ+Ô+­}¸SÑ/AÔ/AÒAÐAˆBˆBÈÐPUÀð 	õ ˜Ñ$Ô$¥}°UÑ';Ô';Ò;Ð;Ø"�Ô"Ð#AÀ4ÑHÔHð Yð YØ@˜Ÿš­2¬6˜Ñ2Ô2Ô@ÐXÐXÐCWÐXÐX�ðYð Yð Yñ Yô Yð Yð Yð Yð Yð Yð Yøøøð Yð Yð Yð Yøð =�E—L’L¥r¤v�LÑ.Ô.Ô<ÐTÐTÐ?SÐTÐTˆEØ€Ls   Â2,C*Ã*C.Ã1C.c                 óö  — |dk    rð|dv rî|dk    r€t          | j        | j        ft          | j        | j        d         ¦  «        d¬¦  «        }| j                             |d¬¦  «        | _        | j                             |d¬¦  «        | _        d
S t          t          | j        ¦  «        ¬	¦  «        }| j                             |d¬¦  «        | _        | j                             |d¬¦  «        | _        d
S d
S d
S )a‘  Preserve indices dtype for SciPy < 1.12 when converting from DIA to CSR/CSC.

    For SciPy < 1.12, DIA arrays indices are upcasted to `np.int64` that is
    inconsistent with DIA matrices. We downcast the indices dtype to `np.int32` to
    be consistent with DIA matrices.

    The converted indices arrays are affected back inplace to the sparse container.

    Parameters
    ----------
    sparse_container : sparse container
        Sparse container to be checked.
    requested_sparse_format : str or bool
        The type of format of `sparse_container`.

    Notes
    -----
    See https://github.com/scipy/scipy/issues/19245 for more details.
    Ú	dia_array)ÚcsrÚcoorz   rG   T)ÚarraysÚmaxvalÚcheck_contentsF©rl   )r}   N)	Ú _smallest_admissible_index_dtyper<   r?   r.   r[   r9   ÚastypeÚrowÚcol)Úsparse_containerÚoriginal_container_formatÚrequested_sparse_formatÚindex_dtypes       r   Ú_preserve_dia_indices_dtyperˆ   Ù   sF  € ð, ! KÒ/Ð/Ð4Kð Pð 5ð 5ð # eÒ+Ð+Ý:Ø(Ô/Ð1AÔ1IÐJÝÐ+Ô/Ð1AÔ1GÈÔ1JÑKÔKØ#ðñ ô ˆKð
 (8Ô'?×'FÒ'FØ %ð (Gñ (ô (ÐÔ$ð '7Ô&=×&DÒ&DØ %ð 'Eñ 'ô 'ÐÔ#Ð#Ð#õ ;ÝÐ+Ô1Ñ2Ô2ðñ ô ˆKð $4Ô#7×#>Ò#>¸{ÐQVÐ#>Ñ#WÔ#WÐÔ Ø#3Ô#7×#>Ò#>¸{ÐQVÐ#>Ñ#WÔ#WÐÔ Ð Ð ð+ 0Ð/ð 5ð 5r   r   c                 ó¾  — t          j        t          j        t           j        ¦  «        j        ¦  «        }t          j        t          j        t           j        ¦  «        j        ¦  «        }|�L|t          j        t           j        ¦  «        j        k    rt          d|› d�¦  «        ‚||k    rt           j        S t          | t           j        ¦  «        r| f} | D ]ú}t          |t           j        ¦  «        s t          dt          |¦  «        › d�¦  «        ‚t          j        |j        t           j        ¦  «        st          d|j        › d�¦  «        ‚t          j        |j        t           j        ¦  «        s^|st           j        c S |j        dk    rŒ¸|                     ¦   «         }|                     ¦   «         }||k     s||k    rt           j        c S Œût           j        S )	a}  Based on input (integer) arrays `a`, determine a suitable index data
    type that can hold the data in the arrays.

    This function returns `np.int64` if it either required by `maxval` or based on the
    largest precision of the dtype of the arrays passed as argument, or by their
    contents (when `check_contents is True`). If none of the condition requires
    `np.int64` then this function returns `np.int32`.

    Parameters
    ----------
    arrays : ndarray or tuple of ndarrays, default=()
        Input arrays whose types/contents to check.

    maxval : float, default=None
        Maximum value needed.

    check_contents : bool, default=False
        Whether to check the values in the arrays and not just their types.
        By default, check only the types.

    Returns
    -------
    dtype : {np.int32, np.int64}
        Suitable index data type (int32 or int64).
    Nzmaxval=z+ is to large to be represented as np.int64.z)Arrays should be of type np.ndarray, got z	 instead.zArray dtype z= is not supported for index dtype. We expect integral values.r   )r   Úint32Úiinfor-   r.   Úint64rI   Ú
isinstanceÚndarrayÚ	TypeErrorr=   Ú
issubdtyperH   ÚintegerÚcan_castÚsize)r|   r}   r~   Úint32minÚint32maxÚarrÚminvals          r   r€   r€     s»  € õ6 Œx�œ¥¤Ñ*Ô*Ô.Ñ/Ô/€HÝŒx�œ¥¤Ñ*Ô*Ô.Ñ/Ô/€HàÐØ•B”H�RœXÑ&Ô&Ô*Ò*Ð*ÝØM˜&ÐMÐMÐMñô ð ð �HÒÐÝ”8ˆOå�&�"œ*Ñ%Ô%ð Ø�ˆàð $ð $ˆÝ˜#�rœzÑ*Ô*ð 	ÝØP½DÀ¹I¼IÐPÐPÐPñô ð õ Œ}˜SœY­¬
Ñ3Ô3ð 	Ýð#˜sœyð #ð #ð #ñô ð õ Œ{˜3œ9¥b¤hÑ/Ô/ð 	$Ø!ð  õ ”x���ØŒx˜1Š}ˆ}ààŸš™œ�ØŸš™œ�Ø˜HÒ$Ð$¨°Ò(9Ð(9åœ8�O�O�OøåŒ8€Or   z1.12)Ú	laplacianc                 ó‚   — 	 |                       |d¬¦  «         d S # t          $ r |                       |¦  «         Y d S w xY w)Nr>   )Úfilter)Ú
extractallr�   )ÚtarfileÚpaths     r   Útarfile_extractallrž   W  s`   € ð!ð 	×Ò˜4¨ÐÑ/Ô/Ð/Ð/Ð/øÝð !ð !ð !Ø×Ò˜4Ñ Ô Ð Ð Ð Ð ð!øøøs   ‚ ›>½>c                  ól  — ddl } ddl}t          ¦   «                              ¦   «         }t	          d„ |D ¦   «         ¦  «        }|sdS t          d¦  «        }|D ]\}|d         dk    rŒ|                     d¦  «        }|                     d	¦  «        }|�|€ d
S |dk    rt          |¦  «        |k     r d
S Œ]dS )z8Return True if in an unstable configuration for OpenBLASr   Nc              3   ó.   K  — | ]}|d          dk    V — ŒdS )Úinternal_apiÚopenblasNr   )Ú.0Úinfos     r   ú	<genexpr>z6_in_unstable_openblas_configuration.<locals>.<genexpr>j  s,   è è € ÐUÐUÀ˜˜nÔ-°Ò;ÐUÐUÐUÐUÐUÐUr   Fz0.3.16r¡   r¢   ÚversionÚarchitectureTÚ
neoversen1)Únumpyr   r   r¤   Úanyr   Úget)r©   r   Úmodules_infoÚopen_blas_usedÚopenblas_arm64_stable_versionr¤   Úopenblas_versionÚopenblas_architectures           r   Ú#_in_unstable_openblas_configurationr±   a  sî   € ð €L€L€LØ€L€L€Lå-Ñ/Ô/×4Ò4Ñ6Ô6€LåÐUÐUÈÐUÑUÔUÑUÔU€NØð Øˆuõ %2°(Ñ$;Ô$;Ð!Øð ð ˆØ�Ô :Ò-Ð-ØØŸ8š8 IÑ.Ô.ÐØ $§¢¨Ñ 8Ô 8ÐØÐ#Ð'<Ð'Dà�4�4à! \Ò1Ð1ÝÐ.Ñ/Ô/Ð2OÒOÐOð �4�4øØˆ5r   c                 ó>   — t           t          d¦  «        k    ri n| |iS )Nz1.15)r   r   )ÚkeyrC   s     r   Ú"_get_additional_lbfgs_options_dictr´   ˆ  s"   € Ý�}¨VÑ4Ô4Ò4Ð4ˆ2ˆ2¸3À¸,ÐFr   g{®Gáz„?r{   )ÚdensityÚformatrH   Úrandom_stateÚrngÚdata_samplerc                ór   — t           j                             | ||||p||¬¦  «        }t          |¦  «         |S )N)rµ   r¶   rH   r·   r¹   )r   r$   Úrandom_arrayÚ_ensure_sparse_index_int32)r9   rµ   r¶   rH   r·   r¸   r¹   r   s           r   Ú_sparse_random_arrayr½   ’  sL   € õ ŒL×%Ò%ØØØØØÐ, Ø%ð &ñ 
ô 
ˆõ 	# 1Ñ%Ô%Ð%Øˆr   )ÚkrH   r¶   c                ó¬   — t           j                             | |||¬¦  «        }t           j                             |¦  «                             |¦  «        S )N)r¾   rH   )r   r$   Úeyery   Úasformat)r_   Únr¾   rH   r¶   r'   s         r   Ú_sparse_eye_arrayrÃ   ©  sD   € ÝŒL×Ò˜Q  Q¨eÐÑ4Ô4ˆÝŒ|×%Ò% aÑ(Ô(×1Ò1°&Ñ9Ô9Ð9r   )Úoffsetsr9   r¶   rH   c               ó¬   — t           j                             | |||¬¦  «        }t           j                             |¦  «                             |¦  «        S )N)rÄ   r9   rH   )r   r$   Údiagsry   rÁ   )Ú	diagonalsrÄ   r9   r¶   rH   r'   s         r   Ú_sparse_diags_arrayrÈ   ­  sF   € õ ŒL×Ò˜y°'ÀÈeÐÑTÔTˆÝŒ|×%Ò% aÑ(Ô(×1Ò1°&Ñ9Ô9Ð9r   c                óœ   — t          j        j        | |||p||dœŽ}t           j                             |¦  «                             |¦  «        S )N)rµ   rH   r·   Údata_rvs)r   r$   ÚrandomrN   rÁ   )r9   rµ   r¶   rH   r·   r¸   r¹   r'   s           r   r½   r½   ³  sW   € õ ŒLÔØØØØÐ, Ø!ð
ð 
ð 
ˆõ Œ|×%Ò% aÑ(Ô(×1Ò1°&Ñ9Ô9Ð9r   c                 ó€  — | j         dv rt          | ¦  «        \  | _        | _        dS | j         dk    rjt	          | d¦  «        rt          | ¦  «        | _        dS t	          | d¦  «        rt          | ¦  «        | _        dS t          | ¦  «        \  | _        | _        dS | j         dk    rt          | ¦  «        | _        dS dS )z*Safely ensure that index arrays are int32.)Úcscrz   Úbsrr{   Úcoordsr?   ÚdiaN)	r¶   Ú_safely_cast_index_arraysr?   r<   ÚhasattrrÏ   r‚   rƒ   rÄ   )r'   s    r   r¼   r¼   É  sÂ   € à„xÐ(Ð(Ð(Ý7¸Ñ:Ô:ÑˆŒ	�1”8�8�8Ø	
Œ�UÒ	Ð	Ý�1�hÑÔð 	8Ý0°Ñ3Ô3ˆAŒHˆHˆHÝ�Q˜	Ñ"Ô"ð 	8Ý1°!Ñ4Ô4ˆAŒIˆIˆIå4°QÑ7Ô7‰LˆAŒE�1”5�5�5Ø	
Œ�UÒ	Ð	Ý-¨aÑ0Ô0ˆŒ	ˆ	ˆ	ð 
Ð	r   Ú c                 ó  ‡‡	— t          j        ‰¦  «        j        Š	| j        dv r | j        d         ‰	k    rt          d|› �¦  «        ‚t          | j        Ž ‰	k    r/| j        ‰	k                         ¦   «         rt          d|› �¦  «        ‚| j         	                    ‰d¬¦  «        }| j         	                    ‰d¬¦  «        }||fS | j        dk    rŽt          | dd	¦  «        }|€!t          | d
d	¦  «        }|€| j        | j        f}t          | j        Ž ‰	k    r-t          ˆ	fd„|D ¦   «         ¦  «        rt          d|› �¦  «        ‚t          ˆfd„|D ¦   «         ¦  «        S | j        dk    r_t          | j        Ž ‰	k    r/| j        ‰	k                         ¦   «         rt          d|› �¦  «        ‚| j         	                    ‰d¬¦  «        }|S | j        dk    r­| j        \  }}| j        d         |z  ‰	k    rt          d¦  «        ‚t          | j        Ž ‰	k    r2| j        |z  ‰	k                         ¦   «         rt          d|› �¦  «        ‚| j         	                    ‰d¬¦  «        }| j         	                    ‰d¬¦  «        }||fS d	S )aÏ  Safely cast sparse array indices to `idx_dtype`.

    Check the shape of `A` to determine if it is safe to cast its index
    arrays to dtype `idx_dtype`. If any dimension in shape is larger than
    fits in the dtype, casting is unsafe so raise ``ValueError``.
    If safe, cast the index arrays to `idx_dtype` and return the result
    without changing the input `A`. The caller can assign results to `A`
    attributes if desired or use the recast index arrays directly.

    Unless downcasting is needed, the original index arrays are returned.
    You can test e.g. ``A.indptr is new_indptr`` to see if downcasting occurred.

    See SciPy: scipy.sparse._sputils.py for more info on safely_cast_index_arrays()
    )rÍ   rz   éÿÿÿÿzindptr values too large for zindices values too large for Fr   r{   rÏ   Nr?   c              3   óH   •K  — | ]}|‰k                          ¦   «         V — Œd S r   )rª   )r£   ÚcoÚ	max_values     €r   r¥   z,_safely_cast_index_arrays.<locals>.<genexpr>þ  s3   øè è € Ð;Ð;¨b�B˜’N×'Ò'Ñ)Ô)Ð;Ð;Ð;Ð;Ð;Ð;r   zcoords values too large for c              3   óF   •K  — | ]}|                      ‰d ¬¦  «        V — ŒdS )Fr   N)r�   )r£   r×   Ú	idx_dtypes     €r   r¥   z,_safely_cast_index_arrays.<locals>.<genexpr>   s3   øè è € ÐGÐG¸"�R—Y’Y˜y¨u�YÑ5Ô5ÐGÐGÐGÐGÐGÐGr   rÐ   zoffsets values too large for rÎ   z!indptr values too large for {msg})r   r‹   r.   r¶   r<   rI   r9   r?   rª   r�   Úgetattrr‚   rƒ   ÚtuplerÄ   Ú	blocksize)
r'   rÚ   Úmsgr?   r<   rÏ   rÄ   ÚRÚCrØ   s
    `       @r   rÑ   rÑ   Ú  s»  øø€ õ ”˜Ñ#Ô#Ô'€Ià„x�>Ð!Ð!ØŒ8�BŒ<˜)Ò#Ð#ÝÐA¸CÐAÐAÑBÔBÐBå�”ˆ=˜9Ò$Ð$Ø”	˜IÒ%×*Ò*Ñ,Ô,ð HÝ Ð!FÀÐ!FÐ!FÑGÔGÐGà”)×"Ò" 9°5Ð"Ñ9Ô9ˆØ”—’ °�Ñ7Ô7ˆØ˜ˆÐà	
Œ�UÒ	Ð	Ý˜˜H dÑ+Ô+ˆØˆ>Ý˜Q 	¨4Ñ0Ô0ˆFØˆ~Øœ% ¤˜�Ý�”ˆ=˜9Ò$Ð$ÝÐ;Ð;Ð;Ð;°FÐ;Ñ;Ô;Ñ;Ô;ð GÝ Ð!EÀÐ!EÐ!EÑFÔFÐFÝÐGÐGÐGÐGÀÐGÑGÔGÑGÔGÐGà	
Œ�UÒ	Ð	Ý�”ˆ=˜9Ò$Ð$Ø”	˜IÒ%×*Ò*Ñ,Ô,ð HÝ Ð!FÀÐ!FÐ!FÑGÔGÐGØ”)×"Ò" 9°5Ð"Ñ9Ô9ˆØˆà	
Œ�UÒ	Ð	ØŒ{‰ˆˆ1ØŒ8�BŒ<˜!Ñ˜iÒ'Ð'ÝÐ@ÑAÔAÐAÝ�”ˆ=˜9Ò$Ð$Ø”	˜A‘ 	Ò)×.Ò.Ñ0Ô0ð HÝ Ð!FÀÐ!FÐ!FÑGÔGÐGØ”)×"Ò" 9°5Ð"Ñ9Ô9ˆØ”—’ °�Ñ7Ô7ˆØ˜ˆÐð 
Ð	r   )
z#3f90daz#ffa90ez#bd1f01z#94a4a2z#832db6z#a96b59z#e76300z#b9ac70z#717581z#92dadd)r   )r   NFr   )UÚ__doc__ÚplatformÚstructr©   r   r   Úscipy.sparse.linalgÚscipy.statsÚpandasrs   ÚImportErrorÚ$sklearn.externals._packaging.versionr   r   Úsklearn.utils.parallelr   ÚcalcsizeÚ	_IS_32BITÚmachineÚ_IS_WASMrm   Ú
np_versionrn   Únp_base_versionr   Úsp_base_versionr$   Ú
csr_matrixÚ	csr_arrayÚCSR_CONTAINERSÚ
csc_matrixÚ	csc_arrayÚCSC_CONTAINERSÚ
coo_matrixrN   ÚCOO_CONTAINERSÚ
lil_matrixÚ	lil_arrayÚLIL_CONTAINERSÚ
dok_matrixÚ	dok_arrayÚDOK_CONTAINERSÚ
bsr_matrixÚ	bsr_arrayÚBSR_CONTAINERSÚ
dia_matrixry   ÚDIA_CONTAINERSÚscipy.sparser
   ÚSPARRAY_PRESENTr   r   ÚSCIPY_VERSION_BELOW_1_12ÚSCIPY_VERSION_BELOW_1_15r%   r&   r*   r3   r7   rD   rX   r`   Únumpy.exceptionsrh   ri   rw   rˆ   r€   Ú'sklearn.externals._scipy.sparse.csgraphr˜   Úscipy.sparse.csgraphrž   r±   r´   Ú	eye_arrayrÃ   Údiags_arrayrÈ   r½   Úfloatr¼   rŠ   rÑ   ÚPETROFF_COLORSr   r   r   ú<module>r     s   ððð ð €€€Ø €€€à Ð Ð Ð Ø €€€Ø Ð Ð Ð Ø Ð Ð Ð ðØÐÐÐÐøØð ð ð Ø	€B€B€Bðøøøð HÐ GÐ GÐ GÐ GÐ GØ =Ð =Ð =Ð =Ð =Ð =à��” Ñ$Ô$Ñ$¨Ò*€	Øˆ8ÔÑÔÐ!5Ð5€àˆ]˜2œ>Ñ*Ô*€
Ø�- 
Ô 7Ñ8Ô8€Øˆ]˜5Ô,Ñ-Ô-€
Ø�- 
Ô 7Ñ8Ô8€ð ”,Ô)¨5¬<Ô+AÐB€Ø”,Ô)¨5¬<Ô+AÐB€Ø”,Ô)¨5¬<Ô+AÐB€Ø”,Ô)¨5¬<Ô+AÐB€Ø”,Ô)¨5¬<Ô+AÐB€Ø”,Ô)¨5¬<Ô+AÐB€Ø”,Ô)¨5¬<Ô+AÐB€ðØ$Ð$Ð$Ð$Ð$Ð$à€O€OøØð ð ð Ø€O€O€Oðøøøðð ð ð
ð ð ð ð +¨]¨]¸8Ñ-DÔ-DÒDÐ ð
 +¨]¨]¸8Ñ-DÔ-DÒDÐ ð �m�m HÑ-Ô-Ò-Ð-ØœÔ+Ô.ÐÐð6ð 6ð 6ð �m�m HÑ-Ô-Ò-Ð-ð ð  ð  ð ð  ð  ð  ð"ð "ð "ð%ð %ð %ð8Oð Oð Oð$
ð 
ð 
ð
ð 
ð 
ð ��˜xÑ(Ô(Ò(Ð(ØJÐJÐJÐJÐJÐJÐJÐJÐJðð ð ð ð ð ð ð ðð ð ð"+Xð +Xð +Xð^Bð Bð Bð BðL ��˜fÑ%Ô%Ò%Ð%ØAÐAÐAÐAÐAÐAÐAðð ð ð ð ð ð!ð !ð !ðð ð ðNGð Gð Gð  ð 6:ØœÔ.ÐØœ,Ô2Ðð
 ØØØØØðð ð ð ð ð ð.:¨!°5Àð :ð :ð :ð :ð :ð
 "#¨$°tÀ4ð:ð :ð :ð :ð :ð ØØØØØð:ð :ð :ð :ð :ð,1ð 1ð 1ð" ,.¬8¸ð 8ð 8ð 8ð 8ð|ð ð €€€s   œ! ¡+ª+ÅE ÅEÅE