o
    to™iÁ  ã                   @  s,   d dl mZ d dlmZ G dd„ deƒZdS )é    )Úannotations)ÚOpRunc                   @  s   e Zd Zddd„ZdS )ÚReverseSequenceNc           
      C  s†   dd„ |j D ƒ}dd„ |j D ƒ}| ¡ }t|ƒD ]'\}}	|||< td|	ƒ||< |||< t|	d d dƒ||< |t|ƒ |t|ƒ< q|fS )Nc                 S  ó   g | ]}t d |ƒ‘qS ©r   ©Úslice©Ú.0Ús© r   úZ/home/ubuntu/.local/lib/python3.10/site-packages/onnx/reference/ops/op_reverse_sequence.pyÚ
<listcomp>   ó    z(ReverseSequence._run.<locals>.<listcomp>c                 S  r   r   r   r	   r   r   r   r      r   r   é   éÿÿÿÿ)ÚshapeÚcopyÚ	enumerater   Útuple)
ÚselfÚdataÚsequence_lensÚ
batch_axisÚ	time_axisÚindexÚ
index_dataÚresultÚiÚslr   r   r   Ú_run
   s   zReverseSequence._run)NN)Ú__name__Ú
__module__Ú__qualname__r    r   r   r   r   r   	   s    r   N)Ú
__future__r   Úonnx.reference.op_runr   r   r   r   r   r   Ú<module>   s   