http://codeforces.com/problemset/problem/18/B
#include<stdio.h>
__int64 n,d,m,l,i=1,t;
int main()
{
scanf("%I64d%I64d%I64d%I64d",&n,&d,&m,&l);
for(i=0; i<n-1; i++)
if((i*m+l)/d*d+d<(i+1)*m)
break;
printf("%I64d\n",(i*m+l)/d*d+d);
return 0;
}