
    -i)                        S SK r S SKrS SKJr  S SKJr  S SKJr  S SKr	S SK
JrJrJrJrJrJrJrJr  S SKJs  Jr  SSKJr  \ " S S	5      5       rS
 rS rS rS rS rS rS r S r!\" SSS/S9r"\" \RF                  S\"5      \" \RH                  S\"\S9\" \RJ                  S\S9\" \RL                  S\S9\" \RN                  S5      \" \RP                  S5      \" \RR                  S5      \" \RT                  S5      \" \RV                  S5      \" \RX                  S5      \" \RZ                  S5      \" \R\                  S5      \" \R^                  S5      \" \R`                  S5      \" \Rb                  S5      \" \Rd                  S5      \" \Rf                  S5      \" \Rh                  S5      \" \Rj                  S5      \" \Rl                  S\S9\" \Rn                  S\"\ S9\" \Rp                  S\" SS/S/S9\!S9\" \Rr                  S\S94r:\;" 5       Ry                  \: V s0 s H#  o Rz                  R|                  U R~                  _M%     sn 5        \: V s/ s H  o Rz                  R|                  PM     sn r@gs  sn f s  sn f )    N)Callable)	dataclass)
ModuleType)array_namespacescipy_namespace_foris_numpyis_dask	is_marray
xp_promotexp_capabilitiesSCIPY_ARRAY_API   )_ufuncsc                       \ rS rSr% \\S'   \\S'   Sr\\/\4   S-  \S'   Sr\\	\	S-  /\S-  4   S-  \S'   \
S 5       rS rS	 r\
S
 5       r\R                   " S5      S 5       rSrg)	_FuncInfo   funcn_argsNr   generic_implc                 .    U R                   R                  $ N)r   __name__selfs    ^/var/www/html/venv/lib/python3.13/site-packages/scipy/special/_support_alternative_backends.pyname_FuncInfo.name#   s    yy!!!    c                 ,    [        U R                  5      $ r   )hashr   r   s    r   __hash___FuncInfo.__hash__(   s    DIIr   c                 b    [        U[        5      =(       a    U R                  UR                  :H  $ r   )
