Движением называют преобразование плоскости, сохраняющее расстояния между точками, то есть если A1 и B1 – образы точек A и B при движении, то |A1B1| = |AB|.
Одной из разновидностей движения является скользящая симметрия. Скользящей симметрией называют композицию симметрии относительно некоторой прямой l и переноса на вектор, параллельный l (этот вектор может быть нулевым). На рисунке показан пример применения скользящей симметрии к отрезку.
ЗДЕСЬ БУДЕТ РИСУНОК
Известно, что любой отрезок можно перевести в любой другой отрезок такой же длины с помощью скользящей симметрии.
Требуется по координатам двух различных точек A и B и двух точек A1 и B1, находящихся на таком же расстоянии, найти скользящую симметрию, переводящую точку A в точку A1, а точку B в точку B1.
В первой строке входного файла находятся четыре целых числа – координаты двух различных точек A и В. Во второй строке также находятся четыре целых числа – координаты двух различных точек A1 и В1. Гарантируется, что |A1B1| = |AB|. Все числа во входном файле по модулю не превышают 1000.
Выведите в выходной файл описание искомой скользящей симметрии.
В первой строке выведите координаты двух различных точек, лежащих на прямой l, относительно которой выполняется симметрия, а во второй – координаты вектора, параллельного этой прямой, на который осуществляется перенос. Выводите вещественные числа не менее чем с 6 знаками после десятичной точки.