import java.util.*;

class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        
        int A = Integer.parseInt(sc.next());
        int B = Integer.parseInt(sc.next());
        int C = Integer.parseInt(sc.next());
        int D = Integer.parseInt(sc.next());
        
        Map<Integer, Integer> map = new HashMap<Integer, Integer>();
        for(int i=A; i<B; i++){
            map.put(i, 1);
        }
        
        int ans = 0;
        for(int i=C; i<D; i++){
            if(map.get(i) != null){
                ans++;
            }
        }
        
        System.out.println(ans);
    }
} import java.util.*; util.* java class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        
        int A = Integer.parseInt(sc.next());
        int B = Integer.parseInt(sc.next());
        int C = Integer.parseInt(sc.next());
        int D = Integer.parseInt(sc.next());
        
        Map<Integer, Integer> map = new HashMap<Integer, Integer>();
        for(int i=A; i<B; i++){
            map.put(i, 1);
        }
        
        int ans = 0;
        for(int i=C; i<D; i++){
            if(map.get(i) != null){
                ans++;
            }
        }
        
        System.out.println(ans);
    }
} Main public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        
        int A = Integer.parseInt(sc.next());
        int B = Integer.parseInt(sc.next());
        int C = Integer.parseInt(sc.next());
        int D = Integer.parseInt(sc.next());
        
        Map<Integer, Integer> map = new HashMap<Integer, Integer>();
        for(int i=A; i<B; i++){
            map.put(i, 1);
        }
        
        int ans = 0;
        for(int i=C; i<D; i++){
            if(map.get(i) != null){
                ans++;
            }
        }
        
        System.out.println(ans);
    } main {
        Scanner sc = new Scanner(System.in);
        
        int A = Integer.parseInt(sc.next());
        int B = Integer.parseInt(sc.next());
        int C = Integer.parseInt(sc.next());
        int D = Integer.parseInt(sc.next());
        
        Map<Integer, Integer> map = new HashMap<Integer, Integer>();
        for(int i=A; i<B; i++){
            map.put(i, 1);
        }
        
        int ans = 0;
        for(int i=C; i<D; i++){
            if(map.get(i) != null){
                ans++;
            }
        }
        
        System.out.println(ans);
    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int A = Integer.parseInt(sc.next()); A Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int B = Integer.parseInt(sc.next()); B Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int C = Integer.parseInt(sc.next()); C Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int D = Integer.parseInt(sc.next()); D Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc Map<Integer, Integer> map = new HashMap<Integer, Integer>(); map new HashMap<Integer, Integer>() for(int i=A; i<B; i++){
            map.put(i, 1);
        } int i=A; int i=A; i A i<B i B i++ i++ i {
            map.put(i, 1);
        } {
            map.put(i, 1);
        } map.put(i, 1) map.put map i 1 int ans = 0; ans 0 for(int i=C; i<D; i++){
            if(map.get(i) != null){
                ans++;
            }
        } int i=C; int i=C; i C i<D i D i++ i++ i {
            if(map.get(i) != null){
                ans++;
            }
        } {
            if(map.get(i) != null){
                ans++;
            }
        } if(map.get(i) != null){
                ans++;
            } map.get(i) != null map.get(i) map.get map i null {
                ans++;
            } ans++ ans System.out.println(ans) System.out.println System.out System System.out ans String[] args args
import java.util.*;

class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        
        int A = Integer.parseInt(sc.next());
        int B = Integer.parseInt(sc.next());
        int C = Integer.parseInt(sc.next());
        int D = Integer.parseInt(sc.next());
        
        Map<Integer, Integer> map = new HashMap<Integer, Integer>();
        for(int i=A; i<B; i++){
            map.put(i, 1);
        }
        
        int ans = 0;
        for(int i=C; i<D; i++){
            if(map.get(i) != null){
                ans++;
            }
        }
        
        System.out.println(ans);
    }
}