
    AVh                        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dddddddddddd      Z$ eddd      Z% eddd      Z&ejN                  dfd e#e!e$f   d!e#e!ejP                  f   d"e#e!e%f   d#e&d$e#e!e&f   f
d%Z)  ed&       ejT                  e)            Z+d e#e!e$f   d!e#e!ejP                  f   d"e#e!e%f   d#e&d$e#e!e&f   f
d'Z, ed(dd      Z- ed)dd      Z. ed*ddd      Z/dld+e#e!e-f   d"e#e!e.f   d,e#e!e/f   d-e#e!e/f   d.e#e!e/f   d/e#e!e/f   d$e#e!e/f   fd0Z0  ed1       ejT                  e0            Z1d+e#e!e-f   d"e#e!e.f   d,e#e!e/f   d-e#e!e/f   d.e#e!e/f   d/e#e!e/f   d$e#e!e/f   fd2Z2 ed3dd      Z3 ed4dd      Z4 ed5ddddd      Z5 ed6ddddd      Z6ejN                  dfd+e#e!e3f   d"e#e!e4f   d7e#e!e5f   d8e#e!e5f   d9e6d$e#e!e6f   fd:Z7  ed;       ejT                  e7            Z8d+e#e!e3f   d"e#e!e4f   d7e#e!e5f   d8e#e!e5f   d9e6d$e#e!e6f   fd<Z9 ed=ddd      Z: ed>dd      Z; ed?dd      Z<dld+e#e!e;f   d"e#e!e<f   d@e#e!e:f   d$e#e!e:f   fdAZ=  edB       ejT                  e=            Z>d+e#e!e;f   d"e#e!e<f   d@e#e!e:f   d$e#e!e:f   fdCZ? edDdddd      Z@ edEdd      ZA edFdd      ZBej                  dfd+e#e!eAf   d"e#e!eBf   d9e@d$e#e!e@f   fdGZD  edH       ejT                  eD            ZEd+e#e!eAf   d"e#e!eBf   d9e@d$e#e!e@f   fdIZF edJddddd      ZG edKddddd      ZH edLdd      ZI edMdd      ZJdld+e#e!eIf   d"e#e!eJf   dNe#e!eGf   d9eHd$e#e!eHf   f
dOZK  edP       ejT                  eK            ZLd+e#e!eIf   d"e#e!eJf   dNe#e!eGf   d9eHd$e#e!eHf   f
dQZM edRdddd      ZN edSdd      ZO edTdd      ZPej                  dfd+e#e!eOf   d"e#e!ePf   d9eNd$e#e!eNf   fdUZQ  edV       ejT                  eQ            ZRd+e#e!eOf   d"e#e!ePf   d9eNd$e#e!eNf   fdWZS edXdddd      ZT edYdd      ZU edZdddd      ZVej                  dfd+e#e!eUf   d"e#e!eVf   d9eTd$e#e!eTf   fd[ZX  ed\       ejT                  eX            ZYd+e#e!eUf   d"e#e!eVf   d9eTd$e#e!eTf   fd]ZZ ed^dd      Z[ ed_dd      Z\ ed`dd      Z]dld+e#e!e\f   d"e#e!e]f   dae#e!e[f   dbe#e!e[f   d$e#e!e[f   f
dcZ^  edd       ejT                  e^            Z_d+e#e!e\f   d"e#e!e]f   dae#e!e[f   dbe#e!e[f   d$e#e!e[f   f
deZ` edfdddd      Za edgdd      Zb edhdd      Zcej                  dfd+e#e!ebf   d"e#e!ecf   d9ead$e#e!eaf   fdiZd  edj       ejT                  ed            Zed+e#e!ebf   d"e#e!ecf   d9ead$e#e!eaf   fdkZfy)mzUPython 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_StatelessMultinomial_Tz_atypes.BFloat16z_atypes.Float32z_atypes.Float64z_atypes.Halfz_atypes.Int16z_atypes.Int32z_atypes.Int64z_atypes.Int8z_atypes.UInt16z_atypes.UInt32z_atypes.UInt64z_atypes.UInt8TV_StatelessMultinomial_Tseed$TV_StatelessMultinomial_output_dtypelogitsnum_samplesseedoutput_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&                         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 2w xY w)a  Draws samples from a multinomial distribution.

  Args:
    logits: A `Tensor`. Must be one of the following types: `float32`, `float64`, `int32`, `uint8`, `int16`, `int8`, `int64`, `bfloat16`, `uint16`, `half`, `uint32`, `uint64`.
      2-D Tensor with shape `[batch_size, num_classes]`.  Each slice `[i, :]`
      represents the unnormalized log probabilities for all classes.
    num_samples: A `Tensor` of type `int32`.
      0-D.  Number of independent samples to draw for each row slice.
    seed: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      2 seeds (shape [2]).
    output_dtype: An optional `tf.DType` from: `tf.int32, tf.int64`. Defaults to `tf.int64`.
    name: A name for the operation (optional).

  Returns:
    A `Tensor` of type `output_dtype`.
  StatelessMultinomialr   N)r   namectx)r   r   r   r   r   TTseed)_contextr   _thread_local_datais_eagerr   TFE_Py_FastPathExecute_core_NotOkStatusException_opsraise_from_not_ok_status_FallbackException$stateless_multinomial_eager_fallback_SymbolicException_dtypesint64_execute	make_type_op_def_library_apply_op_helpermust_record_gradient_get_attr_typeinputsrecord_gradient)r   r   r   r   r   _ctxtld_resulte__op_outputs_attrs_inputs_flats                 ^/home/dcms/DCMS/lib/python3.12/site-packages/tensorflow/python/ops/gen_stateless_random_ops.pystateless_multinomialr@      s   " 
			0h..0$#\\11$dFK&g n ==L##L.A,'88v;%)%)+!QX QK'""$3%%c*G  )>  02F ::Lfg?('	.7 && -
##At,,## 
1
+t,T  ## 
s0    D E%1EE%$E%)E: :FFzraw_ops.StatelessMultinomialc                    |t         j                  }t        j                  |d      }t        j                  | g|t         j
                  t         j                  t         j                  t         j                  t         j                  t         j                  t         j                  t         j                  t         j                  t         j                  t         j                  t         j                  g      \  }\  } t        j                  |g|t         j                  t         j                  gt         j                        \  }\  }t!        j"                  |t         j                        }| ||g}d|d|d|f}	t        j$                  dd||	||      }
t        j&                         rt        j(                  d||	|
       |
\  }
|
S )Nr   r   r    s   StatelessMultinomial   r4   attrsr   r   r   )r,   r-   r.   r/   args_to_matching_eagerfloat32float64int32uint8int16int8bfloat16uint16halfuint32uint64r'   convert_to_tensorr   r2   r5   )r   r   r   r   r   r   _attr_T_attr_Tseedr>   r=   r8   s              r?   r*   r*   V   s   ==L##L.A,66xwX_XgXgipivivx  yF  yF  HO  HU  HU  W^  Wc  Wc  el  er  er  t{  tD  tD  FM  FT  FT  V]  Vb  Vb  dk  dr  dr  t{  tB  tB  GE  F'9F!88$w}}V]VcVcFfhohuhuv+w&&{GMMB++t,,';M&4a#)s?'""$fg?('	.    *TV_StatelessParameterizedTruncatedNormal_S.TV_StatelessParameterizedTruncatedNormal_Tseed.TV_StatelessParameterizedTruncatedNormal_dtypeshapemeansstddevsminvalsmaxvalsc                    t         j                   xs t        j                         }|j                  }|j                  r 	 t	        j
                  |d|| |||||	      }	|	S 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 w xY w)ar  TODO: add doc.

  Args:
    shape: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      The shape of the output tensor.
    seed: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      2 seeds (shape [2]).
    means: A `Tensor`. Must be one of the following types: `half`, `float32`, `float64`.
      The mean parameter of each batch.
    stddevs: A `Tensor`. Must have the same type as `means`.
      The standard deviation parameter of each batch. Must be greater than 0.
    minvals: A `Tensor`. Must have the same type as `means`.
      The minimum cutoff. May be -infinity.
    maxvals: A `Tensor`. Must have the same type as `means`.
      The maximum cutoff. May be +infinity, and must be more than the minval
      for each batch.
    name: A name for the operation (optional).

  Returns:
    A `Tensor`. Has the same type as `means`.
  %StatelessParameterizedTruncatedNormalNr   r   )rX   r   rY   rZ   r[   r\   r   Sr    dtype)r!   r   r"   r#   r   r$   r%   r&   r'   r(   r)   7stateless_parameterized_truncated_normal_eager_fallbackr+   r0   r1   r.   r2   r3   r4   r5   )rX   r   rY   rZ   r[   r\   r   r6   r7   r8   r9   r:   r;   r<   r=   r>   s                   r?   (stateless_parameterized_truncated_normalrc   l   s   , 
			0h..0$#\\115tUDw*g n (88/u47<g9@9@t	M!QX
 QK'""$3%%c*G  )7  )+F ::L/vwP('	.1 && -
##At,,## 
D
ugwdN N## 
s0    C9 9E D''E ?E E E.-E.z-raw_ops.StatelessParameterizedTruncatedNormalc                 j   t        j                  | g|t        j                  t        j                  g      \  }\  } t        j                  |g|t        j                  t        j                  gt        j                        \  }	\  }t        j                  ||||g|t        j
                  t        j                  t        j                  g      \  }
}|\  }}}}| |||||g}d|d|	d|
f}t        j                  dd||||      }t        j                         rt        j                  d|||       |\  }|S )Nr`   r    ra   s%   StatelessParameterizedTruncatedNormalrB   rC   r^   )r.   rE   r,   rH   r-   rN   rF   rG   r   r2   r5   )rX   r   rY   rZ   r[   r\   r   r   _attr_SrS   _attr_dtype_inputs_dtyper>   r=   r8   s                  r?   rb   rb      sD   55ugsW]]T[TaTaDde'8E!88$w}}V]VcVcFfhohuhuv+w'>>wPWY`?acfipiuiuw~  xG  xG  IP  IX  IX  i[   \+}'4$5'7Gugw@,';E&Eq$0C"&(' ""$/vwP('	.rT   TV_StatelessRandomBinomial_S TV_StatelessRandomBinomial_TseedTV_StatelessRandomBinomial_T TV_StatelessRandomBinomial_dtypecountsprobsra   c                 P   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&                         rjd|j)                  d      d|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 Ew xY w)	a  Outputs deterministic pseudorandom random numbers from a binomial distribution.

  Outputs random values from a binomial distribution.

  The outputs are a deterministic function of `shape`, `seed`, `counts`, and `probs`.

  Args:
    shape: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      The shape of the output tensor.
    seed: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      2 seeds (shape [2]).
    counts: A `Tensor`. Must be one of the following types: `half`, `float32`, `float64`, `int32`, `int64`.
      The counts of the binomial distribution. Must be broadcastable with `probs`,
      and broadcastable with the rightmost dimensions of `shape`.
    probs: A `Tensor`. Must have the same type as `counts`.
      The probability of success for the binomial distribution. Must be broadcastable
      with `counts` and broadcastable with the rightmost dimensions of `shape`.
    dtype: An optional `tf.DType` from: `tf.half, tf.float32, tf.float64, tf.int32, tf.int64`. Defaults to `tf.int64`.
      The type of the output.
    name: A name for the operation (optional).

  Returns:
    A `Tensor` of type `dtype`.
  StatelessRandomBinomialra   Nra   r   r   )rX   r   rl   rm   ra   r   r`   r    r   )r!   r   r"   r#   r   r$   r%   r&   r'   r(   r)   (stateless_random_binomial_eager_fallbackr+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   )rX   r   rl   rm   ra   r   r6   r7   r8   r9   r:   r;   r<   r=   r>   s                  r?   stateless_random_binomialrr      s   2 
			0h..0$#\\11'udFEg n ]MME


