시간 제한메모리 제한제출정답맞힌 사람정답 비율
2 초 1024 MB21150.000%

문제

Джо --- электрик-ковбой. Как у всех ковбоев у него есть лассо, как всем электрикам ему иногда приходиться залезать на столбы, и как все он ленив.

Вот и сейчас ему поручили проверить два стоящих на расстоянии $d$ друг от друга столба высоты $h_1$ и $h_2$ соответственно. Чтобы убедиться, что все хорошо, Джо должен побывать на вершинах обоих столбов.

Электрик-ковбой посещает столбы следующим образом: сначала он выбирает один из столбов и просто взбирается на него. Выполнив все работы на вершине, он спускается по этому столбу на некоторую высоту (возможно до самой земли), достает свое лассо и цепляется им за некоторую точку второго столба (это может быть произвольная точка). После этого Джо прыгает и двигается вниз по дуге окружности с центром в точке, за которую зацепилось лассо, пока не достигнет либо другого столба, либо земли. 

При этом если от начальной позиции электрика до конца его полета высота изменяется более чем на $l$, то ковбой набирает слишком большую скорость, больно ударяется и попадает в больницу, так и не выполнив работу. Поэтому Джо всегда аккуратно выбирает параметры прыжка.

Если в результате прыжка Джо оказался на земле, он подходит к другому столбу и взбирается на него. Если же Джо оказался на столбе, то он взбирается на вершину из той точки, в которой он оказался.

Джо просит вас помочь ему выполнить работу, сообщив какое минимальное расстояние ему придется лезть вверх по столбам.

입력

Входной файл содержит четыре положительных целых числа: $d$, $h_1$, $h_2$ и $l$ --- расстояние между столбами, высоту первого и второго столбов и максимальный допустимый перепад высот при прыжке, соответственно. Все числа во входном файле не превышают $10^6$.

출력

Выведите ответ с максимальной возможной точностью. Ответ будет проверяться с точностью до $10^{-5}$.

예제 입력 1

5 5 5 5

예제 출력 1

10.00000

예제 입력 2

4 5 8 5

예제 출력 2

10.00000

예제 입력 3

4 8 5 1

예제 출력 3

13.00000

예제 입력 4

3 4 6 1

예제 출력 4

9.00000