private final static int findLowest(List<Point> p) {
		int min = 0;
		for (int i = 1; i < p.size(); i++)
			if (p.get(i).y < p.get(min).y || p.get(i).y == p.get(min).y && p.get(i).x < p.get(min).x)
				min = i;
		return min;
	}