code: def get_pba3d_src(
      block_size_3d=32,
      marker=-2147483648,
      max_int=2147483647,
      size_max=1024,
  ):
      pba3d_code = pba3d_defines_template.format(
          block_size_3d=block_size_3d, marker=marker, max_int=max_int
      )
      if size_max > 1024:
          pba3d_code += pba3d_defines_encode_64bit
      else:
          pba3d_code += pba3d_defines_encode_32bit
      kernel_directory = os.path.join(os.path.dirname(__file__), "cuda")
      with open(
          os.path.join(kernel_directory, "pba_kernels_3d.h"), "rt"
      ) as f:
          pba3d_kernels = "\n".join(f.readlines())
      pba3d_code += pba3d_kernels
      return pba3d_code
  
imports: import math
  import os
  import cupy
  import numpy
  from ._util import _get_inttype
  from ._pba_2d import _check_distances, _check_indices, _distance_tranform_arg_check, _generate_indices_ops, _generate_shape, _get_block_size, lcm
label_desc: Use image node_id 1 for calling a global function with example usage: get_pba3d_src(block_size_3d, marker, max_int, size_max) and returns: pba3d_code