code: def test_raw_grid_3D(self):
      @jit.rawkernel()
      def f(arr1, arr2, k, m, n):
          x, y, z = jit.grid(3)
          if x < k and y < m and z < n:
              arr2[x, y, z] = arr1[x, y, z]
  
      l, m, n = (2, 3, 4)
      x = cupy.arange(24).reshape(l, m, n)
      y = cupy.empty_like(x)
      f(
          ((l + 1) // 2, (m + 1) // 2, (n + 1) // 2),
          (2, 2, 2),
          (x, y, l, m, n),
      )
      assert (x == y).all()
  
imports: import numpy
  import pytest
  import cupy
  from cupyx import jit
  from cupy import testing
  from cupy.cuda import device
  from cupy.cuda import runtime
label_desc: Use image node_id 3 for calling the TestRaw obj's underlying member method code with example usage: obj.test_raw_grid_3D() without return types