**Time limit:**1.00 s**Memory limit:**512 MB

Given a set of n points in the two-dimensional plane, your task is to determine the convex hull of the points.

# Input

The first input line has an integer n: the number of points.

After this, there are n lines that describe the points. Each line has two integers x and y: the coordinates of a point.

You may assume that each point is distinct, and the area of the hull is positive.

# Output

First print an integer k: the number of points in the convex hull.

After this, print k lines that describe the points. You can print the points in any order. Print all points that lie on the convex hull.

# Constraints

- 3 \le n \le 2 \cdot 10^5
- -10^9 \le x, y \le 10^9

# Example

Input:

6 2 1 2 5 3 3 4 3 4 4 6 3

Output:

4 2 1 2 5 4 4 6 3