N, M = gets.split(" ").map(&:to_i)
LR = []
M.times do |m|
    LR.append(gets.split(" ").map(&:to_i))
end

l_max = 0
r_min = 110000

LR.each do |lr|
    l_max = [l_max, lr[0]].max
    r_min = [r_min, lr[1]].min
end

if r_min - l_max < 0
    puts 0
else
    puts r_min - l_max + 1
end