
    AVhd                         d Z ddlZddlmZ ddlmZ ddlmZ ddlm	Z
 ddlmZ ddlmZ dd	lmZ dd
lmZ ddlmZ ddlmZ ddlmZ ddlmZ ddlmZm Z m!Z! ddl"m#Z#  ed Z$ ed Z%ejL                  dfde#e!e%f   de$de#e!e$f   fdZ'  ed       ejP                  e'            Z)de#e!e%f   de$de#e!e$f   fdZ*dPde#e!ejV                  f   de#e!ejX                  f   de#e!ejZ                  f   de#e!ej\                  f   fdZ/  ed       ejP                  e/            Z0de#e!ejV                  f   de#e!ejX                  f   de#e!ejZ                  f   de#e!ej\                  f   fdZ1dPde#e!ejV                  f   de#e!ej\                  f   de#e!ej\                  f   fd Z2  ed!       ejP                  e2            Z3de#e!ejV                  f   de#e!ej\                  f   de#e!ej\                  f   fd"Z4 ed#d$d%      Z5 ed&d'd(d)d$d%      Z6 ed*d'd(d)d$d%      Z7ejL                  dfde#e!ejV                  f   de#e!ej\                  f   de#e!e5f   d+e#e!e6f   d,e#e!e6f   de7de#e!e7f   fd-Z8  ed.       ejP                  e8            Z9de#e!ejV                  f   de#e!ej\                  f   de#e!e5f   d+e#e!e6f   d,e#e!e6f   de7de#e!e7f   fd/Z: ed0 Z; ed1 Z<ejz                  dfde#e!ejV                  f   de#e!e<f   de;de#e!e;f   fd2Z>  ed3       ejP                  e>            Z?de#e!ejV                  f   de#e!e<f   de;de#e!e;f   fd4Z@ ed5 ZA ed6 ZBejz                  dfde#e!ejV                  f   de#e!ej\                  f   de#e!eBf   deAde#e!eAf   f
d7ZC  ed8       ejP                  eC            ZDde#e!ejV                  f   de#e!ej\                  f   de#e!eBf   deAde#e!eAf   f
d9ZE ed: ZF ed; ZGejz                  dfde#e!ejV                  f   de#e!ej\                  f   de#e!eGf   deFde#e!eFf   f
d<ZH  ed=       ejP                  eH            ZIde#e!ejV                  f   de#e!ej\                  f   de#e!eGf   deFde#e!eFf   f
d>ZJ ed? ZK ed@ ZLejz                  dfde#e!ejV                  f   de#e!ej\                  f   de#e!eLf   deKde#e!eKf   f
dAZM  edB       ejP                  eM            ZNde#e!ejV                  f   de#e!ej\                  f   de#e!eLf   deKde#e!eKf   f
dCZO edD ZP edE ZQej                  dfde#e!ejV                  f   de#e!ej\                  f   de#e!eQf   dePde#e!ePf   f
dFZS  edG       ejP                  eS            ZTde#e!ejV                  f   de#e!ej\                  f   de#e!eQf   dePde#e!ePf   f
dHZU edI ZV edJ ZWdPde#e!ejV                  f   de#e!ej\                  f   de#e!eWf   dKe#e!eVf   dLe#e!eVf   de#e!eVf   fdMZX  edN       ejP                  eX            ZYde#e!ejV                  f   de#e!ej\                  f   de#e!eWf   dKe#e!eVf   dLe#e!eVf   de#e!eVf   fdOZZy)QzUPython wrappers around TensorFlow ops.

This file is MACHINE GENERATED! Do not edit.
    N)
pywrap_tfe)context)core)execute)dtypes)annotation_types)op_def_registry)ops)op_def_library)deprecated_endpoints)dispatch)	tf_export)TypeVarListAny)	Annotated) TV_NonDeterministicInts_dtype_atypes.BFloat16_atypes.Bool_atypes.Complex128_atypes.Complex64_atypes.Float16_atypes.Float32_atypes.Float64_atypes.Float8e4m3b11fnuz_atypes.Float8e4m3fn_atypes.Float8e4m3fnuz_atypes.Float8e5m2_atypes.Float8e5m2fnuz_atypes.Half_atypes.Int16_atypes.Int32_atypes.Int4_atypes.Int64_atypes.Int8_atypes.QInt16_atypes.QInt32_atypes.QInt8_atypes.QUInt16_atypes.QUInt8_atypes.Resource_atypes.String_atypes.UInt16_atypes.UInt32_atypes.UInt4_atypes.UInt64_atypes.UInt8_atypes.Variant) #TV_NonDeterministicInts_shape_dtyper   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   shapedtypereturnc                    t         j                   xs t        j                         }|j                  }|j                  r	 t	        j
                  |d|| d|      }|S |t        j                  }t        j                   |d      }t#        j$                  d| ||      \  }}}}	|	dd }t        j&                         rHd|j)                  d      d|j)                  d      f}
