docs: def _update_u(u, W):
      """
      Update the threat points if it not feasible in the new W,
      by the minimum of new feasible payoffs.
  
      Parameters
      ----------
      u : ndarray(float, ndim=1)
          The threat points.
  
      W : ndarray(float, ndim=1)
          The points that construct the feasible payoff convex hull.
  
      Returns
      -------
      u : ndarray(float, ndim=1)
          The updated threat points.
      """
      for i in range(2):
          W_min = W[:, i].min()
          if u[i] < W_min:
              u[i] = W_min
  
      return u