o
    toi                     @  sD   d dl mZ d dlZd dlmZ G dd deZG dd deZdS )    )annotationsN)OpRunReduceNumpyc                   @  s   e Zd ZdddZdS )ReduceMean_1Nc                 C  sL   |d urt |nd }tj||||jd}|dkr#t|tjs#t|}|fS )Naxiskeepdimsdtyper   )tuplenpmeanr   
isinstancendarrayarray)selfdataaxesr   res r   U/home/ubuntu/.local/lib/python3.10/site-packages/onnx/reference/ops/op_reduce_mean.py_run   s
   
zReduceMean_1._run)NN__name__
__module____qualname__r   r   r   r   r   r          r   c                   @  s   e Zd ZdddZdS )ReduceMean_18N   r   c                 C  s   |  ||}|dk}z%tj||||jd}|dkr(t|tjs,t|}W |fS W |fS W |fS  tyK } ztd|jd|d| d|d }~ww )Nr   r   zUnable to reduce shape z with axes=z and keepdims=.)	handle_axesr
   r   r   r   r   r   	TypeErrorshape)r   r   r   r   noop_with_empty_axesr   er   r   r   r      s&   zReduceMean_18._run)Nr   r   r   r   r   r   r   r      r   r   )
__future__r   numpyr
   onnx.reference.ops._opr   r   r   r   r   r   r   <module>   s
   