UG
,%'88!T&).e$H!QX QK'""$3%%c*G  )30B0B30Gs))'24F ::L!<B('	.3 && -
##At,,## 
5
vuE$H H## 
s0    D1 1E8EE87E8<F F%$F%zraw_ops.StatelessRandomBinomialc           	         |t         j                  }t        j                  |d      }t        j                  | g|t         j
                  t         j                  g      \  }\  } t        j                  |g|t         j
                  t         j                  gt         j                        \  }\  }t        j                  ||g|t         j                  t         j                  t         j                  t         j
                  t         j                  gt         j                        \  }	}
|
\  }}| |||g}d|d|d|	d|f}t        j                  dd||||      }t        j                         rt        j                  d|||       |\  }|S )	Nra   r`   r    r   s   StatelessRandomBinomialrB   rC   ro   )r,   r-   r.   r/   rE   rH   rN   rF   rG   r   r2   r5   )rX   r   rl   rm   ra   r   r   re   rS   rR   	_inputs_Tr>   r=   r8   s                 r?   rq   rq      s   
]MME


UG
,%55ugsW]]T[TaTaDde'8E!88$w}}V]VcVcFfhohuhuv+w66gll\c\k\kmtm|m|  F  L  L  NU  N[  N[  N^  `g  `o  `o  p'9/65vu-,';WguM&7$0C"&(' ""$!<B('	.rT   TV_StatelessRandomGammaV2_dtypeTV_StatelessRandomGammaV2_TTV_StatelessRandomGammaV2_Tseedalphac                    t         j                   xs t        j                         }|j                  }|j                  r	 t	        j
                  |d|| ||      }|S 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 w xY w)a  Outputs deterministic pseudorandom random numbers from a gamma distribution.

  Outputs random values from a gamma distribution.

  The outputs are a deterministic function of `shape`, `seed`, and `alpha`.

  Args:
    shape: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      The shape of the output tensor.
    seed: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      2 seeds (shape [2]).
    alpha: A `Tensor`. Must be one of the following types: `half`, `float32`, `float64`.
      The concentration of the gamma distribution. Shape must match the rightmost
      dimensions of `shape`.
    name: A name for the operation (optional).

  Returns:
    A `Tensor`. Has the same type as `alpha`.
  StatelessRandomGammaV2Nr_   )rX   r   rx   r   ra   r   r    )r!   r   r"   r#   r   r$   r%   r&   r'   r(   r)   (stateless_random_gamma_v2_eager_fallbackr+   r0   r1   r.   r2   r3   r4   r5   )rX   r   rx   r   r6   r7   r8   r9   r:   r;   r<   r=   r>   s                r?   stateless_random_gamma_v2r|     sk   ( 
			0h..0$#\\11&eT5Bgn (88 D'+-!QX QK'""$s))'2C  %w0B0B70KMF::L ,A('	.+ && -
