code: def iscomplex(x):
      """Returns a bool array, where True if input element is complex.
  
      What is tested is whether the input has a non-zero imaginary part, not if
      the input type is complex.
  
      Args:
          x (cupy.ndarray): Input array.
  
      Returns:
          cupy.ndarray: Boolean array of the same shape as ``x``.
  
      .. seealso::
          :func:`isreal`, :func:`iscomplexobj`
  
      Examples
      --------
      >>> cupy.iscomplex(cupy.array([1+1j, 1+0j, 4.5, 3, 2, 2j]))
      array([ True, False, False, False, False,  True])
  
      """
      if numpy.isscalar(x):
          return numpy.iscomplex(x)
      if not isinstance(x, cupy.ndarray):
          return cupy.asarray(numpy.iscomplex(x))
      if x.dtype.kind == "c":
          return x.imag != 0
      return cupy.zeros(x.shape, bool)
  
imports: import numpy
  import cupy
label_desc: Use image node_id 1 for calling a global function with example usage: iscomplex(x) and returns: cupy, numpy, cupy, unknown