code: def _test_episode_lists(
      self, replay_table, empty_values, test_values
  ):
      episode_lists = replay_table.get_episode_lists()
      for episode_list_slot in tf.nest.flatten(episode_lists):
          self.assertEqual(episode_list_slot.shape.rank, 1)
          self.assertEqual(
              self.evaluate(tf.size(input=episode_list_slot)), 3
          )
      # Stack each row individually.
      episode_tensors_0 = tf.nest.map_structure(
          lambda slot, lists: replay_table._stack_tensor_list(
              slot, lists[0]
          ),
          replay_table.slots,
          episode_lists,
      )
      episode_tensors_1 = tf.nest.map_structure(
          lambda slot, lists: replay_table._stack_tensor_list(
              slot, lists[1]
          ),
          replay_table.slots,
          episode_lists,
      )
      episode_tensors_2 = tf.nest.map_structure(
          lambda slot, lists: replay_table._stack_tensor_list(
              slot, lists[2]
          ),
          replay_table.slots,
          episode_lists,
      )
      # Only row 1 should have non-empty values.
      self.assertAllClose(
          self.evaluate(episode_tensors_0), empty_values
      )
      self.assertAllClose(self.evaluate(episode_tensors_1), test_values)
      self.assertAllClose(
          self.evaluate(episode_tensors_2), empty_values
      )
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import os
  import numpy
  import tensorflow
  from tf_agents import specs
  from tf_agents.replay_buffers import episodic_table
  from tensorflow.python.framework import test_util
label_desc: Use image node_id 13 for calling the EpisodicTableTest obj's underlying member method code with example usage: obj._test_episode_lists(replay_table, empty_values, test_values) without return types