##At,,## 
5
u4T3 3## 
s0    C3 3D:D!!D:9D:>E E%$E%zraw_ops.StatelessRandomGammaV2c                 T   t        j                  |g|t        j                  t        j                  t        j
                  g      \  }\  }t        j                  | g|t        j                  t        j                  g      \  }\  } t        j                  |g|t        j                  t        j                  gt        j                        \  }\  }| ||g}d|d|d|f}	t        j                  dd||	||      }
t        j                         rt        j                  d||	|
       |
\  }
|
S )Nra   r   r    s   StatelessRandomGammaV2rB   rC   rz   )r.   rE   r,   rN   rF   rG   rH   r-   r   r2   r5   )rX   r   rx   r   r   rf   rR   rS   r>   r=   r8   s              r?   r{   r{   I  s
   "995'3W^WfWfhohwhwHz{+x55ugsW]]T[TaTaDde'8E!88$w}}V]VcVcFfhohuhuv+wu%,[#wE&6$0C"&(' ""$ ,A('	.rT   TV_StatelessRandomNormal_dtypeTV_StatelessRandomNormal_TTV_StatelessRandomNormal_Tseedc           	      "   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 0w xY w)a  Outputs deterministic pseudorandom values from a normal distribution.

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

  The outputs are a deterministic function of `shape` and `seed`.

  Args:
    shape: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      The shape of the output tensor.
    seed: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      2 seeds (shape [2]).
    dtype: An optional `tf.DType` from: `tf.half, tf.bfloat16, tf.float32, tf.float64`. Defaults to `tf.float32`.
      The type of the output.
    name: A name for the operation (optional).

  Returns:
    A `Tensor` of type `dtype`.
  StatelessRandomNormalra   Nrp   rX   r   ra   r   r   r    )r!   r   r"   r#   r   r$   r%   r&   r'   r(   r)   &stateless_random_normal_eager_fallbackr+   r,   rF   r.   r/   r0   r1   r2   r3   r4   r5   rX   r   ra   r   r6   r7   r8   r9   r:   r;   r<   r=   r>   s                r?   stateless_random_normalr   ]  s   & 
			0h..0$#\\11%tUD'5Jgn ]OOE


UG
,%'88u4u&*,!QX QK'""$s))'2C  %w0B0B70KMF::Lvw@('	.1 && -
##At,,## 
3
U49 9## 
0    D E#/E

