code: def test_fold_tuple():
      c_data = np.array(1).astype("float32")
      t = relay.TensorType([1], "float32")
  
      def before():
          c = relay.const(c_data)
          x = relay.var("x", t)
          y = relay.Tuple([x, c])
          z = relay.add(y[1], c)
          z = relay.add(z, y[0])
          return relay.Function([x], z)
  
      def expected():
          c = relay.const(c_data + c_data)
          x = relay.var("x", t)
          z = relay.add(c, x)
          return relay.Function([x], z)
  
      zz = run_opt_pass(before(), transform.FoldConstant())
      zexpected = run_opt_pass(expected(), transform.InferType())
      tvm.ir.assert_structural_equal(zz, zexpected)
  
imports: import numpy
  import tvm
  import tvm.testing
  from tvm import relay
  from tvm.relay.backend import Executor
  from tvm.relay import transform
  from tvm.relay.build_module import bind_params_by_name
  from tvm.relay.testing import run_infer_type, create_workload
label_desc: Use image node_id 8 for calling a global function with example usage: test_fold_tuple() and returns: relay, relay