|j*                  }t        j,                  d||
|       |\  }|S # t        j                  $ r }t        j                  ||       Y d}~nd}~wt        j                  $ r Y nw xY w	 t        | |||      S # t        j                  $ r Y w xY w)a  Non-deterministically generates some integers.

  This op may use some OS-provided source of non-determinism (e.g. an RNG), so each execution will give different results.

  Args:
    shape: A `Tensor`. The shape of the output tensor.
    dtype: An optional `tf.DType`. Defaults to `tf.int64`.
      The type of the output.
    name: A name for the operation (optional).

  Returns:
    A `Tensor` of type `dtype`.
  NonDeterministicIntsr5   Nr5   namectx)r4   r5   r:   shape_dtype)_contextr   _thread_local_datais_eagerr   TFE_Py_FastPathExecute_core_NotOkStatusException_opsraise_from_not_ok_status_FallbackException%non_deterministic_ints_eager_fallback_SymbolicException_dtypesint64_execute	make_type_op_def_library_apply_op_helpermust_record_gradient_get_attr_typeinputsrecord_gradient)r4   r5   r:   _ctxtld_resulte__op_outputs_attrs_inputs_flats               ]/home/dcms/DCMS/lib/python3.12/site-packages/tensorflow/python/ops/gen_stateful_random_ops.pynon_deterministic_intsr\      st    
			0h..0$#\\11$dE7ECgn ]MME


UG
,%'88e5tE!QXQK'""$s))'2M  /1F::Lfg?('	./ && -
##At,,## 
2
u4T3 3## 
s0    D	 	ED77EEE# #E:9E:zraw_ops.NonDeterministicIntsc                 V   |t         j                  }t        j                  |d      }t        j                  | g|g t         j                        \  }\  } | g}d|d|f}t        j
                  dd||||      }t        j                         rt        j                  d|||       |\  }|S )Nr5   r<   s   NonDeterministicInts   rP   attrsr;   r:   r8   )rH   rI   rJ   rK   args_to_matching_eagerr   rN   rQ   )r4   r5   r:   r;   _attr_shape_dtyperZ   rY   rT   s           r[   rF   rF   M   s    
]MME


