code: def typeof_group(val, c):
      """
      Tie Group and GroupType together such that when Numba
      sees usage of Group in raw python code, it knows to
      treat those usages as uses of GroupType
      """
      return GroupType(
          numba.np.numpy_support.from_dtype(val.dtype),
          numba.np.numpy_support.from_dtype(val.index_dtype),
      )
  
imports: from typing import Any, Dict
  import numba
  from numba import cuda, types
  from numba.core.extending import make_attribute_wrapper, models, register_model, type_callable, typeof_impl
  from numba.core.typing import signature
  from numba.core.typing.templates import AbstractTemplate, AttributeTemplate
  from numba.cuda.cudadecl import registry
  from numba.np import numpy_support
  from cudf.core.udf._ops import arith_ops, comparison_ops, unary_ops
  from cudf.core.udf.utils import Row, UDFError
label_desc: Use image node_id 1 for calling a global function with example usage: typeof_group(val, c) and returns: GroupType