code: def Dense(out_dim, W_init=glorot_normal(), b_init=normal()):
      """Layer constructor function for a dense (fully-connected) layer."""
  
      def init_fun(rng, input_shape):
          output_shape = input_shape[:-1] + (out_dim,)
          k1, k2 = random.split(rng)
          W, b = W_init(k1, (input_shape[-1], out_dim)), b_init(
              k2, (out_dim,)
          )
          return output_shape, (W, b)
  
      def apply_fun(params, inputs, **kwargs):
          W, b = params
          return jnp.dot(inputs, W) + b
  
      return init_fun, apply_fun
  
imports: import functools
  import operator
  from jax import lax
  from jax import random
  import jax.numpy
  from jax.nn import relu, log_softmax, softmax, softplus, sigmoid, elu, leaky_relu, selu, gelu, standardize
  from jax.nn.initializers import glorot_normal, normal, ones, zeros
label_desc: Use image node_id 1 for calling a global function with example usage: Dense(out_dim, W_init, b_init) and returns: init_fun,  apply_fun, output_shape,  W,  b, unknown