UG
,% ( ? ?bRYR_R_ `Xe,UM+<=&4a#)s?'""$fg?('	.    resourcealgdeltac                 h   t         j                   xs t        j                         }|j                  }|j                  r	 t	        j
                  |d|| ||      }|S t        j                  d| |||      \  }}}	}
|
dd }t        j                          r&d}|	j"                  }t        j$                  d|||       |\  }|S # t        j                  $ r }t        j                  ||       Y d}~nd}~wt        j                  $ r Y nw xY w	 t        | ||||      S # t        j                  $ r Y w xY w)a  Advance the counter of a counter-based RNG.

  The state of the RNG after
  `rng_read_and_skip(n)` will be the same as that after `uniform([n])`
  (or any other distribution). The actual increment added to the
  counter is an unspecified implementation choice.

  In the case that the input algorithm is RNG_ALG_AUTO_SELECT, the counter in the state needs to be of size int64[2], the current maximal counter size among algorithms. In this case, this op will manage the counter as if it is an 128-bit integer with layout [lower_64bits, higher_64bits]. If an algorithm needs less than 128 bits for the counter, it should use the left portion of the int64[2]. In this way, the int64[2] is compatible with all current RNG algorithms (Philox, ThreeFry and xla::RandomAlgorithm::RNG_DEFAULT). Downstream RNG ops can thus use this counter with any RNG algorithm.

  Args:
    resource: A `Tensor` of type `resource`.
      The handle of the resource variable that stores the state of the RNG. The state consists of the counter followed by the key.
    alg: A `Tensor` of type `int32`. The RNG algorithm.
    delta: A `Tensor` of type `uint64`. The amount of advancement.
    name: A name for the operation (optional).

  Returns:
    A `Tensor` of type `int64`.
  RngReadAndSkipNr:   r;   )rd   re   rf   r:    )r=   r   r>   r?   r   r@   rA   rB   rC   rD   rE    rng_read_and_skip_eager_fallbackrG   rL   rM   rJ   rN   rP   rQ   )rd   re   rf   r:   rR   rS   rT   rU   rV   rW   rX   rY   rZ   s                r[   rng_read_and_skiprl   ]   s5   ( 
			0h..0$#\\11hU<gn (888EN!QXQK'""$F::L,9('	.' && -
##At,,## 
-
CTt5 5## 
s0    C   DC..DDD D10D1zraw_ops.RngReadAndSkipc                    t        j                  | t        j                        } t        j                  |t        j                        }t        j                  |t        j
                        }| ||g}d }t        j                  dd||||      }t        j                         rt        j                  d|||       |\  }|S )Ns   RngReadAndSkipr^   r_   rh   )
rC   convert_to_tensorrH   rd   int32uint64rJ   r   rN   rQ   )rd   re   rf   r:   r;   rZ   rY   rT   s           r[   rk   rk      s    ##Hg.>.>?(sGMM2#

 
 
7%C',&.,#)s?'""$,9('	.rc   	algorithmc                    t         j                   xs t        j                         }|j                  }|j                  r	 t	        j
                  |d|| ||      }|S t        j                  d| |||      \  }}}	}
|	S # t        j                  $ r }t        j                  ||       Y d}~nd}~wt        j                  $ r Y nw xY w	 t        | ||||      S # t        j                  $ r Y w xY w)a_  Advance the counter of a counter-based RNG.

  The state of the RNG after
  `rng_skip(n)` will be the same as that after `stateful_uniform([n])`
  (or any other distribution). The actual increment added to the
  counter is an unspecified implementation detail.

  Args:
    resource: A `Tensor` of type `resource`.
      The handle of the resource variable that stores the state of the RNG.
    algorithm: A `Tensor` of type `int64`. The RNG algorithm.
    delta: A `Tensor` of type `int64`. The amount of advancement.
    name: A name for the operation (optional).

  Returns:
    The created Operation.
  RngSkipNri   )rd   rq   rf   r:   )r=   r   r>   r?   r   r@   rA   rB   rC   rD   rE   rng_skip_eager_fallbackrG   rL   rM   )rd   rq   rf   r:   rR   rS   rT   rU   rV   rW   rX   s              r[   rng_skipru      s    $ 
			0h..0$#\\11ixE;gn (88H	!QX 
* && -
##At,,## 
$
Iu4T; ;## 
s0    A= =CB++CCC C.-C.zraw_ops.RngSkipc                 &   t        j                  | t        j                        } t        j                  |t        j                        }t        j                  |t        j                        }| ||g}d }t        j                  dd||||      }d }|S )Ns   RngSkipr   r_   )rC   rn   rH   rd   rI   rJ   r   )rd   rq   rf   r:   r;   rZ   rY   rT   s           r[   rt   rt      s~    ##Hg.>.>?($$Y>)

 
 
6%Iu-,&Z<v!$41''	.rc   TV_StatefulRandomBinomial_Sr"   r$   TV_StatefulRandomBinomial_Tr   r   r    TV_StatefulRandomBinomial_dtypecountsprobsc                 4   t         j                   xs t        j                         }|j                  }|j                  r!	 t	        j
                  |d|| ||||d|
      }	|	S |t        j                  }t        j                   |d      }t#        j$                  d| ||||||      \  }}}}|dd }	t        j&                         rYd|j)                  d      d|j)                  d      d|j)                  d      f}|j*                  }t        j,                  d|||	       |	\  }	|	S # t        j                  $ r }
t        j                  |
|       Y d}
~
nd}
~
wt        j                  $ r Y nw xY w	 t        | |||||||      S # t        j                  $ r Y 6w xY w)a9  TODO: add doc.

  Args:
    resource: A `Tensor` of type `resource`.
    algorithm: A `Tensor` of type `int64`.
    shape: A `Tensor`. Must be one of the following types: `int32`, `int64`.
    counts: A `Tensor`. Must be one of the following types: `half`, `float32`, `float64`, `int32`, `int64`.
    probs: A `Tensor`. Must have the same type as `counts`.
    dtype: An optional `tf.DType` from: `tf.half, tf.float32, tf.float64, tf.int32, tf.int64`. Defaults to `tf.int64`.
    name: A name for the operation (optional).

  Returns:
    A `Tensor` of type `dtype`.
  StatefulRandomBinomialr5   Nr9   )rd   rq   r4   rz   r{   r5   r:   ST)r=   r   r>   r?   r   r@   rA   rB   rC   rD   rE   'stateful_random_binomial_eager_fallbackrG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   )rd   rq   r4   rz   r{   r5   r:   rR   rS   rT   rU   rV   rW   rX   rY   rZ   s                   r[   stateful_random_binomialr      s    
			0h..0$#\\11&h	5w'g n ]MME


UG
,%'88 8y(-fE(-D:!QX QK'""$3%%c*C1C1CC1Hs))'24F::L ,A('	.5 && -
##At,,## 
4
Iufe5t  ## 
s0    D" "E)5EE)(E)-F   FFzraw_ops.StatefulRandomBinomialc           	         |t         j                  }t        j                  |d      }t        j                  |g|t         j
                  t         j                  g      \  }\  }t        j                  ||g|t         j                  t         j                  t         j                  t         j
                  t         j                  gt         j                        \  }	}
|
\  }}t        j                  | t         j                        } t        j                  |t         j                        }| ||||g}d|d|	d|f}t        j                  dd||||      }t        j                         rt        j                  d|||       |\  }|S )Nr5   r~   r   s   StatefulRandomBinomialr^   r_   r}   )rH   rI   rJ   rK   ra   ro   halffloat32float64rC   rn   rd   r   rN   rQ   )rd   rq   r4   rz   r{   r5   r:   r;   _attr_S_attr_T	_inputs_TrZ   rY   rT   s                 r[   r   r     su   
]MME


UG
,%55ugsW]]T[TaTaDde'8E66gll\c\k\kmtm|m|  F  L  L  NU  N[  N[  N^  `g  `o  `o  p'9/65##Hg.>.>?($$Y>)Iufe<,#w7&6$0C"&(' ""$ ,A('	.rc   ) TV_StatefulStandardNormal_dtyper   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   ) %TV_StatefulStandardNormal_shape_dtyper   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   c           	          t         j                   xs t        j                         }|j                  }|j                  r	 t	        j
                  |d|| |d|      }|S |t        j                  }t        j                   |d      }t#        j$                  d| |||      \  }}}	}