isinstancer   r   )r   others     r   __eq___FuncInfo.__eq__+   s!    %+G		UZZ0GGr   c                   ^  T R                   [        5       ;   a$  SS Kn[        UR                  T R                   5      $ [
        (       aD  [        R                  " T R                  5      U 4S j5       nSUl	        T R                   Ul
        UnOT R                  nT R                  =(       d
    [        5       nU" U5      nXSL d   eU$ )Nr   c                  B   > [        U 6 nTR                  U5      " U 0 UD6$ r   )r   _wrapper_for)argskwargsxpr   s      r   wrapped"_FuncInfo.wrapper.<locals>.wrapped7   s(    $d+((,d=f==r   zscipy.special)r   globalsscipy.specialgetattrspecialr   	functoolswrapsr   
__module____qualname__r   )r   scipyr.   r   capabilitiescap_funcs   `     r   wrapper_FuncInfo.wrapper.   s    99	! !5==$))44?__TYY'> (> "1G#'99G D99D++@/@  %r   i  c                    [        U5      (       a  U R                  $ [        U5      n[        XU R                  5      nUb  U$ U R
                  b  U R                  X5      nUb  U$ [        U5      (       a   [        5       U R                     nXAS.S jnU$ [        U5      (       a   [        5       U R                     nXAS.S jnU$ U R                  nXAS.S jnU$ )N)_fr-   c                     U Vs/ s H  oDR                   PM     nnU " U0 UD6n[        R                  " [        R                  S U 5       5      nUR                  XgS9$ s  snf )Nc              3   8   #    U  H  oR                   v   M     g 7fr   mask).0args     r   	<genexpr>4_FuncInfo._wrapper_for.<locals>.f.<locals>.<genexpr>g   s     6P4Cxx4s   rA   )datar4   reduceoperatoror_asarray)r>   r-   r+   r,   rD   	data_argsoutrB   s           r   f!_FuncInfo._wrapper_for.<locals>.fd   sY    156#XX	6).v. ''6P46PQzz#z11 7s   Ac                 R    UR                   " [        R                  " U 40 UD6/UQ76 $ r   )
map_blocksr4   partial)r>   r-   r+   r,   s       r   rN   rO   t   s&    }}Y%6%6r%DV%DLtLLr   c                     U Vs/ s H  n[         R                  " U5      PM     nnU " U0 UD6nUR                  U5      $ s  snf r   )nprK   )r>   r-   r+   r,   rD   rM   s         r   rN   rO   |   sB     044tBJJsOtD4d%f%C::c?" 5s    A )	r   r   r   _get_native_funcr   r   r
   r0   r	   )r   r-   spxrN   r>   s        r   r*   _FuncInfo._wrapper_forK   s    B<<99 ""%Rdii0=H (!!"*A}R== 499%B 2 H2;; 499%B M H YY 	# r    )r   r6   r7   __firstlineno__r   __annotations__intr   r   r   propertyr   r!   r&   r;   r4   	lru_cacher*   __static_attributes__rX   r   r   r   r      s     N K >BOXxj(23d:A  (	Z$&'D8  " "H  8 7 7r   r   c                     U(       a  [        UR                  US 5      OS nUc(  [        U S5      (       a  [        U R                  US 5      nU$ )Nr3   )r2   r3   hasattr)r-   rV   f_namerN   s       r   rU   rU      sB    .1VT*tAyWR++ BJJ-Hr   c                     U S.S jnU$ )Nr-   c                H  ^ [        U5      (       a   [        U R                  UR                  5      OUm[        XSSUS9u  pU S:  US:  -  nUR	                  U 5      UR	                  U5      -  n[
        R                  " X4) -  X4U4S jUR                  S9n[
        R                  " U5      U S:H  US:  -     R                  S5      n[
        R                  " U5      UR                  U 5      UR                  U5      -  X4-  -     R                  UR                  5      nU$ )NT)	broadcastforce_floatingr-   r   c                 P   > U TR                  U 5      TR                  U5      -
  -  $ r   )log)xymxps     r   <lambda>/_rel_entr.<locals>.__rel_entr.<locals>.<lambda>   s    cggaj3771:56r   )
fill_value)r	   r   _metar   isinfxpxapply_whereinfatsetisnannan)ri   rj   r-   xy_posxy_infresrk   s         @r   
__rel_entr_rel_entr.<locals>.__rel_entr   s    3:2;;oaggqww/B!$tKa%AE"!rxx{*ooWF6vv
 ffSk16a1f-.2215ffSk"((1+3vGHLLRVVT
r   rX   )r-   rV   r{   s      r   	_rel_entrr}      s    ! " r   c                     U S.S jnU$ )Nrc   c                    [        XSUS9u  p[        R                  " SSS9   XR                  U5      -  nS S S 5        UR	                  U S:H  SW5      $ ! , (       d  f       N$= f)NT)rf   r-   ignore)divideinvalidg        )r   rT   errstaterh   where)ri   rj   r-   temps       r   __xlogy_xlogy.<locals>.__xlogy   sT    !t;[[(;vvay=D <xxRT** <;s   A
A#rX   )r-   rV   r   s      r   _xlogyr      s     +
 Nr   c                 :   ^ ^ [        T US5      mTc  g UU 4S jnU$ )Ngammaincc                    > T" U S-  US-  5      nU S:H  US:  -  nTR                  USU5      nTR                  U 5      TR                  U5      -  nTR                  UTR                  U5      $ )N   r   g      ?)r   rp   rw   )vri   rz   rB   r   r-   s       r   __chdtr_chdtr.<locals>.__chdtr   sl    q1ua!e$Q1q5!hhtR%xx{RXXa[(xxbffc**r   rU   )r-   rV   r   r   s   `  @r   _chdtrr      s(    
  C4H+ Nr   c                 :   ^ ^ [        T US5      mTc  g UU 4S jnU$ )N	gammainccc                    > TR                  US:  T" U S-  US-  5      S5      nUS:H  U S:H  -  TR                  U5      -  TR                  U 5      -  U S:*  -  nTR                  UTR                  U5      nU$ )Nr   r   r   )r   rv   rw   )r   ri   rz   i_nanr   r-   s       r   __chdtrc_chdtrc.<locals>.__chdtrc   sx    hhqAvy1ac2A6q&Q!V$3bhhqkAQ!VLhhubffc*
r   r   )r-   rV   r   r   s   `  @r   _chdtrcr      s(    
 !S+6I
 Or   c                 4   ^ [        XS5      mTc  g U4S jnU$ )Nbetaincc                    > T" XSU-
  5      $ )Nr   rX   )abri   r   s      r   
__betaincc_betaincc.<locals>.__betaincc   s    qQqS!!r   r   )r-   rV   r   r   s      @r   	_betainccr      s$    r	2G" r   c                 :   ^ ^ [        T US5      mTc  g UU 4S jnU$ )Nr   c                 j   > XS-  U -   -  nT" U S-  SU5      S-  nTR                  US:  USU-
  5      $ )Nr   g      ?r   r   )r   )dftri   tailr   r-   s       r   __stdtr_stdtr.<locals>.__stdtr   sE    q&2+rAvsA&*xxAtQX..r   r   )r-   rV   r   r   s   `  @r   _stdtrr      s%    r3	2G/
 Nr   c                 x   ^ ^^^ [        T US5      =(       d    [        T U5      mTc  g SSKJmJm  UUUU 4S jnU$ )Nstdtrr   )bracket_root	find_rootc                 |   > U4S jnT" UTR                  U5      X4S9nT" X#R                  X4S9nUR                  $ )Nc                    > T" X5      U-
  $ r   rX   )r   r   pr   s      r   fun(_stdtrit.<locals>.__stdtrit.<locals>.fun   s    5<!#33r   )r+   )
zeros_likebracketri   )	r   r   r   res_bracketres_rootr   r   r   r-   s	        r   	__stdtrit_stdtrit.<locals>.__stdtrit   s=    3"3a(8wGS"5"5RGDzzr   )rU   r   scipy.optimize.elementwiser   r   )r-   rV   r   r   r   r   s   `  @@@r   _stdtritr      s;    Rg.A&S/E }B  r   T	jax.numpycupy)cpu_only
exceptions   )r   r   )r   zno scipy.optimize support)r   r   skip_backends)Ar4   rI   collections.abcr   dataclassesr   typesr   numpyrT   scipy._lib._array_apir   r   r   r	   r
   r   r   r   scipy._lib.array_api_extra_libarray_api_extrarq    r   r   rU   r}   r   r   r   r   r   r   _needs_betaincr   betainccchdtrchdtrcerferfcentrexpiti0i0ei1i1elog_ndtrlogitgammalnr   r   ndtrndtrirel_entrr   stdtritxlogy_special_funcsr0   updater   r   r;   __all__)nfos   0r   <module>r      sg     $ !     ) (  r r rj*&"
2 !$K;PQ gooq.1g>	JgmmQV4gnnag6gkk1gllAgllAgmmQgjj!gkk1gjj!gkk1g"gmmQgooq!g"g#gllAgmmQg	:gmmafEgooqVH!K LN $	%
 gmmQV47B 	  NKNS((##S[[0NK L(6
788
7 L
7s   +*J J