
    Ng	                     v    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ee         defdZ
 G d d	e          ZdS )
    )AnyOptionalN)Base)expectoptionalreturnc                     | J | S )N )r   s    j/var/www/html/ai-engine/env/lib/python3.11/site-packages/onnx/backend/test/case/node/optionalgetelement.py-optional_get_element_reference_implementationr      s    O    c                   >    e Zd Zedd            Zedd            ZdS )OptionalHasElementr   Nc                     t          j        g d                              t           j                  } t          j                            t          j        j        dg          }t          j        	                    |          }t          j        
                    ddgdg          }t          |           }t          || g|g|gd	           t          || g|g|gd
	           d S )N            r   	elem_typeshapeOptionalGetElementoptional_inputoutputinputsoutputs)test_optional_get_element_optional_tensorr   r   input_type_protosname test_optional_get_element_tensor)nparrayastypefloat32onnxhelpermake_tensor_type_protoTensorProtoFLOATmake_optional_type_proto	make_noder   r   )r   tensor_type_protooptional_type_protonoder   s        r   export_get_element_tensorz,OptionalHasElement.export_get_element_tensor   s
   8LLL))00<< K>>&, ? 
 
 #kBBCTUU{$$ *:);hZ % 
 
 ?xHH:H23<	
 	
 	
 	
 	:H013	
 	
 	
 	
 	
 	
r   c                     t          j        g d                              t           j                  g} t          j                            t          j        j        dg          }t          j        	                    |          }t          j        
                    |          }t          j                            ddgdg          }t          |           }t          || g|g|gd	           t          || g|g|gd
	           d S )Nr   r   r   r   r   r   r   +test_optional_get_element_optional_sequencer    "test_optional_get_element_sequence)r$   r%   r&   int32r(   r)   r*   r+   INT32make_sequence_type_protor-   r.   r   r   )r   r/   seq_type_protor0   r1   r   s         r   export_get_element_sequencez.OptionalHasElement.export_get_element_sequence2   s"   H\\\**11"(;;< K>>&, ? 
 
 ==>OPP"kBB>RR{$$ *:);hZ % 
 
 ?xHH:H23>	
 	
 	
 	
 	:H-.5	
 	
 	
 	
 	
 	
r   )r   N)__name__
__module____qualname__staticmethodr2   r:   r
   r   r   r   r      sR        
 
 
 \
: 
 
 
 \
 
 
r   r   )typingr   r   numpyr$   r(   onnx.backend.test.case.baser   onnx.backend.test.case.noder   r   r   r
   r   r   <module>rC      s   
 !                    , , , , , , . . . . . .HSM c    
<
 <
 <
 <
 <
 <
 <
 <
 <
 <
r   