|
dd }t        j&                         rHd|	j)                  d      d|	j)                  d      f}|	j*                  }t        j,                  d|||       |\  }|S # t        j                  $ r }t        j                  ||       Y d}~nd}~wt        j                  $ r Y nw xY w	 t        | ||||      S # t        j                  $ r Y w xY w)a&  Outputs random values from a normal distribution. This op is deprecated in favor of op 'StatefulStandardNormalV2'

  The generated values will have mean 0 and standard deviation 1.

  Args:
    resource: A `Tensor` of type `resource`.
      The handle of the resource variable that stores the state of the RNG.
    shape: A `Tensor`. The shape of the output tensor.
    dtype: An optional `tf.DType`. Defaults to `tf.float32`.
      The type of the output.
    name: A name for the operation (optional).

  Returns:
    A `Tensor` of type `dtype`.
  StatefulStandardNormalr5   Nr9   )rd   r4   r5   r:   r<   )r=   r   r>   r?   r   r@   rA   rB   rC   rD   rE   'stateful_standard_normal_eager_fallbackrG   rH   r   rJ   rK   rL   rM   rN   rO   rP   rQ   )rd   r4   r5   r:   rR   rS   rT   rU   rV   rW   rX   rY   rZ   s                r[   stateful_standard_normalr   '  s}     
			0h..0$#\\11&hwOgn ]OOE


