support.add(farthest);
EnclosingBall<S, P> savedBall = ball;
ball = moveToFrontBall(extreme, extreme.size(), support);
if (ball.getRadius() < savedBall.getRadius()) {
// this should never happen
throw new MathInternalError();
}
// it was an interesting point, move it to the front
// according to Gärtner's heuristic
extreme.add(0, farthest);