code: def test_concat():
      a = relay.TypeVar("a")
      assert prelude.mod[concat].checked_type == relay.FuncType(
          [rlist(a), rlist(a)], rlist(a), [a]
      )
  
      l1 = cons(
          make_nat_expr(prelude, 1),
          cons(make_nat_expr(prelude, 2), nil()),
      )
      l2 = cons(
          make_nat_expr(prelude, 3),
          cons(make_nat_expr(prelude, 4), nil()),
      )
      res = eval(concat(l1, l2))
  
      catted = to_list(res)
      assert len(catted) == 4
      assert count(catted[0]) == 1
      assert count(catted[1]) == 2
      assert count(catted[2]) == 3
      assert count(catted[3]) == 4
  
imports: import pytest
  import tvm
  from tvm import relay
  from tvm.relay import testing
  from tvm.relay.backend.interpreter import ConstructorValue
  from tvm.relay import create_executor
  from tvm.relay.prelude import Prelude, StaticTensorArrayOps
  from tvm.relay.testing import count, make_nat_value, make_nat_expr
  import numpy
label_desc: Use image node_id 21 for calling a global function with example usage: test_concat() without return types