docs: def _is_epsilon_nash(x, g, epsilon, indptr=None):
      """
      Determine whether `x` is an `epsilon`-Nash equilibrium of `g`.
  
      Parameters
      ----------
      x : array_like(float, ndim=1)
          Array of flattened mixed action profile of length equal to n_0 +
          ... + n_N-1, where `out[indptr[i]:indptr[i+1]]` contains player
          i's mixed action.
  
      g : NormalFormGame
  
      epsilon : scalar(float)
  
      indptr : array_like(int, ndim=1), optional(default=None)
          Array of index pointers of length N+1, where `indptr[0] = 0` and
          `indptr[i+1] = indptr[i] + n_i`. Created internally if None.
  
      Returns
      -------
      bool
  
      """
      if indptr is None:
          indptr = np.empty(g.N+1, dtype=int)
          indptr[0] = 0
          indptr[1:] = np.cumsum(g.nums_actions)
  
      action_profile = _get_action_profile(x, indptr)
      return g.is_nash(action_profile, tol=epsilon)