code: def chisqprob(x, df):
      
      if x <= 0:
          return 1.0
      if x == 0:
          return 0.0
      if df <= 0:
          raise ValueError("Domain error.")
      if x < 1.0 or x < df:
          return 1.0 - _igam(0.5*df, 0.5*x)
      return _igamc(0.5*df, 0.5*x)
docs: Probability value (1-tail) for the Chi^2 probability distribution.
  
      Broadcasting rules apply.
  
      Parameters
      ----------
      x : array_like or float > 0
  
      df : array_like or float, probably int >= 1
  
      Returns
      -------
      chisqprob : ndarray
          The area from `chisq` to infinity under the Chi^2 probability
          distribution with degrees of freedom `df`.