code: def create_sequential_critic_network(
      obs_fc_layer_units, action_fc_layer_units, joint_fc_layer_units
  ):
      """Create a sequential critic network."""
  
      # Split the inputs into observations and actions.
      def split_inputs(inputs):
          return {"observation": inputs[0], "action": inputs[1]}
  
      # Create an observation network.
      obs_network = (
          create_fc_network(obs_fc_layer_units)
          if obs_fc_layer_units
          else create_identity_layer()
      )
  
      # Create an action network.
      action_network = (
          create_fc_network(action_fc_layer_units)
          if action_fc_layer_units
          else create_identity_layer()
      )
  
      # Create a joint network.
      joint_network = (
          create_fc_network(joint_fc_layer_units)
          if joint_fc_layer_units
          else create_identity_layer()
      )
  
      # Final layer.
      value_layer = tf.keras.layers.Dense(
          1, kernel_initializer="glorot_uniform"
      )
  
      return sequential.Sequential(
          [
              tf.keras.layers.Lambda(split_inputs),
              nest_map.NestMap(
                  {"observation": obs_network, "action": action_network}
              ),
              nest_map.NestFlatten(),
              tf.keras.layers.Concatenate(),
              joint_network,
              value_layer,
              inner_reshape.InnerReshape(
                  current_shape=[1], new_shape=[]
              ),
          ],
          name="sequential_critic",
      )
  
imports: import functools
  import os
  from absl import app
  from absl import flags
  from absl import logging
  import gin
  import reverb
  import tensorflow
  from tf_agents.agents.sac import sac_agent
  from tf_agents.agents.sac import tanh_normal_projection_network
  from tf_agents.environments import suite_mujoco
  from tf_agents.keras_layers import inner_reshape
  from tf_agents.metrics import py_metrics
  from tf_agents.networks import nest_map
  from tf_agents.networks import sequential
  from tf_agents.policies import greedy_policy
  from tf_agents.policies import py_tf_eager_policy
  from tf_agents.policies import random_py_policy
  from tf_agents.replay_buffers import reverb_replay_buffer
  from tf_agents.replay_buffers import reverb_utils
  from tf_agents.train import actor
  from tf_agents.train import learner
  from tf_agents.train import triggers
  from tf_agents.train.utils import spec_utils
  from tf_agents.train.utils import strategy_utils
  from tf_agents.train.utils import train_utils
label_desc: Use image node_id 3 for calling a global function with example usage: create_sequential_critic_network(obs_fc_layer_units, action_fc_layer_units, joint_fc_layer_units) and returns: sequential, dict