code: def ihfft(a, n=None, axis=-1, norm=None):
      """Compute the FFT of a signal that has Hermitian symmetry.
  
      Args:
          a (cupy.ndarray): Array to be transform.
          n (None or int): Number of points along transformation axis in the
              input to use. If ``n`` is not given, the length of the input along
              the axis specified by ``axis`` is used.
          axis (int): Axis over which to compute the FFT.
          norm (``"backward"``, ``"ortho"``, or ``"forward"``): Optional keyword
              to specify the normalization mode. Default is ``None``, which is
              an alias of ``"backward"``.
  
      Returns:
          cupy.ndarray:
              The transformed array which shape is specified by ``n`` and type
              will convert to complex if the input is other. The length of the
              transformed axis is ``n//2+1``.
  
      .. seealso:: :func:`numpy.fft.ihfft`
      """
      return rfft(a, n, axis, _swap_direction(norm)).conj()
  
imports: import functools
  import math
  import numpy
  import cupy
  from cupy.fft import config
  from cupy.fft._cache import get_plan_cache
label_desc: Use image node_id 30 for calling a global function with example usage: ihfft(a, n, axis, norm) and returns: rfft