
    Ng 
              
           d dl mZmZ d dlZd dlZd dlmZ d dlm	Z	 	 ddee         dej
        dej
        dee         fd	Z G d
 de          ZdS )    )AnyListN)Base)expectsequencetensorpositionreturnc                     t          |           }||d         }|                    ||           n|                    |           |S )Nr   )listinsertappend)r   r   r	   seqinsert_positions        f/var/www/html/ai-engine/env/lib/python3.11/site-packages/onnx/backend/test/case/node/sequenceinsert.py(sequence_insert_reference_implementationr      sP     x..C #1+

?F++++ 	

6J    c                   &    e Zd Zedd            ZdS )SequenceInsertr
   Nc                  "   t          j        g d                              t           j                  gt          j        g d          t          j        dg                              t           j                  gd} t          j        g d                              t           j                  t          j        g d                              t           j                  t          j        ddg                              t           j                  g}|                                 D ]\  }}|d                             t           j                  }t          |          d	k    rYt          j                            d
g ddg          }|d	         }t          |||          }t          ||||g|gd|z              t          j                            d
ddgdg          }t          ||          }t          |||g|gd|z              d S )N)
         )r   r   )at_backat_front)            )            	   r   r   )r   r   r	   output_sequence)inputsoutputstest_sequence_insert_)r(   r)   namer   r   )nparrayastypeint64itemslenonnxhelper	make_noder   r   )
test_casesr   	test_nametest_inputsr   noder	   inserteds           r   exportzSequenceInsert.export   s$    ..55bh??@+++..!0D0DRX0N0NO
 


 H\\\""))"(33HYYY&&rx00HaV##BH--
 '1&6&6&8&8 	 	"I{ ^**2844F;!##{,,$===./ -  
 'q>Cfh  $fh7%J09<	     {,,$&1./ -  
 DHfUU$f-%J09<	    5	 	r   )r
   N)__name__
__module____qualname__staticmethodr:    r   r   r   r      s2        * * * \* * *r   r   )N)typingr   r   numpyr,   r2   onnx.backend.test.case.baser   onnx.backend.test.case.noder   ndarrayr   r   r?   r   r   <module>rE      s   
              , , , , , , . . . . . . EI 3i!#79z	#Y    , , , , ,T , , , , ,r   