spoj#TRIOPT. Trigonometric optimization

Trigonometric optimization

Many problems arising in practical applications may be stated as optimization problems. Usually it is necessary to maximize or minimize so called criterion function taking into account some constraints.

Let’s consider a trigonometric optimization problem. It is necessary to maximize or to minimize criterion function F1(x) + F2(y) + F3(z) with constraint x + y + z = S, where x, y, z – variables, S – parameter, x, y, z, S - natural numbers. Each of the functions F1, F2 and F3 is a trigonometric function sin or cos.

You need to write a program which solves the trigonometric optimization problem.

Input

The first line of the input data contains integer T (1 ≤ T ≤ 65) - the number of testcases. Then the descriptions of T testcases follow.

The description of each testcase consists of 5 lines. The first line describes function F1 and contains either sin or cos. The second and the third lines describe functions F2 and F3 respectively and have the same format as the first line. Next, the fourth line contains either min or max. If the line contains min than it is necessary to minimize criterion function, otherwise it is necessary to maximize criterion function. Finally, the fifth line contains parameter S value (3 ≤ S ≤ 1 000 000).

Output

For each testcase you should output one line into the output data. This line should contain one real number – the found value of the criterion function. Absolute error of your answer must not exceed 10-10.

Example

Input:
1
sin
cos
sin
max
10

Output:
2.7787651403