code: def add_depth_embedding(x):
      """Add n-dimensional embedding as the depth embedding (timing signal).
  
      Adds embeddings to represent the position of the step in the recurrent
      tower.
  
      Args:
        x: a tensor with shape [max_step, batch, length, depth]
  
      Returns:
        a Tensor the same shape as x.
      """
      x_shape = common_layers.shape_list(x)
      depth = x_shape[-1]
      num_steps = x_shape[0]
      shape = [num_steps, 1, 1, depth]
      depth_embedding = tf.get_variable(
          "depth_embedding",
          shape,
          initializer=tf.random_normal_initializer(0, depth**-0.5),
      ) * (depth**0.5)
  
      x += depth_embedding
      return x
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import copy
  import functools
  from six.moves import range
  from tensor2tensor.layers import common_attention
  from tensor2tensor.layers import common_layers
  from tensor2tensor.models import transformer
  from tensor2tensor.utils import contrib
  from tensor2tensor.utils import expert_utils
  import tensorflow.compat.v1
label_desc: Use image node_id 18 for calling a global function with example usage: add_depth_embedding(x) and returns: x