§
    1�Åj‰  ã                  ó\   — d dl mZ d dlZd dlZd dlmZ d dlmZ d„ Z	 G d„ de¦  «        Z
dS )é    )ÚannotationsN)ÚBase)Úexpectc                ój   — t           j                             d| ¬¦  «                             |¦  «        S )Né   )Úp)ÚnpÚrandomÚbinomialÚastype)ÚxÚdtypes     úVC:\Projects\Historical\venv\Lib\site-packages\onnx/backend/test/case/node/bernoulli.pyÚ"bernoulli_reference_implementationr      s-   € õ
 Œ9×Ò˜a 1ÐÑ%Ô%×,Ò,¨UÑ3Ô3Ð3ó    c                  óV   — e Zd Zedd„¦   «         Zedd„¦   «         Zedd„¦   «         ZdS )Ú	BernoulliÚreturnÚNonec                 ó  — t           j                             ddgdg¬¦  «        } t          j                             ddd¦  «                             t          ¦  «        }t          |t          ¦  «        }t          | |g|gd¬	¦  «         d S )
Nr   r   Úy)ÚinputsÚoutputsç        ç      ð?é
   Útest_bernoulli©r   r   Úname)
ÚonnxÚhelperÚ	make_noder	   r
   Úuniformr   Úfloatr   r   ©Únoder   r   s      r   Úexport_bernoulli_without_dtypez(Bernoulli.export_bernoulli_without_dtype   s…   € åŒ{×$Ò$ØØ�5Ø�Eð %ñ 
ô 
ˆõ ŒI×Ò˜c 3¨Ñ+Ô+×2Ò2µ5Ñ9Ô9ˆÝ.¨qµ%Ñ8Ô8ˆÝˆt˜Q˜C¨!¨Ð3CÐDÑDÔDÐDÐDÐDr   c                 ó>  — t           j                             ddgdgt           j        j        ¬¦  «        } t
          j                             ddd¦  «                             t
          j	        ¦  «        }t          |t          ¦  «        }t          | |g|gd¬	¦  «         d S )
Nr   r   r   )r   r   r   r   r   r   Útest_bernoulli_doubler   )r    r!   r"   ÚTensorProtoÚDOUBLEr	   r
   r#   r   Úfloat32r   r$   r   r%   s      r   Úexport_bernoulli_with_dtypez%Bernoulli.export_bernoulli_with_dtype"   s�   € åŒ{×$Ò$ØØ�5Ø�EÝÔ"Ô)ð	 %ñ 
ô 
ˆõ ŒI×Ò˜c 3¨Ñ+Ô+×2Ò2µ2´:Ñ>Ô>ˆÝ.¨qµ%Ñ8Ô8ˆÝˆt˜Q˜C¨!¨Ð3JÐKÑKÔKÐKÐKÐKr   c                 óH  — t          d¦  «        } t          j                             ddgdg| ¬¦  «        }t          j                             ddd¦  «                             t          j        ¦  «        }t          |t          j        ¦  «        }t          ||g|gd	¬
¦  «         d S )Nr   r   r   r   )r   r   Úseedr   r   r   Útest_bernoulli_seedr   )r$   r    r!   r"   r	   r
   r#   r   r,   r   r   )r/   r&   r   r   s       r   Úexport_bernoulli_with_seedz$Bernoulli.export_bernoulli_with_seed/   s—   € å�Q‰xŒxˆÝŒ{×$Ò$ØØ�5Ø�EØð	 %ñ 
ô 
ˆõ ŒI×Ò˜c 3¨Ñ+Ô+×2Ò2µ2´:Ñ>Ô>ˆÝ.¨qµ"´*Ñ=Ô=ˆÝˆt˜Q˜C¨!¨Ð3HÐIÑIÔIÐIÐIÐIr   N)r   r   )Ú__name__Ú
__module__Ú__qualname__Ústaticmethodr'   r-   r1   © r   r   r   r      s€   € € € € € Øð	Eð 	Eð 	Eñ „\ð	Eð ð
Lð 
Lð 
Lñ „\ð
Lð ðJð Jð Jñ „\ðJð Jð Jr   r   )Ú
__future__r   Únumpyr	   r    Úonnx.backend.test.case.baser   Úonnx.backend.test.case.noder   r   r   r6   r   r   ú<module>r;      sŸ   ðð #Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð à €€€Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø .Ð .Ð .Ð .Ð .Ð .ð4ð 4ð 4ð&Jð &Jð &Jð &Jð &J�ñ &Jô &Jð &Jð &Jð &Jr   