code: def hypergeometric(ngood, nbad, nsample, size=None, dtype=int):
      """hypergeometric distribution.
  
      Returns an array of samples drawn from the hypergeometric distribution. Its
      probability mass function is defined as
  
      .. math::
          f(x) = \\frac{\\binom{m}{n}\\binom{N-m}{n-x}}{\\binom{N}{n}}.
  
      Args:
          ngood (int or array_like of ints): Parameter of the hypergeometric
              distribution :math:`n`.
          nbad (int or array_like of ints): Parameter of the hypergeometric
              distribution :math:`m`.
          nsample (int or array_like of ints): Parameter of the hypergeometric
              distribution :math:`N`.
          size (int or tuple of ints): The shape of the array. If ``None``, a
              zero-dimensional array is generated.
          dtype: Data type specifier. Only :class:`numpy.int32` and
              :class:`numpy.int64` types are allowed.
  
      Returns:
          cupy.ndarray: Samples drawn from the hypergeometric distribution.
  
      .. seealso::
          :func:`numpy.random.hypergeometric`
      """
      rs = _generator.get_random_state()
      return rs.hypergeometric(ngood, nbad, nsample, size, dtype)
  
imports: from cupy.random import _generator
  from cupy import _util
label_desc: Use image node_id 10 for calling a global function with example usage: hypergeometric(ngood, nbad, nsample, size, dtype) and returns: rs