U
    qh                     @  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 )
ReduceL2_1Nc                 C  s^   |d k	rt |nd }ttjt|||dj|jd}|dkrXt|tjsXt	|}|fS )NZaxiskeepdimsdtyper   )
tuplenpsqrtsumsquareastyper   
isinstancendarrayarray)selfdataaxesr   res r   C/tmp/pip-unpacked-wheel-xnis5xre/onnx/reference/ops/op_reduce_l2.py_run   s    
zReduceL2_1._run)NN__name__
__module____qualname__r   r   r   r   r   r      s   r   c                   @  s   e Zd ZdddZdS )ReduceL2_18N   r   c                 C  sp   |  |r|r|fS | |}|dk}ttjt|||dj|jd}|dkrjt|tj	sjt
|}|fS )Nr   r   r   )Zis_axes_emptyZhandle_axesr
   r   r   r   r   r   r   r   r   )r   r   r   r   Znoop_with_empty_axesr   r   r   r   r      s    

zReduceL2_18._run)Nr   r   r   r   r   r   r   r      s   r   )
__future__r   Znumpyr
   Zonnx.reference.ops._opr   r   r   r   r   r   r   <module>   s   