code: def invgauss_pdf(x, mu):
      m = invgauss_mode(mu)
      lfm = -1.5 * math.log(m) - (m - mu) ** 2 / (2 * m * mu**2)
      if x > 0:
          return math.exp(
              -1.5 * math.log(x)
              - (x - mu) ** 2 / (2 * x * mu**2)
              - lfm
          )
      return 0.0
  
imports: import math
  import numbers
  import numpy
  from scipy import stats
  from scipy import special
  from ._qmc import check_random_state, Halton, QMCEngine
  from ._unuran.unuran_wrapper import NumericalInversePolynomial
  from scipy._lib._util import check_random_state
label_desc: Use image node_id 22 for calling a global function with example usage: invgauss_pdf(x, mu) and returns: int, math