code: def test_axis_semantic_change():
      x = relay.var("x", shape=(1, 1, 24, 48))
      w1 = relay.const(np.random.uniform(size=(1, 1, 1, 1)))
      w2 = relay.const(np.random.uniform(size=(1, 1, 1, 1)))
      y = relay.nn.conv2d(
          x, w1, kernel_size=(1, 1), padding=(0, 0), channels=1
      )
      y = relay.transpose(y, (0, 1, 3, 2))
      z = relay.nn.conv2d(
          y, w2, kernel_size=(1, 1), padding=(0, 0), channels=1
      )
      func = relay.Function([x], z)
      mod = tvm.IRModule.from_expr(func)
      with tvm.transform.PassContext(opt_level=3):
          relay.build(mod, target="llvm")
  
imports: import pytest
  import tvm
  from tvm import relay, topi
  from tvm.relay import transform, analysis
  from tvm.relay.testing.temp_op_attr import TempOpAttr
  from tvm.relay.testing import run_infer_type
  import numpy
  import tvm.testing
  from tvm.relay import testing
label_desc: Use image node_id 38 for calling a global function with example usage: test_axis_semantic_change() without return types