/*
TASK:crossing
LANG:C++
*/

#include<stdio.h>
#include<math.h>

#define STEPS 1500000

double w, s, a, b;

double secs(double s1) {
	return s1/b + sqrt(w*w/4+(s-s1)*(s-s1)/4)/a*2;
}

int main() {
	scanf("%lf%lf%lf%lf", &w, &s, &a, &b);
	//
	double step = s/STEPS;
	double min = 999999999;
	for(double k = 0; k <= s; k += step) {
		min <?= secs(k);
	}
	//
	int hrs = (int)floor(min);
	min -= floor(min);
	min *= 60;
	int mins = (int)floor(min);
	min -= floor(min);
	min *= 60;
	int secs = (int)round(min);
	printf("%d:%d:%d\n", hrs, mins, secs);
	return 0;
}
