U
    qh                     @  sh   d dl mZ d dlZd dlmZ dddZdddZG d	d
 d
eZG dd deZ	G dd deZ
dS )    )annotationsN)OpRunTc                 C  s>   t j| |d}|r2t|jt| jk r2t ||}|t jS )Naxis)npargminlenshapeexpand_dimsastypeint64datar   keepdimsresult r   @/tmp/pip-unpacked-wheel-xnis5xre/onnx/reference/ops/op_argmin.py_argmin   s    r   c                 C  sH   t | |} t j| |d}| j| | d }|r<t ||}|t jS )Nr      )r   Zflipr   r	   r
   r   r   r   r   r   r   #_argmin_use_numpy_select_last_index   s    r   c                   @  s   e Zd ZdddZdS )_ArgMinNc                 C  s   t |||dfS )Nr   r   )r   )selfr   r   r   r   r   r   _run   s    z_ArgMin._run)NN__name__
__module____qualname__r   r   r   r   r   r      s   r   c                   @  s   e Zd ZdS )ArgMin_1N)r   r   r   r   r   r   r   r       s   r   c                   @  s   e Zd ZdddZdS )	ArgMin_12Nc                 C  s*   |dkrt j| |||dS t|||dfS )Nr   r   )r   r   r   )r   r   r   r   Zselect_last_indexr   r   r   r   %   s    zArgMin_12._run)NNNr   r   r   r   r   r   $   s   r   )r   T)r   T)
__future__r   Znumpyr   Zonnx.reference.op_runr   r   r   r   r   r   r   r   r   r   <module>   s   

	