code: def thread_bound_nested_block(
      A: T.Buffer((16, 16, 16, 16), "float32"),
      B: T.Buffer((16, 16, 16), "float32"),
  ) -> None:
      for i in T.serial(16):
          for j in T.thread_binding(16, thread="blockIdx.x"):
              with T.block("outer"):
                  vi, vj = T.axis.remap("SS", [i, j])
                  for k in T.serial(16):
                      for l in T.thread_binding(
                          16, thread="threadIdx.x"
                      ):
                          with T.block("inner"):
                              vk, vl = T.axis.remap("SR", [k, l])
                              with T.init():
                                  B[vi, vj, vk] = T.float32(0)
                              B[vi, vj, vk] = (
                                  B[vi, vj, vk] + A[vi, vj, vk, vl]
                              )
  
imports: import sys
  import pytest
  import tvm
  import tvm.testing
  from tvm import tir
  from tvm.script import tir
  from tvm.tir.schedule.testing import verify_trace_roundtrip, assert_structural_equal_ignore_global_symbol
label_desc: Use image node_id 22 for calling a global function with example usage: thread_bound_nested_block(A, B) without return types