E#"E#'E7 7FFzraw_ops.StatelessRandomNormalc                 ,   |t         j                  }t        j                  |d      }t        j                  | g|t         j
                  t         j                  gt         j
                        \  }\  } t        j                  |g|t         j
                  t         j                  gt         j                        \  }\  }| |g}d|d|d|f}t        j                  dd||||      }	t        j                         rt        j                  d|||	       |	\  }	|	S )Nra   r   r    s   StatelessRandomNormalrB   rC   r   
r,   rF   r.   r/   rE   rH   r-   r   r2   r5   
rX   r   ra   r   r   rR   rS   r>   r=   r8   s
             r?   r   r     s    
]OOE


UG
,%55ugsW]]T[TaTaDdfmfsfst'8E!88$w}}V]VcVcFfhohuhuv+w,UC';?&5q#)s?'""$vw@('	.rT   TV_StatelessRandomPoisson_RtypeTV_StatelessRandomPoisson_dtypeTV_StatelessRandomPoisson_TTV_StatelessRandomPoisson_Tseedlamc           
      &   t         j                   xs t        j                         }|j                  }|j                  r	 t	        j
                  |d|| ||d|      }|S t        j                  |d      }t        j                   d| ||||      \  }	}	}
}|dd }t        j"                         rjd|
j%                  d      d|
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 1w xY w)	aT  Outputs deterministic pseudorandom random numbers from a Poisson distribution.

  Outputs random values from a Poisson distribution.

  The outputs are a deterministic function of `shape`, `seed`, and `lam`.

  Args:
    shape: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      The shape of the output tensor.
    seed: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      2 seeds (shape [2]).
    lam: A `Tensor`. Must be one of the following types: `half`, `float32`, `float64`, `int32`, `int64`.
      The rate of the Poisson distribution. Shape must match the rightmost dimensions
      of `shape`.
    dtype: A `tf.DType` from: `tf.half, tf.float32, tf.float64, tf.int32, tf.int64`.
      The type of the output.
    name: A name for the operation (optional).

  Returns:
    A `Tensor` of type `dtype`.
  StatelessRandomPoissonra   Nrp   )rX   r   r   ra   r   Rtyper   r    )r!   r   r"   r#   r   r$   r%   r&   r'   r(   r)   'stateless_random_poisson_eager_fallbackr+   r.   r/   r0   r1   r2   r3   r4   r5   )rX   r   r   ra   r   r6   r7   r8   r9   r:   r;   r<   r=   r>   s                 r?   stateless_random_poissonr     s   , 
			0h..0$#\\11&eT3g n 

