§
    ¢éUgŠ  ã                   ó�   — d dl mZmZ d dlZd dlZd dlmZ dgZ e¦   «         Z	ddœd„Z
dd„Z G d	„ d
¦  «        Zdd„Zdddœd„ZdS )é    )Ú	ParameterÚ	signatureN)Úimport_moduleÚ_deprecated)Úcorrect_modulec                 óä  — |�	d| › d|› �}nd| › �}||vrt          d| › d|› d|› d| › d|› d�¦  «        ‚t          t          |¦  «        |d¦  «        }|�d|› d	|› d
| › d|› d�	}n!d| › d|› d|› d| › d|› d| › d|› d|› d| › d|› d�}t          j        |t
          d¬¦  «         |D ]L}	 t          t          d| › d|› �¦  «        |¦  «        c S # t           $ r}	||d         k    r|	‚Y d}	~	ŒEd}	~	ww xY wdS )aí  Helper function for deprecating modules that are public but were
    intended to be private.

    Parameters
    ----------
    sub_package : str
        Subpackage the module belongs to eg. stats
    module : str
        Public but intended private module to deprecate
    private_modules : list
        Private replacement(s) for `module`; should contain the
        content of ``all``, possibly spread over several modules.
    all : list
        ``__all__`` belonging to `module`
    attribute : str
        The attribute in `module` being accessed
    correct_module : str, optional
        Module in `sub_package` that `attribute` should be imported from.
        Default is that `attribute` should be imported from ``scipy.sub_package``.
    Nzscipy.ú.z`scipy.z` has no attribute `z`; furthermore, `scipy.z3` is deprecated and will be removed in SciPy 2.0.0.zPlease import `z` from the `z` namespace; the `scipy.z=` namespace is deprecated and will be removed in SciPy 2.0.0.z&` is deprecated along with the `scipy.z` namespace. `scipy.z2` will be removed in SciPy 1.14.0, and the `scipy.z+` namespace will be removed in SciPy 2.0.0.é   ©ÚcategoryÚ
stackleveléÿÿÿÿ)ÚAttributeErrorÚgetattrr   ÚwarningsÚwarnÚDeprecationWarning)
Úsub_packageÚmoduleÚprivate_modulesÚallÚ	attributer   Úcorrect_importÚattrÚmessageÚes
             úU/var/www/surfInsights/venv3-11/lib/python3.11/site-packages/scipy/_lib/deprecation.pyÚ_sub_module_deprecationr      s2  € ð, Ð!Ø@ +Ð@Ð@°Ð@Ð@ˆˆà/ +Ð/Ð/ˆà˜ÐÐÝð3�kð 3ð 3 Fð 3ð 3À	ð 3ð 3Ø#.ð3ð 3Ø17ð3ð 3ð 3ñ
ô 
ð 	
õ •= Ñ0Ô0°)¸TÑBÔB€DàÐð3˜ið 3ð 3°^ð 3ð 3Ø%ð3ð 3Ø(.ð3ð 3ð 3ð 	ˆð/�kð /ð / Fð /ð /¨Yð /ð /Ø%ð/ð /Ø(.ð/ð /à!ð/ð /à$*ð/ð /à-6ð/ð /ð 0;ð/ð /ð >Dð/ð /ð /ð 	õ „M�'Õ$6À1ÐEÑEÔEÐEà!ð ð ˆð	Ý�=Ð)H°+Ð)HÐ)HÀÐ)HÐ)HÑIÔIÈ9ÑUÔUÐUÐUÐUøÝð 	ð 	ð 	ð ˜¨Ô,Ò,Ð,Ø�ØˆHˆHˆHˆHøøøøð	øøøðð s   Â&"CÃ
C-ÃC(Ã(C-é   c                 ó   ‡ ‡— ˆ ˆfd„}|S )z2Deprecate a function by emitting a warning on use.c                 óÐ   •‡ — t          ‰ t          ¦  «        r!t          j        d‰ ›�t          d¬¦  «         ‰ S t          j        ‰ ¦  «        ˆ ˆˆfd„¦   «         }‰ j        |_        |S )NzTrying to deprecate class r   r   c                  óL   •— t          j        ‰t          ‰¬¦  «          ‰| i |¤ŽS )Nr   )r   r   r   )ÚargsÚkwargsÚfunÚmsgr   s     €€€r   Úcallz'_deprecated.<locals>.wrap.<locals>.callW   s9   ø€ åŒM˜#Õ(:Ø%/ð1ñ 1ô 1ð 1à�3˜Ð' Ð'Ð'Ð'ó    )Ú
isinstanceÚtyper   r   ÚRuntimeWarningÚ	functoolsÚwrapsÚ__doc__)r%   r'   r&   r   s   ` €€r   Úwrapz_deprecated.<locals>.wrapP   sŽ   øø€ Ý�c�4Ñ Ô ð 	ÝŒMØ4¨SÐ4Ð4Ý'°Að7ñ 7ô 7ð 7ð ˆJå	Œ˜Ñ	Ô	ð	(ð 	(ð 	(ð 	(ð 	(ð 	(ñ 
Ô	ð	(ð ”{ˆŒØˆr(   © )r&   r   r/   s   `` r   r   r   N   s)   øø€ ðð ð ð ð ð ð €Kr(   c                   ó$   — e Zd ZdZd„ Zd„ Zd„ ZdS )Ú_DeprecationHelperStrz3
    Helper class used by deprecate_cython_api
    c                 ó"   — || _         || _        d S ©N)Ú_contentÚ_message)ÚselfÚcontentr   s      r   Ú__init__z_DeprecationHelperStr.__init__f   s   € ØˆŒØˆŒˆˆr(   c                 ó*   — t          | j        ¦  «        S r4   )Úhashr5   )r7   s    r   Ú__hash__z_DeprecationHelperStr.__hash__j   s   € Ý�D”MÑ"Ô"Ð"r(   c                 ób   — | j         |k    }|r!t          j        | j        t          d¬¦  «         |S )Nr   r   )r5   r   r   r6   r   )r7   ÚotherÚress      r   Ú__eq__z_DeprecationHelperStr.__eq__m   s>   € ØŒ} Ò%ˆØð 	(ÝŒM˜$œ-Õ2DØ%&ð(ñ (ô (ð (àˆ
r(   N)Ú__name__Ú
__module__Ú__qualname__r.   r9   r<   r@   r0   r(   r   r2   r2   b   sK   € € € € € ðð ð ð  ð  ð#ð #ð #ðð ð ð ð r(   r2   c                 ó6  — | j         › d|› �}|€d|z  }n	d|› d|› d�}|�|d|z   z  }| j        }d}d	}	 d|› |› �}	|	|v r.d
}|                     |	¦  «        |t          |	|¦  «        <   |dz  }nnŒ;|s(|                     |¦  «        |t          ||¦  «        <   dS dS )a>  
    Deprecate an exported cdef function in a public Cython API module.

    Only functions can be deprecated; typedefs etc. cannot.

    Parameters
    ----------
    module : module
        Public Cython API module (e.g. scipy.linalg.cython_blas).
    routine_name : str
        Name of the routine to deprecate. May also be a fused-type
        routine (in which case its all specializations are deprecated).
    new_name : str
        New name to include in the deprecation warning message
    message : str
        Additional text in the deprecation warning message

    Examples
    --------
    Usually, this function would be used in the top-level of the
    module ``.pyx`` file:

    >>> from scipy._lib.deprecation import deprecate_cython_api
    >>> import scipy.linalg.cython_blas as mod
    >>> deprecate_cython_api(mod, "dgemm", "dgemm_new",
    ...                      message="Deprecated in Scipy 1.5.0")
    >>> del deprecate_cython_api, mod

    After this, Cython modules that use the deprecated function emit a
    deprecation warning when they are imported.

    r	   Nz`%s` is deprecated!ú`z` is deprecated, use `z
` instead!ú
r   FTÚ__pyx_fuse_é   )rA   Ú__pyx_capi__Úpopr2   )
r   Úroutine_nameÚnew_namer   Úold_nameÚdepdocÚdÚjÚ	has_fusedÚ
fused_names
             r   Údeprecate_cython_apirS   u   s  € ðB ”/Ð2Ð2 LÐ2Ð2€HàÐØ&¨Ñ1ˆˆàI�XÐIÐI°XÐIÐIÐIˆàÐØ�$˜‘.Ñ ˆàÔ€Að 	
€AØ€IðØ4 1Ð4 lÐ4Ð4ˆ
Ø˜ˆ?ˆ?ØˆIØ;<¿5º5ÀÑ;LÔ;LˆAÕ# J°Ñ7Ô7Ñ8Ø�‰FˆAˆAàðð ð MØ9:¿º¸|Ñ9LÔ9LˆÕ
 ¨fÑ
5Ô
5Ñ6Ð6Ð6ðMð Mr(   )Úversionc                óR   ‡— ‰€d}t          |¦  «        ‚ˆfd„}| � || ¦  «        S |S )a©  Decorator for methods that issues warnings for positional arguments.

    Using the keyword-only argument syntax in pep 3102, arguments after the
    * will issue a warning when passed as a positional argument.

    Parameters
    ----------
    func : callable, default=None
        Function to check arguments on.
    version : callable, default=None
        The version when positional arguments will result in error.
    Nz9Need to specify a version where signature will be changedc                 ód  •‡ ‡‡‡— t          ‰ ¦  «        Šg Šg Š‰j                             ¦   «         D ]Z\  }}|j        t          j        k    r‰                     |¦  «         Œ0|j        t          j        k    r‰                     |¦  «         Œ[t          j	        ‰ ¦  «        ˆˆ ˆˆˆfd„¦   «         }|S )Nc                  ó„  •— t          | ¦  «        t          ‰¦  «        z
  }|dk    r ‰| i |¤ŽS d„ t          ‰d |…         | | d …         ¦  «        D ¦   «         }d                     |¦  «        }t          j        d|› d‰› d�t
          d¬¦  «         |                     t          ‰j        | ¦  «        ¦  «          ‰d	i |¤ŽS )
