Football Match
题号:NC237461
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
Special Judge, 64bit IO Format: %lld

题目描述

Drawing flags is a boring job. But it is nice to do this.

Given the coordinates of the point A and point B in the flag. You should output the coordinates of C, D, E, F, G, H, I, J, K, L, M and N.


The flag is looks like this:



Polygon EFGHIJKLMN is a regular five-pointed star (pentagram) and polygon ABCD is a rectangle. The center of the polygon EFGHIJKLMN and the polygon ABCD is the midpoint of the diagonal end points of the rectangle.
Line AB parallel to line JE.
It is possible to scale the flag down or scale the flag up when drawing. So it is possible that .
It is possible to rotate the flag when drawing. So it is possible that .

输入描述:

The first line contains a single integer t (), the number of test cases. Then t test cases follow.

Each line contains 4 integers x_A,y_A,x_B and y_B separated by a space --- the coordinates of the point A(x_A,y_A) and point B(x_B,y_B) ().

输出描述:

For each test case output 1 line.

Each line contains 24 real numbers x_C, y_C, x_D, y_D, x_E, y_E, x_F, y_F, x_G, y_G, x_H, y_H, x_I, y_I, x_J, y_J, x_K, y_K, x_L, y_L, x_M, y_M, x_N and y_N separated by space --- the coordinates of the point C(x_C,y_C), point D(x_D,y_D), point E(x_E,y_E), point F(x_F,y_F), point G(x_G,y_G), point H(x_H,y_H), point I(x_I,y_I), point J(x_J,y_J), point K(x_K,y_K), point L(x_L,y_L), point M(x_M,y_M) and point N(x_N,y_N).
示例1

输入

复制
1
0 0 0 20

输出

复制
30.000000 20.000000 30.000000 -0.000000 15.000000 16.000000 16.347084 11.854102 20.706339 11.854102 17.179628 9.291796 18.526712 5.145898 15.000000 7.708204 11.473288 5.145898 12.820372 9.291796 9.293661 11.854102 13.652916 11.854102

备注:

Your answer will be considered correct if its absolute or relative error does not exceed . Formally let your answer be a and jury's answer be b. Your answer will be considered correct if .