UG
,%'88 Dc(-D:!QX QK'""$s))'2G  )30B0B30Gs))'24F ::L ,A('	./ && -
##At,,## 
4
s%d> >## 
s0    D E$0EE$#E$(E9 9FFzraw_ops.StatelessRandomPoissonc           	         t        j                  |d      }t        j                  |g|t        j                  t        j
                  t        j                  t        j                  t        j                  g      \  }\  }t        j                  | g|t        j                  t        j                  g      \  }\  } t        j                  |g|t        j                  t        j                  gt        j                        \  }\  }| ||g}	d|d|d|d|f}
t        j                  dd|	|
||      }t        j                         rt        j                  d|	|
|       |\  }|S )	Nra   r   r   r    s   StatelessRandomPoissonrB   rC   r   )r.   r/   rE   r,   rN   rF   rG   rH   r-   r   r2   r5   )rX   r   r   ra   r   r   _attr_RtyperR   rS   r>   r=   r8   s               r?   r   r     sP   


UG
,% 77sW\\SZSbSbdkdsdsu|  vC  vC  EL  ER  ER  EU  V+v55ugsW]]T[TaTaDde'8E!88$w}}V]VcVcFfhohuhuv+ws#,['5#w&6$0C"&(' ""$ ,A('	.rT   TV_StatelessRandomUniform_dtypeTV_StatelessRandomUniform_TTV_StatelessRandomUniform_Tseedc           	      "   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 0w xY w)a  Outputs deterministic pseudorandom 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.

  The outputs are a deterministic function of `shape` and `seed`.

  Args:
    shape: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      The shape of the output tensor.
    seed: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      2 seeds (shape [2]).
    dtype: An optional `tf.DType` from: `tf.half, tf.bfloat16, tf.float32, tf.float64`. Defaults to `tf.float32`.
      The type of the output.
    name: A name for the operation (optional).

  Returns:
    A `Tensor` of type `dtype`.
  StatelessRandomUniformra   Nrp   r   r   r    )r!   r   r"   r#   r   r$   r%   r&   r'   r(   r)   'stateless_random_uniform_eager_fallbackr+   r,   rF   r.   r/   r0   r1   r2   r3   r4   r5   r   s                r?   stateless_random_uniformr     s   ( 
			0h..0$#\\11&eT7EKgn ]OOE


