import java.io.BufferedReader;
import java.io.InputStreamReader;
 
public class Main {
    public static void main(String[] args) throws Exception {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String line = br.readLine();
		String[] number = line.split(" ");
		int a = Integer.parseInt(number[0]);
		int b = Integer.parseInt(number[1]);
		int c = Integer.parseInt(number[2]);
		int d = Integer.parseInt(number[3]);
		int r = 0;
		if(a <= c) {
			if(c < b) {
			    if(b <= d) {
				    r = b - c;
				    System.out.println(r);
			    } else if(d < b) {
			        r = d - c;
			        System.out.println(r);
			    }
			} else if(b <= c) {
				System.out.println(r);
			}
		} else if(c < a) {
			if(a < d) {
				if(d <= b) {
				    r = d - a;
				    System.out.println(r);
			    } else if(b < d) {
			        r = b - a;
			        System.out.println(r);
			    }
			} else if(d <= a) {
				System.out.println(r);
			}
		}
	}
}
/tmp/hf-datasets-cache/medium/datasets/42704881117311-config-parquet-and-info-qiankunmu-Project_CodeNet-896c9d36/hub/datasets--qiankunmu--Project_CodeNet_Python800_and_Java250/snapshots/c899fde44a77ba1cc14973ed3de064e4ff3aadc7/Project_CodeNet_Java250.tar.gz