Rating changes for the last round are temporarily rolled back. They will be returned soon. ×

#### 308. Hyperboloid Distance

Time limit per test: 0.5 second(s)
Memory limit: 65536 kilobytes
input: standard
output: standard

You are given two points A and B on the surface of the hyperboloid x2+y2-z2=1. Find the shortest distance between them along the surface.

Input
The input file contains six real numbers: xA, yA, zA, xB, yB and zB (coordinates of A and B), separated by spaces and/or line breaks (-1 ≤ zA, zB ≤ 1).

Output
Output the shortest distance between A and B along the surface of the hyperboloid. Your answer should be accurate within +-0.1.

Example(s)
 sample input sample output 1 0 0 0 1 0  1.5707963267