UG
,%'88 85'+-!QX QK'""$s))'2M  /1F::L ,A('	.1 && -
##At,,## 
4
ETt= =## 
s0    D ED99EEE& &E=<E=zraw_ops.StatefulStandardNormalc                    |t         j                  }t        j                  |d      }t        j                  |g|g t         j
                        \  }\  }t        j                  | t         j                        } | |g}d|d|f}t        j                  dd||||      }t        j                         rt        j                  d|||       |\  }|S )Nr5   r<   s   StatefulStandardNormalr^   r_   r   rH   r   rJ   rK   ra   rI   rC   rn   rd   r   rN   rQ   )	rd   r4   r5   r:   r;   rb   rZ   rY   rT   s	            r[   r   r   [  s    
]OOE


UG
,% ( ? ?bRYR_R_ `Xe##Hg.>.>?(E",UM+<=&6$0C"&(' ""$ ,A('	.rc   ) !TV_StatefulStandardNormalV2_dtyper   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   ) 'TV_StatefulStandardNormalV2_shape_dtyper   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   c           
         t         j                   xs t        j                         }|j                  }|j                  r	 t	        j
                  |d|| ||d|      }|S |t        j                  }t        j                   |d      }t#        j$                  d| ||||      \  }	}	}
}|dd }t        j&                         rHd|
j)                  d      d|
j)                  d      f}|
j*                  }t        j,                  d|||       |\  }|S # t        j                  $ r }t        j                  ||       Y d}~nd}~wt        j                  $ r Y nw xY w	 t        | |||||      S # t        j                  $ r Y !w xY w)a$  Outputs random values from a normal distribution.

  The generated values will have mean 0 and standard deviation 1.

  Args:
    resource: A `Tensor` of type `resource`.
      The handle of the resource variable that stores the state of the RNG.
    algorithm: A `Tensor` of type `int64`. The RNG algorithm.
    shape: A `Tensor`. The shape of the output tensor.
    dtype: An optional `tf.DType`. Defaults to `tf.float32`.
      The type of the output.
    name: A name for the operation (optional).

  Returns:
    A `Tensor` of type `dtype`.
  StatefulStandardNormalV2r5   Nr9   rd   rq   r4   r5   r:   r<   )r=   r   r>   r?   r   r@   rA   rB   rC   rD   rE   *stateful_standard_normal_v2_eager_fallbackrG   rH   r   rJ   rK   rL   rM   rN   rO   rP   rQ   rd   rq   r4   r5   r:   rR   rS   rT   rU   rV   rW   rX   rY   rZ   s                 r[   stateful_standard_normal_v2r   p  s   " 
			0h..0$#\\11($)Ug n ]OOE


UG
,%'88"X*/u4I!QX QK'""$s))'2M  /1F::L"L&'C('	.1 && -
##At,,## 
7
IuE$H H## 
0    D E D;;EEE) )F ?F z raw_ops.StatefulStandardNormalV2c                    |t         j                  }t        j                  |d      }t        j                  |g|g t         j
                        \  }\  }t        j                  | t         j                        } t        j                  |t         j
                        }| ||g}d|d|f}t        j                  dd||||      }	t        j                         rt        j                  d|||	       |	\  }	|	S )Nr5   r<   s   StatefulStandardNormalV2r^   r_   r   r   
rd   rq   r4   r5   r:   r;   rb   rZ   rY   rT   s
             r[   r   r     s    
]OOE


UG
,% ( ? ?bRYR_R_ `Xe##Hg.>.>?($$Y>)Iu-,UM+<=&8!$0C"&(' ""$"L&'C('	.rc   )  TV_StatefulTruncatedNormal_dtyper   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   ) &TV_StatefulTruncatedNormal_shape_dtyper   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   c           
         t         j                   xs t        j                         }|j                  }|j                  r	 t	        j
                  |d|| ||d|      }|S |t        j                  }t        j                   |d      }t#        j$                  d| ||||      \  }	}	}
}|dd }t        j&                         rHd|
j)                  d      d|
j)                  d      f}|
j*                  }t        j,                  d|||       |\  }|S # t        j                  $ r }t        j                  ||       Y d}~nd}~wt        j                  $ r Y nw xY w	 t        | |||||      S # t        j                  $ r Y !w xY w)a  Outputs random values from a truncated normal distribution.

  The generated values follow a normal distribution with mean 0 and standard
  deviation 1, except that values whose magnitude is more than 2 standard
  deviations from the mean are dropped and re-picked.

  Args:
    resource: A `Tensor` of type `resource`.
      The handle of the resource variable that stores the state of the RNG.
    algorithm: A `Tensor` of type `int64`. The RNG algorithm.
    shape: A `Tensor`. The shape of the output tensor.
    dtype: An optional `tf.DType`. Defaults to `tf.float32`.
      The type of the output.
    name: A name for the operation (optional).

  Returns:
    A `Tensor` of type `dtype`.
  StatefulTruncatedNormalr5   Nr9   r   r<   )r=   r   r>   r?   r   r@   rA   rB   rC   rD   rE   (stateful_truncated_normal_eager_fallbackrG   rH   r   rJ   rK   rL   rM   rN   rO   rP   rQ   r   s                 r[   stateful_truncated_normalr     s   & 
			0h..0$#\\11'xEg n ]OOE


UG
,%'88!H	).e$H!QX QK'""$s))'2M  /1F::L!<B('	.1 && -
##At,,## 
5
IuE$H H## 
r   zraw_ops.StatefulTruncatedNormalc                    |t         j                  }t        j                  |d      }t        j                  |g|g t         j
                        \  }\  }t        j                  | t         j                        } t        j                  |t         j
                        }| ||g}d|d|f}t        j                  dd||||      }	t        j                         rt        j                  d|||	       |	\  }	|	S )Nr5   r<   s   StatefulTruncatedNormalr^   r_   r   r   r   s
             r[   r   r     s    
]OOE


