code: def test_ethosu_left_shift_binary_elemwise(
      accel_type,
      ifm_shape,
      ifm2_shape,
  ):
      np.random.seed(0)
      dtype = "int32"
  
      def create_model():
          ifm = relay.var("ifm", shape=ifm_shape, dtype=dtype)
          ifm2 = relay.var("ifm2", shape=ifm2_shape, dtype=dtype)
          c1 = relay.left_shift(ifm, ifm2)
          return tvm.IRModule.from_expr(relay.Function([ifm, ifm2], c1))
  
      cpu_mod = create_model()
  
      # Generate reference data
      in_min, in_max = util.get_range_for_dtype_str(dtype)
      input_data = {
          "ifm": np.random.randint(
              in_min, high=in_max, size=ifm_shape, dtype=dtype
          ),
          "ifm2": np.random.randint(
              0, high=32, size=ifm2_shape, dtype=dtype
          ),
      }
      output_data = generate_ref_data(cpu_mod, input_data)
      ethosu_mod = partition_for_ethosu(cpu_mod)
  
      infra.compare_ethosu_with_reference(
          ethosu_mod, input_data, output_data, accel_type
      )
  
imports: import pytest
  import numpy
  import tflite.Model
  import tvm
  import tensorflow
  from tvm import relay
  from tvm.relay.backend.contrib.ethosu import util
  from tvm.relay.op.contrib.ethosu import partition_for_ethosu
  from tvm.testing.aot import generate_ref_data
  from .None import infra
label_desc: Use image node_id 20 for calling a global function with example usage: test_ethosu_left_shift_binary_elemwise(accel_type, ifm_shape, ifm2_shape) and returns: tvm