code: def assert_nonnegative_integer_form(
      x, atol=None, rtol=None, name="assert_nonnegative_integer_form"
  ):
      """Assert x is a non-negative tensor, and optionally of integers."""
      with tf.name_scope(name):
          x = tf.convert_to_tensor(x, name="x")
          assertions = [
              assert_util.assert_non_negative(
                  x, message="`{}` must be non-negative.".format(x)
              ),
          ]
          if not dtype_util.is_integer(x.dtype):
              assertions += [
                  assert_integer_form(
                      x,
                      atol=atol,
                      rtol=rtol,
                      message="`{}` cannot contain fractional components.".format(
                          x
                      ),
                  ),
              ]
          return assertions
  
imports: import functools
  import hashlib
  import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.internal import assert_util
  from tensorflow_probability.python.internal import dtype_util
  from tensorflow_probability.python.internal import prefer_static
  from tensorflow_probability.python.internal import reparameterization
  from tensorflow_probability.python.internal import tensorshape_util
  from tensorflow.python.util import tf_inspect
label_desc: Use image node_id 17 for calling a global function with example usage: assert_nonnegative_integer_form(x, atol, rtol, name) and returns: assertions