UG
,% ( ? ?bRYR_R_ `Xe##Hg.>.>?($$Y>)Iu-,UM+<=&7$0C"&(' ""$!<B('	.rc   ) TV_StatefulUniform_dtyper   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   ) TV_StatefulUniform_shape_dtyper   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   c           
         t         j                   xs t        j                         }|j                  }|j                  r	 t	        j
                  |d|| ||d|      }|S |t        j                  }t        j                   |d      }t#        j$                  d| ||||      \  }	}	}
}|dd }t        j&                         rHd|
j)                  d      d|
j)                  d      f}|
j*                  }t        j,                  d|||       |\  }|S # t        j                  $ r }t        j                  ||       Y d}~nd}~wt        j                  $ r Y nw xY w	 t        | |||||      S # t        j                  $ r Y !w xY w)a  Outputs random values from a uniform distribution.

  The generated values follow a uniform distribution in the range `[0, 1)`. The
  lower bound 0 is included in the range, while the upper bound 1 is excluded.

  Args:
    resource: A `Tensor` of type `resource`.
      The handle of the resource variable that stores the state of the RNG.
    algorithm: A `Tensor` of type `int64`. The RNG algorithm.
    shape: A `Tensor`. The shape of the output tensor.
    dtype: An optional `tf.DType`. Defaults to `tf.float32`.
      The type of the output.
    name: A name for the operation (optional).

  Returns:
    A `Tensor` of type `dtype`.
  StatefulUniformr5   Nr9   r   r<   )r=   r   r>   r?   r   r@   rA   rB   rC   rD   rE   stateful_uniform_eager_fallbackrG   rH   r   rJ   rK   rL   rM   rN   rO   rP   rQ   r   s                 r[   stateful_uniformr   
  s   $ 
			0h..0$#\\11xE7g n ]OOE


UG
,%'88H	!&e$@!QX QK'""$s))'2M  /1F::L<:('	.1 && -
##At,,## 
,
IuE$H H## 
r   zraw_ops.StatefulUniformc                    |t         j                  }t        j                  |d      }t        j                  |g|g t         j
                        \  }\  }t        j                  | t         j                        } t        j                  |t         j
                        }| ||g}d|d|f}t        j                  dd||||      }	t        j                         rt        j                  d|||	       |	\  }	|	S )Nr5   r<   s   StatefulUniformr^   r_   r   r   r   s
             r[   r   r   A  s    
]OOE


UG
,% ( ? ?bRYR_R_ `Xe##Hg.>.>?($$Y>)Iu-,UM+<=&/<#)s?'""$<:('	.rc   ) TV_StatefulUniformFullInt_dtyper   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   ) %TV_StatefulUniformFullInt_shape_dtyper   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   c           
         t         j                   xs t        j                         }|j                  }|j                  r	 t	        j
                  |d|| ||d|      }|S |t        j                  }t        j                   |d      }t#        j$                  d| ||||      \  }	}	}
}|dd }t        j&                         rHd|
j)                  d      d|
j)                  d      f}|
j*                  }t        j,                  d|||       |\  }|S # t        j                  $ r }t        j                  ||       Y d}~nd}~wt        j                  $ r Y nw xY w	 t        | |||||      S # t        j                  $ r Y !w xY w)a5  Outputs random integers from a uniform distribution.

  The generated values are uniform integers covering the whole range of `dtype`.

  Args:
    resource: A `Tensor` of type `resource`.
      The handle of the resource variable that stores the state of the RNG.
    algorithm: A `Tensor` of type `int64`. The RNG algorithm.
    shape: A `Tensor`. The shape of the output tensor.
    dtype: An optional `tf.DType`. Defaults to `tf.uint64`.
      The type of the output.
    name: A name for the operation (optional).

  Returns:
    A `Tensor` of type `dtype`.
  StatefulUniformFullIntr5   Nr9   r   r<   )r=   r   r>   r?   r   r@   rA   rB   rC   rD   rE   (stateful_uniform_full_int_eager_fallbackrG   rH   rp   rJ   rK   rL   rM   rN   rO   rP   rQ   r   s                 r[   stateful_uniform_full_intr   V  s   " 
			0h..0$#\\11&h	5g n ]NNE


UG
,%'88 8y(-UG!QX QK'""$s))'2M  /1F::L ,A('	.1 && -
##At,,## 
5
IuE$H H## 
r   zraw_ops.StatefulUniformFullIntc                    |t         j                  }t        j                  |d      }t        j                  |g|g t         j
                        \  }\  }t        j                  | t         j                        } t        j                  |t         j
                        }| ||g}d|d|f}t        j                  dd||||      }	t        j                         rt        j                  d|||	       |	\  }	|	S )Nr5   r<   s   StatefulUniformFullIntr^   r_   r   )rH   rp   rJ   rK   ra   rI   rC   rn   rd   r   rN   rQ   r   s
             r[   r   r     s    
]NNE


