@Override
        public int compareTo(Point o) {
            if (x == o.x && y == o.y)
                return 0;
            if (x == o.x)
                return y < o.y ? -1 : 1;
            return x < o.x ? -1 : 1;
        }