Nr   c                 ó"   — g | ]\  }}|› d |› �‘ŒS )ú=r0   )Ú.0ÚnameÚargs      r   ú
<listcomp>zi_deprecate_positional_args.<locals>._inner_deprecate_positional_args.<locals>.inner_f.<locals>.<listcomp>Ø   s6   € ð ð ð á�D˜#ð ��˜#��ðð ð r(   z, zYou are passing z^ as a positional argument. Please change your invocation to use keyword arguments. From SciPy z@, passing these as positional arguments will result in an error.r   )r   r0   )ÚlenÚzipÚjoinr   r   r   ÚupdateÚ
parameters)	r#   r$   Ú
extra_argsÚargs_msgÚall_argsÚfÚkwonly_argsÚsigrT   s	       €€€€€r   Úinner_fzU_deprecate_positional_args.<locals>._inner_deprecate_positional_args.<locals>.inner_fÑ   sü   ø€ å˜T™œ¥S¨¡]¤]Ñ2ˆJØ˜QŠˆØ�q˜$Ð) &Ð)Ð)Ð)ðð å!$ [°°*°Ô%=¸tÀZÀKÀLÀLÔ?QÑ!RÔ!Rðñ ô ˆHð —y’y Ñ*Ô*ˆHÝŒMð9 xð 9ð 9à")ð9ð 9ð 9õ
 #Øð	ñ 	ô 	ð 	ð �MŠM�#˜cœn¨dÑ3Ô3Ñ4Ô4Ð4Ø�1�;�;�v�;�;Ðr(   )
r   rb   ÚitemsÚkindr   ÚPOSITIONAL_OR_KEYWORDÚappendÚKEYWORD_ONLYr,   r-   )rf   r[   Úparamri   re   rg   rh   rT   s   `   @@@€r   Ú _inner_deprecate_positional_argszD_deprecate_positional_args.<locals>._inner_deprecate_positional_argsÆ   sÐ   øøøøø€ Ý˜‰lŒlˆØˆØˆàœ>×/Ò/Ñ1Ô1ð 	)ð 	)‰KˆD�%ØŒz�YÔ<Ò<Ð<Ø—’ Ñ%Ô%Ð%Ð%Ø”�yÔ5Ò5Ð5Ø×"Ò" 4Ñ(Ô(Ð(øå	Œ˜Ñ	Ô	ð	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ñ 
Ô	ð	ð0 ˆr(   )Ú
ValueError)ÚfuncrT   r&   rp   s    `  r   Ú_deprecate_positional_argsrs   µ   sT   ø€ ð €ØIˆÝ˜‰oŒoÐð$ð $ð $ð $ð $ðL ÐØ/Ð/°Ñ5Ô5Ð5à+Ð+r(   )r   )NNr4   )Úinspectr   r   r,   r   Ú	importlibr   Ú__all__ÚobjectÚ_NoValuer   r   r2   rS   rs   r0   r(   r   ú<module>ry      sø   ðØ (Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ø Ð Ð Ð Ø €€€Ø #Ð #Ð #Ð #Ð #Ð #ð ˆ/€ð
 ˆ6‰8Œ8€ð 7;ð=ð =ð =ð =ð =ð@ð ð ð ð(ð ð ð ð ñ ô ð ð&;Mð ;Mð ;Mð ;Mð@:,°Tð :,ð :,ð :,ð :,ð :,ð :,ð :,r(   