§
    1�Åj*  ã                  óV   — 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e¦  «        Z	dS )é    )ÚannotationsN)ÚBase)Úexpectc                  ó†   — e Zd Zed	d„¦   «         Zed	d„¦   «         Zed	d„¦   «         Zed	d„¦   «         Zed	d„¦   «         ZdS )
Ú	UnsqueezeÚreturnÚNonec            
     óÖ  — t           j                             ddd¦  «                             t           j        ¦  «        } t          | j        ¦  «        D ]•}t          j        |g¦  «                             t           j        ¦  «        }t          j
                             dddgdg¬¦  «        }t          j        | |¬	¦  «        }t          || |g|gd
t          |¦  «        z   ¬¦  «         Œ–d S )Né   é   é   r   ÚxÚaxesÚy©ÚinputsÚoutputs©ÚaxisÚtest_unsqueeze_axis_©r   r   Úname)ÚnpÚrandomÚrandnÚastypeÚfloat32ÚrangeÚndimÚarrayÚint64ÚonnxÚhelperÚ	make_nodeÚexpand_dimsr   Ústr)r   Úir   Únoder   s        úVC:\Projects\Historical\venv\Lib\site-packages\onnx/backend/test/case/node/unsqueeze.pyÚexport_unsqueeze_one_axisz#Unsqueeze.export_unsqueeze_one_axis   sã   € åŒI�OŠO˜A˜q !Ñ$Ô$×+Ò+­B¬JÑ7Ô7ˆå�q”v‘”ð 	ð 	ˆAÝ”8˜Q˜C‘=”=×'Ò'­¬Ñ1Ô1ˆDÝ”;×(Ò(ØØ˜V�}Ø˜ð )ñ ô ˆDõ
 ”˜q qÐ)Ñ)Ô)ˆAåØØ˜4�yØ˜Ø+­c°!©f¬fÑ4ð	ñ ô ð ð ð	ð 	ó    c                 ó¶  — t           j                             ddd¦  «                             t           j        ¦  «        } t          j        ddg¦  «                             t           j        ¦  «        }t          j         	                    dddgdg¬	¦  «        }t          j
        | d¬
¦  «        }t          j
        |d¬
¦  «        }t          || |g|gd¬¦  «         d S )Nr   r   r   é   r   r   r   r   r   r   Útest_unsqueeze_two_axesr   ©r   r   r   r   r   r    r!   r"   r#   r$   r%   r   ©r   r   r(   r   s       r)   Úexport_unsqueeze_two_axesz#Unsqueeze.export_unsqueeze_two_axes"   sÅ   € åŒI�OŠO˜A˜q !Ñ$Ô$×+Ò+­B¬JÑ7Ô7ˆÝŒx˜˜A˜ÑÔ×&Ò&¥r¤xÑ0Ô0ˆåŒ{×$Ò$ØØ˜�=Ø�Eð %ñ 
ô 
ˆõ
 ŒN˜1 1Ð%Ñ%Ô%ˆÝŒN˜1 1Ð%Ñ%Ô%ˆåˆt˜Q ˜I°¨sÐ9RÐSÑSÔSÐSÐSÐSr+   c                 óâ  — t           j                             ddd¦  «                             t           j        ¦  «        } t          j        g d¢¦  «                             t           j        ¦  «        }t          j         	                    dddgdg¬	¦  «        }t          j
        | d
¬¦  «        }t          j
        |d¬¦  «        }t          j
        |d¬¦  «        }t          || |g|gd¬¦  «         d S )Nr   r   r   )é   r   r   r   r   r   r   r   r3   r   Útest_unsqueeze_three_axesr   r/   r0   s       r)   Úexport_unsqueeze_three_axesz%Unsqueeze.export_unsqueeze_three_axes1   sÙ   € åŒI�OŠO˜A˜q !Ñ$Ô$×+Ò+­B¬JÑ7Ô7ˆÝŒx˜	˜	˜	Ñ"Ô"×)Ò)­"¬(Ñ3Ô3ˆåŒ{×$Ò$ØØ˜�=Ø�Eð %ñ 
ô 
ˆõ
 ŒN˜1 1Ð%Ñ%Ô%ˆÝŒN˜1 1Ð%Ñ%Ô%ˆÝŒN˜1 1Ð%Ñ%Ô%ˆåˆt˜Q ˜I°¨sÐ9TÐUÑUÔUÐUÐUÐUr+   c                 óâ  — t           j                             ddd¦  «                             t           j        ¦  «        } t          j        g d¢¦  «                             t           j        ¦  «        }t          j         	                    dddgdg¬	¦  «        }t          j
        | d
¬¦  «        }t          j
        |d¬¦  «        }t          j
        |d¬¦  «        }t          || |g|gd¬¦  «         d S )Nr   r   r   )r   r   r3   r   r   r   r   r   r3   r   Útest_unsqueeze_unsorted_axesr   r/   r0   s       r)   Úexport_unsqueeze_unsorted_axesz(Unsqueeze.export_unsqueeze_unsorted_axesA   sÙ   € åŒI�OŠO˜A˜q !Ñ$Ô$×+Ò+­B¬JÑ7Ô7ˆÝŒx˜	˜	˜	Ñ"Ô"×)Ò)­"¬(Ñ3Ô3ˆåŒ{×$Ò$ØØ˜�=Ø�Eð %ñ 
ô 
ˆõ
 ŒN˜1 1Ð%Ñ%Ô%ˆÝŒN˜1 1Ð%Ñ%Ô%ˆÝŒN˜1 1Ð%Ñ%Ô%ˆåˆt˜Q ˜I°¨sÐ9WÐXÑXÔXÐXÐXÐXr+   c                 óŠ  — t           j                             dddgdg¬¦  «        } t          j                             dddd¦  «                             t          j        ¦  «        }t          j        d	g¦  «                             t          j	        ¦  «        }t          j
        |d	¬
¦  «        }t          | ||g|gd¬¦  «         d S )Nr   r   r   r   r   r-   r   r   éþÿÿÿr   Útest_unsqueeze_negative_axesr   )r"   r#   r$   r   r   r   r   r   r    r!   r%   r   )r(   r   r   r   s       r)   Úexport_unsqueeze_negative_axesz(Unsqueeze.export_unsqueeze_negative_axesQ   s¯   € åŒ{×$Ò$ØØ˜�=Ø�Eð %ñ 
ô 
ˆõ
 ŒI�OŠO˜A˜q ! QÑ'Ô'×.Ò.­r¬zÑ:Ô:ˆÝŒx˜˜‰~Œ~×$Ò$¥R¤XÑ.Ô.ˆÝŒN˜1 2Ð&Ñ&Ô&ˆÝˆt˜Q ˜I°¨sÐ9WÐXÑXÔXÐXÐXÐXr+   N)r   r	   )	Ú__name__Ú
__module__Ú__qualname__Ústaticmethodr*   r1   r5   r8   r<   © r+   r)   r   r      sÄ   € € € € € Øðð ð ñ „\ðð& ðTð Tð Tñ „\ðTð ðVð Vð Vñ „\ðVð ðYð Yð Yñ „\ðYð ð	Yð 	Yð 	Yñ „\ð	Yð 	Yð 	Yr+   r   )
Ú
__future__r   Únumpyr   r"   Úonnx.backend.test.case.baser   Úonnx.backend.test.case.noder   r   rA   r+   r)   ú<module>rF      sš   ðð #Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð à €€€Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø .Ð .Ð .Ð .Ð .Ð .ðNYð NYð NYð NYð NY�ñ NYô NYð NYð NYð NYr+   