
    hI                     :    S SK rS SKJr  S SKJr   " S S\5      rg)    Ntensor_dtype_to_np_dtype)OpRunc                   T    \ rS rSrS r\S 5       r\SSS.S j5       r\S 5       rS	r	g)
_CommonRandom   c                     [         R                  " XU5        [        U S5      (       a=  [        U R                  5      S:X  a#  [        SU R                  R                   S35      eg g )Nshaper   z#shape cannot be empty for operator .)r   __init__hasattrlenr
   
ValueError	__class____name__)self	onnx_node
run_paramss      ^/var/www/fran/franai/venv/lib/python3.13/site-packages/onnx/reference/ops/_op_common_random.pyr   _CommonRandom.__init__   sX    t
34!!c$**o&:5dnn6M6M5NaP  ';!    c                     [        U 5      $ )Nr   )dtypes    r   
numpy_type_CommonRandom.numpy_type   s    '..r   NF)r   dtype_firstc           
         [         R                  U 5      nU(       aN  UbK  U S:w  a  U$ U(       a  US   R                  $ [        S[         R                  < SU S[        U5       S35      eS nU(       d  UnO)Ub  UnO#[        US   S5      (       a  US   R                  nUc  [        SU S[        US   5       S35      eU$ )	Nr   z+dtype cannot be None for a random operator z, numpy_type=z, len(data)=r   r   z!dtype cannot be None, numpy_type=z, type(data[0])=)r   r   r   RuntimeErrorr   r   r   type)r   r   datar   ress        r   _dtype_CommonRandom._dtype   s    "--e4
:1z!!Aw}}$=m>T>T=W X(\c$i[C  C#CT!Wg&&q'--C;3J<?OPTUYZ[U\P]^_`  
r   c                     U b  [         R                  " U 5      (       a   [         R                  R                  5       nU$ [         R                  R                  [	        U 5      S9nU$ )N)seed)npisnanrandomRandomStateint)r%   states     r   
_get_state_CommonRandom._get_state1   sN    <288D>>II))+E  II))s4y)9Er    )
r   
__module____qualname____firstlineno__r   staticmethodr   r"   r,   __static_attributes__r.   r   r   r   r      sH     / /  e  0  r   r   )numpyr&   onnx.helperr   onnx.reference.op_runr   r   r.   r   r   <module>r7      s     0 '+E +r   