Disassembly Direction

Time Limit: 1 Second    Memory Limit: 32768 KB
Special Judge

Disassembly is a sub-phase of Assembly Sequence Planning. When we initiate a removal from a sub-assembly, we usually start with a list of constraints between the sub-assembly to be removed and the remaining part. Those constraints typically contain some surface-pairs.

When you remove the sub-assembly away, you can only move along the direction set by the normal of the surface. The range of the possible disassembly direction is a (closed) half sphere.

When there are several such constraints, you have to satisfy all of them, or it is impossible to remove this sub-assembly.

Given a list of constraints, you are to judge weather it is possible to remove the sub-assembly. If it is possible, you will give a possible disassembly direction.

Input

Input contains multiple tests. Each tests start with a positive integer n (n < 100), the number of constraints to follow. A case with n = 0 indicates the end of input. This case is not to be processed.

The following n lines contain one vector each line, in the form of x y z. This is the normal of the surface and will not be zero.

Output

Output one line for each case. If there exists a possible disassembly direction, you can output any one, in the form of three floating numbers separated by a single space. Print "Impossible" otherwise.

Sample Input

2
0 0 1
1 0 0
6
0 0 1
0 1 0
1 0 0
-1 0 0
0 -1 0
0 0 -1
0

Sample Output

1 0 1
Impossible
Submit

Source: ZOJ Monthly, September 2003