o
    0c2                     @  s   d dl mZ ddlmZmZ ddlmZ ddlmZ ddlm	Z	m
Z
 d dlmZmZmZmZ er6ddlmZ d d	lZd	d
dd(ddZd	d
dd(ddZd	d
dd(ddZd	d	d
dd)ddZd	dd
dd*d"d#Zd	d	d
dd)d$d%Zd	dd
dd*d&d'Zd	S )+    )annotations   )_floating_dtypes_numeric_dtypes)Array)asarray)float32float64)TYPE_CHECKINGOptionalTupleUnion)DtypeNFaxiskeepdimsxr   r   %Optional[Union[int, Tuple[int, ...]]]r   boolreturnc               C  *   | j tvr	tdttj| j||dS )Nz&Only numeric dtypes are allowed in maxr   )dtyper   	TypeErrorr   _newnpmax_arrayr   r   r    r   \/var/www/html/gps/gps/lib/python3.10/site-packages/numpy/array_api/_statistical_functions.pyr         
r   c               C  r   )Nz.Only floating-point dtypes are allowed in meanr   )r   r   r   r   r   r   meanr   r   r   r   r   r!      r    r!   c               C  r   )Nz&Only numeric dtypes are allowed in minr   )r   r   r   r   r   r   minr   r   r   r   r   r"   +   r    r"   r   r   r   r   Optional[Dtype]c               C  sB   | j tvr	td|d u r| j tkrt}ttj| j	|||dS )Nz'Only numeric dtypes are allowed in prod)r   r   r   )
r   r   r   r   r	   r   r   r   prodr   r   r   r   r   r   r   r   r%   7   s
   
r%   g        )r   
correctionr   r'   Union[int, float]c               C  ,   | j tvr	tdttj| j|||dS )Nz-Only floating-point dtypes are allowed in stdr   ddofr   )r   r   r   r   r   r   stdr   r   r   r'   r   r   r   r   r,   H      
	r,   c               C  sB   | j tvr	td|d u r| j tkrt}ttj| j	|||dS )Nz&Only numeric dtypes are allowed in sumr#   )
r   r   r   r   r	   r   r   r   sumr   r&   r   r   r   r/   V   s
   
r/   c               C  r)   )Nz-Only floating-point dtypes are allowed in varr*   )r   r   r   r   r   r   varr   r-   r   r   r   r0   h   r.   r0   )r   r   r   r   r   r   r   r   )
r   r   r   r   r   r$   r   r   r   r   )
r   r   r   r   r'   r(   r   r   r   r   )
__future__r   _dtypesr   r   _array_objectr   _creation_functionsr   r   r	   typingr
   r   r   r   _typingr   numpyr   r   r!   r"   r%   r,   r/   r0   r   r   r   r   <module>   sD    