UG
,%'88 D'+-!QX QK'""$s))'2C  %w0B0B70KMF::L ,A('	.1 && -
##At,,## 
4
U49 9## 
r   zraw_ops.StatelessRandomUniformc                 ,   |t         j                  }t        j                  |d      }t        j                  | g|t         j
                  t         j                  gt         j
                        \  }\  } t        j                  |g|t         j
                  t         j                  gt         j                        \  }\  }| |g}d|d|d|f}t        j                  dd||||      }	t        j                         rt        j                  d|||	       |	\  }	|	S )Nra   r   r    s   StatelessRandomUniformrB   rC   r   r   r   s
             r?   r   r   2  s    
]OOE


UG
,%55ugsW]]T[TaTaDdfmfsfst'8E!88$w}}V]VcVcFfhohuhuv+w,UC';?&6$0C"&(' ""$ ,A('	.rT   &TV_StatelessRandomUniformFullInt_dtype"TV_StatelessRandomUniformFullInt_T&TV_StatelessRandomUniformFullInt_Tseedc           	      "   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 0w xY w)a  Outputs deterministic pseudorandom random integers from a uniform distribution.

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

  The outputs are a deterministic function of `shape` and `seed`.

  Args:
    shape: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      The shape of the output tensor.
    seed: A `Tensor`. Must be one of the following types: `int32`, `int64`, `uint32`, `uint64`.
      2 seeds (shape [2]).
    dtype: An optional `tf.DType` from: `tf.int32, tf.int64, tf.uint32, tf.uint64`. Defaults to `tf.uint64`.
      The type of the output.
    name: A name for the operation (optional).

  Returns:
    A `Tensor` of type `dtype`.
  StatelessRandomUniformFullIntra   Nrp   r   r   r    )r!   r   r"   r#   r   r$   r%   r&   r'   r(   r)   0stateless_random_uniform_full_int_eager_fallbackr+   r,   rP   r.   r/   r0   r1   r2   r3   r4   r5   r   s                r?   !stateless_random_uniform_full_intr   H  s   & 
			0h..0$#\\11-tUD'g n ]NNE


UG
,%'88'u4u.24!QX QK'""$s))'2C  %w0B0B70KMF::L'vwH('	.1 && -
##At,,## 
=
U49 9## 
r   z%raw_ops.StatelessRandomUniformFullIntc                 h   |t         j                  }t        j                  |d      }t        j                  | g|t         j
                  t         j                  gt         j
                        \  }\  } t        j                  |g|t         j
                  t         j                  t         j                  t         j                  gt         j                        \  }\  }| |g}d|d|d|f}t        j                  dd||||      }	t        j                         rt        j                  d|||	       |	\  }	|	S )Nra   r   r    s   StatelessRandomUniformFullIntrB   rC   r   )r,   rP   r.   r/   rE   rH   r-   rO   r   r2   r5   r   s
             r?   r   r     s'   
]NNE


UG
,%55ugsW]]T[TaTaDdfmfsfst'8E!88$w}}V]VcVcelesesu|  vD  vD  GG  IP  IV  IV  W+w,UC';?&=q$0C"&(' ""$'vwH('	.rT   "TV_StatelessRandomUniformInt_dtypeTV_StatelessRandomUniformInt_T"TV_StatelessRandomUniformInt_Tseedminvalmaxvalc           	         t         j                   xs t        j                         }|j                  }|j                  r	 t	        j
                  |d|| |||      }|S 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 
