Attention!
Attention! Someone has activated the mechanical nanny, and now it is chasing Pin, trying to envelop him with affection and care! In Pin's yard, there are n bunkers, and he would love to hide in one of them. However, each bunker has a very important and urgent task that he must attend to.
Pin needs your help to plan a route that allows him to visit each bunker exactly once and return to the starting point. He can begin his journey from any bunker.
Since Pin himself designed the nanny's interception program and assembled its engine, he knows he will be caught if he doesn't run in a straight line between bunkers or if he crosses or touches any segment of the path he has already traveled.
Input
The input file provides a description of Pin's yard.
The first line contains a single integer n (1 ≤ n ≤ 100000) representing the number of bunkers in Pin's yard.
The following n lines each contain two integers x_i and y_i (|x_i|, |y_i| ≤ 10^9), which are the coordinates of the entrance to the i-th bunker. The entrance is so small compared to the yard that it is considered a point. No two bunkers share the same coordinates.
Output
In the output file, print a permutation of n numbers indicating the order in which Pin should visit the bunkers. If no such route exists that allows Pin to avoid being caught by the nanny, print 'No solution'.