import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {

		try {
			BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
			String[] input = bf.readLine().split(" ");
			
			int n = Integer.parseInt(input[0]);
			int m = Integer.parseInt(input[1]);
			
			int l0=0;
			int r0=100000;
			String in;
			
			while( (in = bf.readLine()) != null ){
				if ( in.trim().length() ==  0 ) break;
				input = in.split(" ");
				int l = Integer.parseInt(input[0]);
				if (l>l0) l0=l;
				int r = Integer.parseInt(input[1]);
				if (r<r0) r0=r;
			}
			if(r0-l0+1<0){
				System.out.println(0);
			}else{
				System.out.println(r0-l0+1);
			}
		}
		catch(Exception e){
			e.printStackTrace();
		}
	}
}
/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