§
    1�Åjr  ã                  ó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 )
Ú
ReduceProdÚreturnÚNonec                 ó¼  — g d¢} t          j        dgt           j        ¬¦  «        }d}t          j                             dddgdg|¬	¦  «        }t          j        dd
gddggddgddggddgddgggt           j        ¬¦  «        }t          j        |t          |¦  «        |dk    ¬¦  «        }t          |||g|gd¬¦  «         t           j
                             d¦  «         t           j
                             dd| ¦  «                             t           j        ¦  «        }t          j        |t          |¦  «        |dk    ¬¦  «        }t          |||g|gd¬¦  «         d S )N©é   é   r   é   ©Údtyper   r   ÚdataÚaxesÚreduced©ÚinputsÚoutputsÚkeepdimsr   r   é   é   é   é   é   é	   é
   é   é   ©Úaxisr   Ú(test_reduce_prod_do_not_keepdims_example©r   r   ÚnameéöÿÿÿÚ'test_reduce_prod_do_not_keepdims_random©ÚnpÚarrayÚint64ÚonnxÚhelperÚ	make_nodeÚfloat32ÚprodÚtupler   ÚrandomÚseedÚuniformÚastype©Úshaper   r   Únoder   r   s         úWC:\Projects\Historical\venv\Lib\site-packages\onnx/backend/test/case/node/reduceprod.pyÚexport_do_not_keepdimsz!ReduceProd.export_do_not_keepdims   sƒ  € à�	�	ˆÝŒx˜˜¥2¤8Ð,Ñ,Ô,ˆØˆåŒ{×$Ò$ØØ˜FÐ#Ø�KØð	 %ñ 
ô 
ˆõ ŒxØ�!ˆf�q˜!�fÐ  A ¨¨A¨Ð/°1°b°'¸BÀ¸8Ð1DÐEÍRÌZð
ñ 
ô 
ˆõ ”'˜$¥U¨4¡[¤[¸8Àqº=ÐIÑIÔIˆõ 	ØØ˜$�<Ø�IØ;ð		
ñ 	
ô 	
ð 	
õ 	Œ	�Š�qÑÔÐÝŒy× Ò   b¨%Ñ0Ô0×7Ò7½¼
ÑCÔCˆÝ”'˜$¥U¨4¡[¤[¸8Àqº=ÐIÑIÔIˆÝØØ˜$�<Ø�IØ:ð		
ñ 	
ô 	
ð 	
ð 	
ð 	
ó    c                 ó¼  — g d¢} t          j        dgt           j        ¬¦  «        }d}t          j                             dddgdg|¬¦  «        }t          j        dd	gd
dggddgddggddgddgggt           j        ¬¦  «        }t          j        |t          |¦  «        |dk    ¬¦  «        }t          |||g|gd¬¦  «         t           j
                             d¦  «         t           j
                             dd| ¦  «                             t           j        ¦  «        }t          j        |t          |¦  «        |dk    ¬¦  «        }t          |||g|gd¬¦  «         d S )Nr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   Ú!test_reduce_prod_keepdims_exampler$   r   r&   Ú test_reduce_prod_keepdims_randomr(   r6   s         r9   Úexport_keepdimszReduceProd.export_keepdims5   sƒ  € à�	�	ˆÝŒx˜˜¥2¤8Ð,Ñ,Ô,ˆØˆåŒ{×$Ò$ØØ˜FÐ#Ø�KØð	 %ñ 
ô 
ˆõ ŒxØ�!ˆf�q˜!�fÐ  A ¨¨A¨Ð/°1°b°'¸BÀ¸8Ð1DÐEÍRÌZð
ñ 
ô 
ˆõ ”'˜$¥U¨4¡[¤[¸8Àqº=ÐIÑIÔIˆõ 	ØØ˜$�<Ø�IØ4ð		
ñ 	
ô 	
ð 	
õ 	Œ	�Š�qÑÔÐÝŒy× Ò   b¨%Ñ0Ô0×7Ò7½¼
ÑCÔCˆÝ”'˜$¥U¨4¡[¤[¸8Àqº=ÐIÑIÔIˆÝØØ˜$�<Ø�IØ3ð		
ñ 	
ô 	
ð 	
ð 	
ð 	
r;   c                 óD  — g d¢} d }d}t           j                             ddgdg|¬¦  «        }t          j        ddgdd	ggd
dgddggddgddgggt          j        ¬¦  «        }t          j        |||dk    ¬¦  «        }t          ||g|gd¬¦  «         t          j         	                    d¦  «         t          j         
                    dd| ¦  «                             t          j        ¦  «        }t          j        |||dk    ¬¦  «        }t          ||g|gd¬¦  «         d S )Nr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r   r!   Ú.test_reduce_prod_default_axes_keepdims_exampler$   r   r&   Ú-test_reduce_prod_default_axes_keepdims_random)r,   r-   r.   r)   r*   r/   r0   r   r2   r3   r4   r5   r6   s         r9   Úexport_default_axes_keepdimsz'ReduceProd.export_default_axes_keepdims\   sZ  € à�	�	ˆØˆØˆåŒ{×$Ò$Ø & °I°;Èð %ñ 
