code: def central_frame_initializer():
      """Initialisation function for 3D convolutional kernels.
  
      The filter is initialised such that it only depends on the input at the
      central (w.r.t the time dimension) frame.
  
      Returns:
        init: Initialisation function for Flax
      """
  
      def init(key, shape, dtype=jnp.float32):
          assert len(shape) == 5, (
              "Should be initialising 5-d kernels"
              "(t, h, w, c_in, c_out"
          )
          init_kernel = linear.default_kernel_init(key, shape, dtype)
          central_time_index = shape[0] // 2
          init_kernel = init_kernel.at[
              :, :, :central_time_index, :, :
          ].set(0.0)
          init_kernel = init_kernel.at[
              :, :, central_time_index + 1 :, :, :
          ].set(0.0)
  
          return init_kernel
  
      return init
  
imports: from typing import Any, Optional, Tuple
  from absl import logging
  import flax
  from flax.linen import linear
  from flax.training import common_utils
  import jax
  import jax.numpy
  import ml_collections
  import numpy
  from scenic.common_lib import debug_utils
  from scenic.model_lib.base_models import model_utils
  import scipy
label_desc: Use image node_id 4 for calling a global function with example usage: central_frame_initializer() and returns: init, init_kernel