o
    zqf2$                     @   s  d Z ddlZddlZddlZddlmZ ddlmZ ddlm	Z
 ddlmZ ddlmZ ddlmZ dd	lmZ dd
lmZ edZe
jjZe
jjZe
jjZe
jjZe
jZ e
j!jZ"e
j#jZ$eej%eej&eej'eej(iZ)eej*eej(kre)+eej,eej*i dddedfddZ-dddedfddZ.ddddedfddZ/ddddedfddZ0d2ddddZ1d2ddddZ2d3ddZ3d4ddZ4d2dddd Z5d5ddd!d"d#Z6d5ddd!d$d%Z7d6d&d'Z8d7d)d*Z9d7d+d,Z:d8dd-d.ddd/d0d1Z;dS )9zx
Array methods which are called by both the C-code for the method
and the Python code for the NumPy-namespace function

    N)nullcontext)
multiarray)umath)
asanyarray)numerictypes)_exceptions)_no_nep50_warning)_NoValueboolFTc                 C      t | |d ||||S N)umr_maximumaaxisoutkeepdimsinitialwhere r   S/root/parts/websockify/install/lib/python3.10/site-packages/numpy/_core/_methods.py_amax*      r   c                 C   r   r   )umr_minimumr   r   r   r   _amin.   r   r   c                 C      t | ||||||S r   )umr_sumr   r   dtyper   r   r   r   r   r   r   _sum2   r   r   c                 C   r   r   )umr_prodr   r   r   r   _prod6   r   r!   r   c                C   8   |d u rt }|du rt| ||||S t| |||||dS NTr"   )bool_dtumr_anyr   r   r   r   r   r   r   r   r   _any:   
   r(   c                C   r#   r$   )r%   umr_allr'   r   r   r   _allC   r)   r+   c                 C   s   |du r2|d u rt t| j}nt|t s|f}d}|D ]}|| jt|| j 9 }qt|}|S ddl	m
} t||| j|tjd |}|S )NT   r   )broadcast_to)tuplerangendim
isinstanceshapemunormalize_axis_indexntintpnumpy.lib._stride_tricks_implr-   r   )arrr   r   r   itemsaxr-   r   r   r   _count_reduce_itemsL   s   


r;   c                 K   sr   |d u r|d u rt d|d u rtj| |fd|i|S |d u r,tj| |fd|i|S tj| ||fd|i|S )NzOne of max or min must be givenr   )
ValueErrorumminimummaximumclip)r   minmaxr   kwargsr   r   r   _clipc   s   rD   c          
      C   sN  t | }d}t||||d}|du r|dkr'nt|dkd dr'tjdtdd |d u rKt|jjt	j
t	jfr<td	}nt|jjt	jrKtd
}d}t||||||d}	t|	tjrt  tj|	||	ddd}	W d    n1 ssw   Y  |r|d u r|j|	}	|	S t|	dr|r|j|	| }	|	S |	j|	| }	|	S |	| }	|	S )NFr   r   Tr   r   zMean of empty slice.   
stacklevelf8f4r"   unsafer   castingsubokr   )r   r;   r&   warningswarnRuntimeWarning
issubclassr   typer5   integerr
   r3   float16r   r1   ndarrayr   r=   true_dividehasattr)
r   r   r   r   r   r   r8   is_float16_resultrcountretr   r   r   _meann   s:   "

	
r]   )r   meanc                C   sT  t | }t||||d}	|du r||	kr%nt||	kd dr%tjdtdd |d u r9t|jjt	j
t	jfr9td}|d ur@|}
nMt|||d|d}
|	jdkrQ|	}n|	|
j}t|
tjr{t  tj|
||
d	d
d}
W d    n1 suw   Y  nt|
dr|
j|
|	 }
n|
|	 }
t ||
 }t|jjt	jt	j
frtj|||d}n3|jtv r|jt|j dfd}tj|||d tj|d |d |jdj}ntj|t||dj}t||||||d}t|	| d}	t|tjrt  tj||	|d	d
d}W d    |S 1 sw   Y  |S t|dr$|j||	 }|S ||	 }|S )NrE   TrF   z!Degrees of freedom <= 0 for slicerG   rH   rJ   r   rL   FrM   r   r   rG   )r   ).r   ).r,   )r   r;   r&   rP   rQ   rR   rS   r   rT   r5   rU   r
   r3   r   r0   reshaper2   r1   rW   r   r=   rX   rY   floatingmultiply_complex_to_floatviewaddreal	conjugater?   )r   r   r   r   ddofr   r   r^   r8   r[   arrmeandivxxvr\   r   r   r   _var   s`   "






rn   c          	   
   C   sd   t | |||||||d}t|tjrtj||d}|S t|dr+|jt|}|S t|}|S )N)r   r   r   ri   r   r   r^   r_   r   )	rn   r1   r3   rW   r=   sqrtrY   r   rT   )	r   r   r   r   ri   r   r   r^   r\   r   r   r   _std   s   

rp   c              	   C   s&   t t| |d ||t| |d d ||S r   )r=   subtractr   r   )r   r   r   r   r   r   r   _ptp   s
   rr   rG   c                 C   s^   t |dr
t|}ntt|d}|}tj| ||d W d    d S 1 s(w   Y  d S )Nwritewbprotocol)rY   r   openosfspathpickledump)selffilerv   ctxfr   r   r   _dump   s   

"r   c                 C   s   t j| |dS )Nru   )rz   dumps)r|   rv   r   r   r   _dumps   s   r   	same_kindKr   rN   orderr   rO   c             	   C   s   t | ||||||dS )Nr   )umr_bitwise_count)r   r   r   rN   r   r   rO   r   r   r   _bitwise_count   s   
r   )NNNF)FT)NNN)NNNr   F)NNFr`   r   )<__doc__rx   rz   rP   
contextlibr   numpy._corer   r3   r   r=   numpy._core.multiarrayr   r   r5   r   numpy._core._ufunc_configr   numpy._globalsr	   r   r%   r?   reducer   r>   r   rf   r   rc   r    bitwise_countr   
logical_orr&   logical_andr*   csinglesinglecdoubledoublerd   
longdoubleupdateclongdoubler   r   r   r!   r(   r+   r;   rD   r]   rn   rp   rr   r   r   r   r   r   r   r   <module>   sp    




	
	
"H


