using System; class Program { static void Main() { string[] input = Console.ReadLine().Split(); long L1 = long.Parse(input[0]); long R1 = long.Parse(input[1]); long L2 = long.Parse(input[2]); long R2 = long.Parse(input[3]); long maxMod = 0; for (long B = L2; B <= R2; B++) { long A = Math.Min(R1, B - 1); if (A >= L1) { maxMod = Math.Max(maxMod, A % B); } A = R1; maxMod = Math.Max(maxMod, A % B); } Console.WriteLine(maxMod); } }