w xY w)a+  Outputs deterministic pseudorandom random integers from a uniform distribution.

  The generated values follow a uniform distribution in the range `[minval, maxval)`.

  The outputs are a deterministic function of `shape`, `seed`, `minval`, and `maxval`.

  Args:
    shape: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      The shape of the output tensor.
    seed: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      2 seeds (shape [2]).
    minval: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      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`.
  StatelessRandomUniformIntNr_   )rX   r   r   r   r   ra   r   r    )r!   r   r"   r#   r   r$   r%   r&   r'   r(   r)   +stateless_random_uniform_int_eager_fallbackr+   r0   r1   r.   r2   r3   r4   r5   )rX   r   r   r   r   r6   r7   r8   r9   r:   r;   r<   r=   r>   s                 r?   stateless_random_uniform_intr     sq   * 
			0h..0$#\\11)4ffNgn (88#5tF,2?!QX QK'""$s))'2C  %w0B0B70KMF::L#\67D('	.+ && -
##At,,## 
8
vvDd< <## 
s0    C5 5D<D##D<;D< E E('E(z!raw_ops.StatelessRandomUniformIntc                 @   t        j                  ||g|t        j                  t        j                  g      \  }}|\  }}t        j                  | g|t        j                  t        j                  g      \  }\  } t        j                  |g|t        j                  t        j                  gt        j                        \  }	\  }| |||g}
d|d|d|	f}t        j
                  dd|
|||      }t        j                         rt        j                  d|
||       |\  }|S )Nra   r   r    s   StatelessRandomUniformIntrB   rC   r   )r.   rE   r,   rH   r-   r   r2   r5   )rX   r   r   r   r   r   rf   rg   rR   rS   r>   r=   r8   s                r?   r   r     s   '>>?OQTW^WdWdfmfsfsVvw+}"6655ugsW]]T[TaTaDde'8E!88$w}}V]VcVcFfhohuhuv+wvv.,[#wE&91$0C"&(' ""$#\67D('	.rT   !TV_StatelessTruncatedNormal_dtypeTV_StatelessTruncatedNormal_T!TV_StatelessTruncatedNormal_Tseedc           	      "   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 0w xY w)a1  Outputs deterministic pseudorandom 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.

  The outputs are a deterministic function of `shape` and `seed`.

  Args:
    shape: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      The shape of the output tensor.
    seed: A `Tensor`. Must be one of the following types: `int32`, `int64`.
      2 seeds (shape [2]).
    dtype: An optional `tf.DType` from: `tf.half, tf.bfloat16, tf.float32, tf.float64`. Defaults to `tf.float32`.
      The type of the output.
    name: A name for the operation (optional).

  Returns:
    A `Tensor` of type `dtype`.
  StatelessTruncatedNormalra   Nrp   r   r   r    )r!   r   r"   r#   r   r$   r%   r&   r'   r(   r)   )stateless_truncated_normal_eager_fallbackr+   r,   rF   r.   r/   r0   r1   r2   r3   r4   r5   r   s                r?   stateless_truncated_normalr     s   * 
			0h..0$#\\11($tWeMgn ]OOE


UG
,%'88"%d%)-/!QX QK'""$s))'2C  %w0B0B70KMF::L"L&'C('	.1 && -
##At,,## 
6
U49 9## 
r   z raw_ops.StatelessTruncatedNormalc                 ,   |t         j                  }t        j                  |d      }t        j                  | g|t         j
                  t         j                  gt         j
                        \  }\  } t        j                  |g|t         j
                  t         j                  gt         j                        \  }\  }| |g}d|d|d|f}t        j                  dd||||      }	t        j                         rt        j                  d|||	       |	\  }	|	S )Nra   r   r    s   StatelessTruncatedNormalrB   rC   r   r   r   s
             r?   r   r     s    
]OOE


UG
,%55ugsW]]T[TaTaDdfmfsfst'8E!88$w}}V]VcVcFfhohuhuv+w,UC';?&8!$0C"&(' ""$"L&'C('	.rT   )N)g__doc__collectionstensorflow.pythonr   tensorflow.python.eagerr   r!   r   r%   r   r.   tensorflow.python.frameworkr   r,   tensorflow.security.fuzzing.pyr   _atypesr	   _op_def_registryr
   r'   r   r0   "tensorflow.python.util.deprecationr   tensorflow.python.utilr   	_dispatch tensorflow.python.util.tf_exportr   typingr   r   r   typing_extensionsr   r   r   r   r-   Int32r@   	to_raw_opr   r*   rU   rV   rW   rc   r^   rb   rh   ri   rj   rk   rr   ro   rq   ru   rv   rw   r|   rz   r{   r~   r   r   rF   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   r   r   r   r   r   r   r    rT   r?   <module>r      sY  
  6 7 1 7 9 F K 3 I C 8 6 % % '#$?ASUfhy  |J  L[  ]l  n}  M  O_  aq  sC  ET  U  '(GZi j './UWfhw'x $ ah  an  an  uy 4)C1J,J"K 4ZcdgipivivdvZw 4  @I  JM  Ol  Jl  @m 4  |` 4  ~G  HK  Mq  Hq  ~r 4l Ay!?@PeAfg 3@Y;Y1Z irsvx  yF  yF  tF  jG   OX  Y\  ^{  Y{  O|   Lp   @I  JM  Os  Js  @t $ .55acr  uD  .E *189ikz  }L  2M .189ik|  P  R`  2a .6IcCm>m4n 6v  AD  Ft  At  wu 6  ~G  HK  M{  H{  ~| 6  GP  QT  VD  QD  GE 6  PY  Z]  _M  ZM  PN 6  Yb  cf  hV  cV  YW 6  gp  qt  vd  qd  ge 6p )c	2a(bcqcgcqcq  s[  d\  )] %9SR|M|C}   FO  PS  UC  PC  FD   MV  WZ  \J  WJ  MK   V_  `c  eS  `S  VT   _h  il  n\  i\  _]   hq  ru  we  re  hf   v  @C  Es  @s  vt "  ''EXgh #*+M`o#p  &'EGXZkm{  ~M  O^   _ #*+MO`bs  vD  FU  Wf  $g   ^e  ^k  ^k  rv :Ys4P/P%Q :Ybcf  iI  dI  ZJ :  T]  ^a  c  ^  T@ :  IR  SV  Xt  St  Iu :  }] :  {D  EH  Jj  Ej  {k :x G)$EF~t~~VoGpq IcC_>_4` hqru  xX  sX  iY   cl  mp  rN  mN  cO   Xa  be  gC  bC  XD   Mm   }F  GJ  Ll  Gl  }m ( #**KM^`q  tB  #C %&C_Vef ")*K_^m"n 0Ys4O/O%P 0Xabe  hG  cG  YH 0  QZ  [^  `  [  Q@ 0  PY  Z]  _~  Z~  P 0d E#CD^T^^TmEno IcC^>^4_ gpqt  wV  rV  hW   `i  jm  oN  jN  `O   _h  il  nM  iM  _N   "))IK]_p  sD  FT  "U $%A?Tcd !()I?\k!l  kr  kz  kz  AE 29S2L-L#M 2U^_b  eC  `C  VD 2  Lj 2  JS  TW  Yw  Tw  Jx 2h C	"AB>4>>RiCjk )CA[<[2\ dmnq  tR  oR  eS   \z   JS  TW  Yw  Tw  Jx " #**KM^`q  tB  DS  Ud  #e ")*KM^`q  tB  DS  Ud  #e %&C_Vef ")*K_^m"n 5Ic3N.N$O 5W`ad  gF  bF  XG 5  NW  X[  ]|  X|  N} 5  Fe 5  u~  B  Dc  c  ud 5n E#CD^T^^TlEmn 9SB]=]3^ fops  vU  qU  gV   ]f  gj  lK  gK  ]L   Ut   DM  NQ  Sr  Nr  Ds $ #**KM_ar  uF  HV  #W %&C_Vef ")*K_^m"n  ov  o~  o~  EI 3Ic3N.N$O 3W`ad  gF  bF  XG 3  On 3  NW  X[  ]|  X|  N} 3j E#CD^T^^TlEmn 9SB]=]3^ fops  vU  qU  gV   _~   NW  X[  ]|  X|  N} $ *11Y[jl{  ~N  P`  *a &%,-QSbds%t ")01Y[jl{  ~N  P`  *a & MT  M[  M[  bf 3Ys<^7^-_ 3gpqt  w]  r]  h^ 3  fL 3  kt  ux  z`  u`  ka 3j !S	*Q RSaSWSaSa  cD  TE  !F IcKmFm<n v  AD  Fl  Al  wm   v\   lu  vy  {a  va  lb $ &--QSbds%t "!()I?\k!l %,-QSbds%t "1	#7U2U(V 1^ghk  nP  iP  _Q 1  [d  eh  jL  eL  [M 1  W`  ad  fH  aH  WI 1  Yb  cf  hJ  cJ  YK 1f KI&IJ>4>>ZvKwx yFdAd7e mvwz  }_  x_  n`   js  tw  y[  t[  j\   fo  ps  uW  pW  fX   hq  ru  wY  rY  hZ " %,,OQcev  yJ  LZ  %[ ! '(GZi j $+,OQ`bq$r ! w~  wF  wF  MQ 4i5R0R&S 4[deh  kL  fL  \M 4  Uv 4  V_  `c  eF  `F  VG 4l I9%GHXrIst YsDa?a5b jstw  z[  u[  k\   eF   V_  `c  eF  `F  VG rT   