
    (php&                         S SK JrJr  S SKrS SKrS SKJr  S SKJr  S/r	\
" 5       rSSS.S jrSS	 jr " S
 S5      rSS jrSSSSS.S jjrg)    )	Parameter	signatureN)import_module)FunctionDoc_deprecatedz1.16.0)correct_moduledep_versionc                    Ub	  SU  SU 3nOSU  3nXC;  a  [        SU  SU SU SU  SU S35      e[        [        U5      US5      nUb  SU S	U S
U  SU S3	n	O$SU  SU SU SU  SU SU  SU SU SU SU  SU S3n	[        R                  " U	[
        SS9  U H  n [        [        SU  SU 35      U5      s  $    g! [          a  n
XS   :X  a  U
e Sn
A
M>  Sn
A
ff = f)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``.
dep_version : str, optional
    Version in which deprecated attributes will be removed.
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.z` will be removed in SciPy z, 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   r	   correct_importattrmessagees              I/var/www/html/venv/lib/python3.13/site-packages/scipy/_lib/deprecation.py_sub_module_deprecationr       s~   0 !!+a/?@!+/k]!F8+?	{ K##.-q 923
 	
 =0)TBDi[^4D E%ax 023 	 k]!F81YK 8%ax 0!]!F81YK 8#}$5k]!F8 L./ 	 MM'$61E!	=6+ax)HI9UU "  	 ,,	s   B??
C	
CCc                    ^ ^ U U4S jnU$ )z2Deprecate a function by emitting a warning on use.c                    >^  [        T [        5      (       a   [        R                  " ST < 3[        SS9  T $ [
        R                  " T 5      U UU4S j5       nT R                  Ul        U$ )NzTrying to deprecate class    r   c                  H   > [         R                  " T[        TS9  T" U 0 UD6$ )Nr   )r   r   r   )argskwargsfunmsgr   s     r   call'_deprecated.<locals>.wrap.<locals>.callZ   s'    MM#(:%/1'''    )
isinstancetyper   r   RuntimeWarning	functoolswraps__doc__)r'   r)   r(   r   s   ` r   wrap_deprecated.<locals>.wrapS   s_    c4  MM,SG4'A7 J			( 
	( {{r+    )r(   r   r2   s   `` r   r   r   Q   s     Kr+   c                   *    \ rS rSrSrS rS rS rSrg)_DeprecationHelperStre   z+
Helper class used by deprecate_cython_api
c                     Xl         X l        g N_content_message)selfcontentr   s      r   __init___DeprecationHelperStr.__init__i   s    r+   c                 ,    [        U R                  5      $ r9   )hashr;   )r=   s    r   __hash___DeprecationHelperStr.__hash__m   s    DMM""r+   c                 z    U R                   U:H  nU(       a$  [        R                  " U R                  [        SS9  U$ )Nr#   r   )r;   r   r   r<   r   )r=   otherress      r   __eq___DeprecationHelperStr.__eq__p   s0    }}%MM$--2D%&(
r+   r:   N)	__name__
__module____qualname____firstlineno__r1   r?   rC   rH   __static_attributes__r4   r+   r   r6   r6   e   s     #r+   r6   c                 6   U R                    SU 3nUc  SU S3nO	SU SU S3nUb  USU-   -  nU R                  nSnS	n SU U 3n	X;   a%  S
nUR                  U	5      U[        X5      '   US-  nOOM4  U(       d  UR                  U5      U[        X5      '   gg)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   N`z` is deprecated!z` is deprecated, use `z
` instead!
r   FT__pyx_fuse_   )rJ   __pyx_capi__popr6   )
r   routine_namenew_namer   old_namedepdocdj	has_fused
fused_names
             r   deprecate_cython_apir^   x   s    B //"!L>2HXJ./XJ4XJjI$. A 	
AI
"1#l^4
?I;<55;LA#J78FA  9:|9L

56 r+    )versiondeprecated_argscustom_messagec                   ^^^ Tc  Sn[        U5      eTc
  [        5       O
[        T5      mUUU4S jnU b  U" U 5      $ U$ )aS  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.
deprecated_args : set of str, optional
    Arguments to deprecate - whether passed by position or keyword.
custom_message : str, optional
    Custom message to add to deprecation warning and documentation.
z9Need to specify a version where signature will be changedc                   >^ ^^^	^
 [        T 5      m	/ m/ mT	R                  R                  5        Hg  u  pUR                  [        R
                  :X  a  TR                  U5        M6  UR                  [        R                  :X  d  MV  TR                  U5        Mi     UUU4S jm
[        R                  " T 5      UUU UU	UU
4S j5       n[        U5      n[        T5      T-
  nST SU ST S3nT(       a  UST ST S	3-  nUT-  nUS
==   U/-  ss'   [        U5      R                  SS5      S   n[        U5      Ul        U$ )Nc                    > TR                  U 5      nU(       a)  SU ST S3nUT-  n[        R                  " U[        SS9  g g )Nz
Arguments zV are deprecated, whether passed by position or keyword. They will be removed in SciPy . r   r   )intersectionr   r   r   )r&   rg   r   rb   ra   r`   s      r   warn_deprecated_argsb_deprecate_positional_args.<locals>._inner_deprecate_positional_args.<locals>.warn_deprecated_args   sS    *77?L'~ 6T%Yb* >)g0BqQ r+   c                  N  > [        U 5      [        T5      -
  nUS::  a  T" U5        T" U 0 UD6$ [        TS U 5      T-
  nSR                  U5      n[        R                  " SU ST
 S3[
        SS9  UR                  [        T	R                  U 5      5        T" U5        T" S0 UD6$ )	Nr   z, z)You are passing as positional arguments: zE. Please change your invocation to use keyword arguments. From SciPy z@, passing these as positional arguments will result in an error.r#   )r   r4   )	lensetjoinr   r   r   updatezip
parameters)r%   r&   
extra_argskwonly_extra_argsargs_msgall_argsra   fkwonly_argssigr`   rh   s        r   inner_fU_deprecate_positional_args.<locals>._inner_deprecate_positional_args.<locals>.inner_f   s     TS]2JQ$V,$)&)) !$K$< = Oyy!23HMM?z J"") +99
 #	 MM#cnnd34 (;v;r+   z
.. deprecated:: z
    Use of argument(s) ``z6`` by position is deprecated; beginning in 
    SciPy z, these will be keyword-only. zArgument(s) ``zX`` are deprecated, whether passed by position or keyword; they will be removed in SciPy rf   zExtended SummaryrQ   rS   )r   rp   itemskindr   POSITIONAL_OR_KEYWORDappendKEYWORD_ONLYr/   r0   r   rl   strsplitr1   )ru   nameparamrx   docrr   
admonitionrt   rv   rw   rh   rb   ra   r`   s   `      @@@@r    _inner_deprecate_positional_argsD_deprecate_positional_args.<locals>._inner_deprecate_positional_args   sI   l>>//1KDzzY<<<%y555""4(	 2	R 
		 	 
	0 '",>	 +, -)15
 ^O+< =$$+9B0 1J 	n$
J</#hnnT1%a(c(r+   )
ValueErrorrl   )funcr`   ra   rb   r(   r   s    ```  r   _deprecate_positional_argsr      sK    $ Io.6ceC<PO=~ /55++r+   )r#   )NNr9   )inspectr   r   r/   r   	importlibr   scipy._lib._docscraper   __all__object_NoValuer    r   r6   r^   r   r4   r+   r   <module>r      s\    (   # - /
 8 7;?D( &;M@Z,T/3BZ,r+   