o
    %g$                     @   s  d Z ddlZddlZddlZddlm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 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Z0d1ddddZ1d1ddddZ2d2ddZ3d3ddZ4d1ddddZ5d4ddd d!d"Z6d4ddd d#d$Z7d5d%d&Z8d6d(d)Z9d6d*d+Z:d7dd,d-ddd.d/d0Z;dS )8zx
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)_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   s   | j jdv r(t|tu r|t| j jkrd }t|tu r(|t| j jkr(d }|d u r;|d u r;tj	| fd|i|S |d u rKtj
| |fd|i|S |d u r[tj| |fd|i|S tj| ||fd|i|S )Niur   )r   kindtypeintnpiinfominmaxumpositiveminimummaximumclip)r   rA   rB   r   kwargsr   r   r   _clipc   s   rI   c          
      C   s(  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rstj|	||	ddd}	|rq|d u rq|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   r=   r4   integerr	   r2   float16r   r0   ndarrayrC   true_dividehasattr)
r   r   r   r   r   r   r7   is_float16_resultrcountretr   r   r   _meanv   s6   "

	
ra   )r   meanc                C   s   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@|}
n:t|||d|d}
|	jdkrQ|	}n|	|
j}t|
tjrhtj|
||
d	d
d}
nt|
drv|
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rtj||	|d	d
d}|S t|dr|j||	 }|S ||	 }|S )NrJ   TrK   z!Degrees of freedom <= 0 for slicerL   rM   rO   r   rQ   FrR   r   r   rL   )r   ).r   ).r+   )r   r:   r%   rU   rV   rW   rX   r   r=   r4   rY   r	   r2   r   r/   reshaper1   r0   r[   rC   r\   r]   floatingmultiply_complex_to_floatviewaddreal	conjugaterF   )r   r   r   r   ddofr   r   rb   r7   r_   arrmeandivxxvr`   r   r   r   _var   sR   "






rr   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   rm   r   r   rb   rc   r   )	rr   r0   r2   r[   rC   sqrtr]   r   r=   )	r   r   r   r   rm   r   r   rb   r`   r   r   r   _std   s   

rt   c              	   C   s&   t t| |d ||t| |d d ||S r   )rC   subtractr   r   )r   r   r   r   r   r   r   _ptp   s
   rv   rL   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)r]   r   openosfspathpickledump)selffilerz   ctxfr   r   r   _dump   s   

"r   c                 C   s   t j| |dS )Nry   )r~   dumps)r   rz   r   r   r   _dumps   s   r   	same_kindKr   rS   orderr   rT   c             	   C   s   t | ||||||dS )Nr   )umr_bitwise_count)r   r   r   rS   r   r   rT   r   r   r   _bitwise_count   s   
r   )NNNF)FT)NNN)NNNr   F)NNFrd   r   )<__doc__r|   r~   rU   
contextlibr   numpyr?   numpy._corer   r2   r   rC   numpy._core.multiarrayr   r   r4   r   numpy._globalsr   r   r$   rF   reducer   rE   r   rj   r   rg   r   bitwise_countr   
logical_orr%   logical_andr)   csinglesinglecdoubledoublerh   
longdoubleupdateclongdoubler   r   r   r    r'   r*   r:   rI   ra   rr   rt   rv   r   r   r   r   r   r   r   <module>   sp    




	
	
!F


