o
    so™iÈ	  ã                   @  sH   d dl mZ d dlZd dlZd dlmZ d dlmZ G dd„ deƒZ	dS )é    )ÚannotationsN)ÚBase)Úexpectc                   @  s(   e Zd Zeddd„ƒZeddd„ƒZdS )	ÚXorÚreturnÚNonec                  C  s  t jjdddgdgd} tj dd¡dk t¡}tj dd¡dk t¡}t ||¡}t	| ||g|gd	d
 tj ddd¡dk t¡}tj ddd¡dk t¡}t ||¡}t	| ||g|gdd
 tj dddd¡dk t¡}tj dddd¡dk t¡}t ||¡}t	| ||g|gdd
 d S )Nr   ÚxÚyÚxor©ÚinputsÚoutputsé   é   r   Ú
test_xor2d©r   r   Únameé   Ú
test_xor3dé   Ú
test_xor4d©
ÚonnxÚhelperÚ	make_nodeÚnpÚrandomÚrandnÚastypeÚboolÚlogical_xorr   ©Únoder   r	   Úz© r$   úS/home/ubuntu/.local/lib/python3.10/site-packages/onnx/backend/test/case/node/xor.pyÚexport   s"   ýz
Xor.exportc                  C  sÊ  t jjdddgdgd} tj ddd¡d	k t¡}tj d¡d	k t¡}t ||¡}t	| ||g|gd
d tj ddd¡d	k t¡}tj dd¡d	k t¡}t ||¡}t	| ||g|gdd tj dddd¡d	k t¡}tj dd¡d	k t¡}t ||¡}t	| ||g|gdd tj dddd¡d	k t¡}tj ddd¡d	k t¡}t ||¡}t	| ||g|gdd tj dddd¡d	k t¡}tj dddd¡d	k t¡}t ||¡}t	| ||g|gdd d S )Nr   r   r	   r
   r   r   r   r   r   Útest_xor_bcast3v1dr   Útest_xor_bcast3v2dr   Útest_xor_bcast4v2dÚtest_xor_bcast4v3dé   Útest_xor_bcast4v4dr   r!   r$   r$   r%   Úexport_xor_broadcast(   s2   ýzXor.export_xor_broadcastN)r   r   )Ú__name__Ú
__module__Ú__qualname__Ústaticmethodr&   r-   r$   r$   r$   r%   r      s
    r   )
Ú
__future__r   Únumpyr   r   Úonnx.backend.test.case.baser   Úonnx.backend.test.case.noder   r   r$   r$   r$   r%   Ú<module>   s   