ô 
ˆõ ŒxØ�!ˆf�q˜!�fÐ  A ¨¨A¨Ð/°1°b°'¸BÀ¸8Ð1DÐEÍRÌZð
ñ 
ô 
ˆõ ”'˜$ T°HÀ²MÐBÑBÔBˆõ 	ØØ�6Ø�IØAð		
ñ 	
ô 	
ð 	
õ 	Œ	�Š�qÑÔÐÝŒy× Ò   b¨%Ñ0Ô0×7Ò7½¼
ÑCÔCˆÝ”'˜$ T°HÀ²MÐBÑBÔBˆÝØØ�6Ø�IØ@ð		
ñ 	
ô 	
ð 	
ð 	
ð 	
r;   c                 ó¼  — g d¢} t          j        dgt           j        ¬¦  «        }d}t          j                             dddgdg|¬	¦  «        }t          j        dd
gddggddgddggddgddgggt           j        ¬¦  «        }t          j        |t          |¦  «        |dk    ¬¦  «        }t          |||g|gd¬¦  «         t           j
                             d¦  «         t           j
                             dd| ¦  «                             t           j        ¦  «        }t          j        |t          |¦  «        |dk    ¬¦  «        }t          |||g|gd¬¦  «         d S )Nr   éþÿÿÿr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r    r!   Ú/test_reduce_prod_negative_axes_keepdims_exampler$   r   r&   Ú.test_reduce_prod_negative_axes_keepdims_randomr(   r6   s         r9   Úexport_negative_axes_keepdimsz(ReduceProd.export_negative_axes_keepdims~   sƒ  € à�	�	ˆÝŒx˜˜¥B¤HÐ-Ñ-Ô-ˆØˆåŒ{×$Ò$ØØ˜FÐ#Ø�KØð	 %ñ 
ô 
ˆõ ŒxØ�!ˆf�q˜!�fÐ  A ¨¨A¨Ð/°1°b°'¸BÀ¸8Ð1DÐEÍRÌZð
ñ 
ô 
ˆõ ”'˜$¥U¨4¡[¤[¸8Àqº=ÐIÑIÔIˆõ 	ØØ˜$�<Ø�IØBð		
ñ 	
ô 	
ð 	
õ 	Œ	�Š�qÑÔÐÝŒy× Ò   b¨%Ñ0Ô0×7Ò7½¼
ÑCÔCˆÝ”'˜$¥U¨4¡[¤[¸8Àqº=ÐIÑIÔIˆÝØØ˜$�<Ø�IØAð		
ñ 	
ô 	
ð 	
ð 	
ð 	
r;   c                 óž  — g d¢} d}g d¢}t           j                             dddgdg|¬¦  «        }t          j        g t          j        ¬	¦  «                             | ¦  «        }t          j        dgt          j        ¬	¦  «        }t          j        t          j        |t          j        ¬	¦  «        ¦  «        }t          |||g|gd
¬¦  «         d S )N)r   r   r   r   )r   r   r   r   r   r   r   r   r   Útest_reduce_prod_empty_setr$   )
r,   r-   r.   r)   r*   r/   Úreshaper+   Úonesr   )r7   r   Úreduced_shaper8   r   r   r   s          r9   Úexport_empty_setzReduceProd.export_empty_set¥   sÙ   € à�	�	ˆØˆØ!˜	˜	ˆåŒ{×$Ò$ØØ˜FÐ#Ø�KØð	 %ñ 
ô 
ˆõ Œx˜¥"¤*Ð-Ñ-Ô-×5Ò5°eÑ<Ô<ˆÝŒx˜˜¥2¤8Ð,Ñ,Ô,ˆÝ”(�2œ7 =½¼
ÐCÑCÔCÑDÔDˆåØØ˜$�<Ø�IØ-ð		
ñ 	
ô 	
ð 	
ð 	
ð 	
r;   N)r   r	   )	Ú__name__Ú
__module__Ú__qualname__Ústaticmethodr:   r?   rC   rH   rN   © r;   r9   r   r      s¶   € € € € € Øð$
ð $
ð $
ñ „\ð$
ðL ð$
ð $
ð $
ñ „\ð$
ðL ð
ð 
ð 
ñ „\ð
ðB ð$
ð $
ð $
ñ „\ð$
ðL ð
ð 
ð 
ñ „\ð
ð 
ð 
r;   r   )
Ú
__future__r   Únumpyr)   r,   Úonnx.backend.test.case.baser   Úonnx.backend.test.case.noder   r   rS   r;   r9   ú<module>rX      s�   ðð #Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð à €€€Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø .Ð .Ð .Ð .Ð .Ð .ðn
ð n
ð n
ð n
ð n
�ñ n
ô n
ð n
ð n
ð n
r;   