code: def foldnorm_stats(self, c):
      arr, where, inf, sqrt, nan = (
          np.array,
          np.where,
          np.inf,
          np.sqrt,
          np.nan,
      )
      exp = np.exp
      pi = np.pi
  
      fac = special.erf(c / sqrt(2))
      mu = sqrt(2.0 / pi) * exp(-0.5 * c * c) + c * fac
      mu2 = c * c + 1 - mu * mu
      c2 = c * c
      g1 = (
          sqrt(2 / pi)
          * exp(-1.5 * c2)
          * (4 - pi * exp(c2) * (2 * c2 + 1.0))
      )
      g1 += (
          2
          * c
          * fac
          * (
              6 * exp(-c2)
              + 3 * sqrt(2 * pi) * c * exp(-c2 / 2.0) * fac
              + pi * c * (fac * fac - 1)
          )
      )
      g1 /= pi * mu2**1.5
  
      g2 = c2 * c2 + 6 * c2 + 3 + 6 * (c2 + 1) * mu * mu - 3 * mu**4
      g2 -= (
          4
          * exp(-c2 / 2.0)
          * mu
          * (
              sqrt(2.0 / pi) * (c2 + 2)
              + c * (c2 + 3) * exp(c2 / 2.0) * fac
          )
      )
      g2 /= mu2**2.0
      g2 -= 3.0
      return mu, mu2, g1, g2
  
file_path: statsmodels/statsmodels/sandbox/distributions/tests/test_transf.py
imports: import warnings
  import numpy
  from numpy.testing import assert_almost_equal
  from scipy import stats, special
  from statsmodels.sandbox.distributions.extras import squarenormalg, absnormalg, negsquarenormalg, squaretg
label_desc: Use image node_id 2 for calling a global function with example usage: foldnorm_stats(c) and returns: mu,  mu2,  g1,  g2