UG
,% ( ? ?bRYR_R_ `Xe##Hg.>.>?($$Y>)Iu-,UM+<=&6$0C"&(' ""$ ,A('	.rc   ) TV_StatefulUniformInt_dtyper   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   ) !TV_StatefulUniformInt_shape_dtyper   r   r   r   r   r   r   r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   minvalmaxvalc           
         t         j                   xs t        j                         }|j                  }|j                  r	 t	        j
                  |d|| ||||      }|S t        j                  d| |||||      \  }
}
}}|dd }t        j                          rHd|j#                  d      d|j#                  d      f}|j$                  }t        j&                  d|||       |\  }|S # t        j                  $ r }	t        j                  |	|       Y d}	~	nd}	~	wt        j                  $ r Y nw xY w	 t        | ||||||      S # t        j                  $ r Y w xY w)a  Outputs random integers from a uniform distribution.

  The generated values are uniform integers in the range `[minval, maxval)`.
  The lower bound `minval` is included in the range, while the upper bound
  `maxval` is excluded.

  The random integers are slightly biased unless `maxval - minval` is an exact
  power of two.  The bias is small for values of `maxval - minval` significantly
  smaller than the range of the output (either `2^32` or `2^64`).

  Args:
    resource: A `Tensor` of type `resource`.
      The handle of the resource variable that stores the state of the RNG.
    algorithm: A `Tensor` of type `int64`. The RNG algorithm.
    shape: A `Tensor`. The shape of the output tensor.
    minval: A `Tensor`. Minimum value (inclusive, scalar).
    maxval: A `Tensor`. Must have the same type as `minval`.
      Maximum value (exclusive, scalar).
    name: A name for the operation (optional).

  Returns:
    A `Tensor`. Has the same type as `minval`.
  StatefulUniformIntNri   )rd   rq   r4   r   r   r:   r5   r<   )r=   r   r>   r?   r   r@   rA   rB   rC   rD   rE   #stateful_uniform_int_eager_fallbackrG   rL   rM   rJ   rN   rO   rP   rQ   )rd   rq   r4   r   r   r:   rR   rS   rT   rU   rV   rW   rX   rY   rZ   s                  r[   stateful_uniform_intr     sk   0 
			0h..0$#\\11"D(Iufg n (88x9$)&#')!QX QK'""$s))'2M  /1F::LlFG=('	.- && -
##At,,## 
0
Iuff4TK K## 
s0    C& &D-9DD-,D-1E EEzraw_ops.StatefulUniformIntc                    t        j                  ||g|g t        j                        \  }}|\  }}t        j                  |g|g t        j                        \  }	\  }t	        j
                  | t        j                        } t	        j
                  |t        j                        }| ||||g}
d|d|	f}t        j                  dd|
|||      }t        j                         rt        j                  d|
||       |\  }|S )Nr5   r<   s   StatefulUniformIntr^   r_   r   )
rJ   ra   rH   rI   rC   rn   rd   r   rN   rQ   )rd   rq   r4   r   r   r:   r;   _attr_dtype_inputs_dtyperb   rZ   rY   rT   s                r[   r   r     s    '>>?OQTVXZaZgZgh+}"66 ( ? ?bRYR_R_ `Xe##Hg.>.>?($$Y>)Iuff=,[-1BC&2Al#)s?'""$lFG=('	.rc   )N)[__doc__collectionstensorflow.pythonr   tensorflow.python.eagerr   r=   r   rA   r   rJ   tensorflow.python.frameworkr   rH   tensorflow.security.fuzzing.pyr   _atypesr	   _op_def_registryr
   rC   r   rL   "tensorflow.python.util.deprecationr   tensorflow.python.utilr   	_dispatch tensorflow.python.util.tf_exportr   typingr   r   r   typing_extensionsr   r   r3   rI   r\   	to_raw_opr8   rF   ResourceInt32UInt64Int64rl   rh   rk   ru   rs   rt   rw   rx   ry   r   r}   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rp   r   r   r   r   r   r   r   r   rj   rc   r[   <module>r      s  
  6 7 1 7 9 F K 3 I C 8 6 % % ' '  !^
 &-  'j
 # |C  |I  |I  PT ,)C1T,T"U ,]z ,  Yb  cf  hE  cE  YF ,\ Ay!?@PfAgh 3@c;c1d   nK   [d  eh  jG  eG  [H  .	#w/?/?*? @ .yQTV]VcVcQcGd .mvwz  }D  }K  }K  xK  nL .  \e  fi  kr  kx  kx  fx  \y .` 534^T^^DU5VWyg>N>N9N/O V_`celerer`rVs   }F  GJ  LS  LZ  LZ  GZ  }[   kt  ux  zA  zG  zG  uG  kH &yg&6&6!67 &IcSZS`S`N`Da &jstw  zA  zG  zG  uG  kH &N ')%
&~t~~h'?
@	iW5E5E0E&F 	S\]`bibobo]oSp 	  zC  DG  IP  IV  IV  DV  zW 	 &&C_Vef %&CEVXiky  |K  M\  ] ")*KM^`q  tB  DS  Ud  #e  w~  wD  wD  KO 1yg6F6F1F'G 1T]^acjcpcp^pTq 1  {D  EH  Je  Ee  {f 1  py  z}  Z  zZ  p[ 1  dm  nq  sN  nN  dO 1  Wv 1  T]  ^a  cB  ^B  TC 1f E#CD^T^^TlEmn iWEUEU@U6V clmpryrrm  dA   JS  TW  Yt  Tt  Ju   H  IL  Ni  Ii  j   s|  }@  B]  }]  s^   gF   V_  `c  eD  `D  VE * #*  #b
 (/  )n
 % nu  n}  n}  DH /yg6F6F1F'G /PYZ]  `E  [E  QF /  Nm /  MV  WZ  \{  W{  M| /b E#CD^T^^TlEmn iWEUEU@U6V _hil  oT  jT  `U   ^}   MV  WZ  \{  W{  M| $ %,  %f
 !*1  +r
 ' _f  _n  _n  uy 1)C9I9I4I*J 1W`adfmfsfsasWt 1  ~G  HK  Mt  Ht  ~u 1  }^ 1  ~G  HK  Mn  Hn  ~o 1f I9%GHXsItu 3HXHXCX9Y fopsu|  vC  vC  qC  gD   MV  WZ  \C  WC  MD   Mn   ~G  HK  Mn  Hn  ~o & $+  $d
  )0  *p
 & [b  [j  [j  qu 3	#w7G7G2G(H 3U^_bdkdqdq_qUr 3  |E  FI  Kq  Fq  |r 3  zZ 3  zC  DG  Ii  Di  zj 3j G)$EF~t~~VoGpq ygFVFVAV7W dmnqsz  tA  tA  oA  eB   KT  UX  Z@  U@  KA   Jj   zC  DG  Ii  Di  zj & #  T
 !(  "`
  BI  BQ  BQ  X\ 2yg.>.>)>? 2IVY[b[h[hVhLi 2r{|  B`  }`  sa 2  iA 2  aj  kn  pH  kH  aI 2h 7)56~t~~FV7WXiW=M=M8M.N [dehjqjwjwew[x   BK  LO  Qo  Lo  Bp   yQ   aj  kn  pH  kH  aI $ #*  #b
 (/  )n
 % Y`  Yg  Yg  nr 1	#w7G7G2G(H 1U^_bdkdqdq_qUr 1  |E  FI  Kp  Fp  |q 1  yX 1  w@  AD  Fe  Ae  wf 1f E#CD^T^^TmEno ygFVFVAV7W dmnqsz  tA  tA  oA  eB   KT  UX  Z  U  K@   Ih   xA  BE  Gf  Bf  xg & &  Z
 $+  %f
 !69S'2B2B-B#C 6PYZ]_f_l_lZlPm 6v  AD  Fg  Ag  wh 6  r{  |  A\  |\  r] 6  gp  qt  vQ  qQ  gR 6  bk  lo  qL  lL  bM 6p =Y;<^T^^L`=ab )CAQAQ<Q2R _hilnun{n{i{_|   FO  PS  Uv  Pv  Fw   AJ  KN  Pk  Kk  Al   v  @C  E`  @`  va   qz  {~  @[  {[  q\ rc   