code: def test_builder_to_backend_smoke(self, compute_unit, backend):
      elem_shape = (2,)
      input_placeholders = {
          "a": mb.placeholder(shape=elem_shape),
          "b": mb.placeholder(shape=elem_shape),
      }
  
      def build(a, b):
          ls = mb.make_list(init_length=2, elem_shape=elem_shape)
          # list is initially all 0
          init_t = mb.list_read(ls=ls, index=0)
          ls = mb.list_write(ls=ls, index=0, value=a)
          # this write is out of bound
          ls = mb.list_write(ls=ls, index=4, value=b)
          ls = mb.list_scatter(
              ls=ls,
              indices=[2, 1],
              value=np.array([[-1, -2], [-4, -5]], dtype=np.float32),
          )
          return (
              init_t,
              mb.list_read(ls=ls, index=0),
              mb.list_gather(ls=ls, indices=[4, 2, 3]),
          )
  
      input_values = {
          "a": np.array([1, 3], dtype=np.float32),
          "b": np.array([2, 4], dtype=np.float32),
      }
  
      expected_output_types = [
          (2, types.fp32),
          (2, types.fp32),
          (3, 2, types.fp32),
      ]
  
      expected_outputs = [
          np.array([0, 0], dtype=np.float32),
          np.array([1, 3], dtype=np.float32),
          np.array([[2, 4], [-1, -2], [0, 0]], dtype=np.float32),
      ]
      run_compare_builder(
          build,
          input_placeholders,
          input_values,
          expected_output_types,
          expected_outputs,
          compute_unit=compute_unit,
          backend=backend,
      )
  
imports: import itertools
  import numpy
  import pytest
  from coremltools.converters.mil.mil import Builder
  from coremltools.converters.mil.mil import get_new_symbol, types
  from coremltools.converters.mil.mil.ops.tests.iOS14 import backends
  from coremltools.converters.mil.mil.ops.tests.testing_utils import UNK_SYM, construct_inputs_from_placeholders, run_compare_builder
  from coremltools.converters.mil.testing_reqs import compute_units
  from coremltools.converters.mil.testing_utils import random_gen, ssa_fn
label_desc: Use image node_id 1 for calling the TestList obj's underlying member method code with example usage: obj.test_builder_to_backend_smoke(compute_unit, backend) and returns: init_t,  mb,  mb