n, m = gets.split.map(&:to_i)

ary = []
m.times do |i|
 if i == 0
   range = gets.split.map(&:to_i)
   ary = (range[0]..range[1]).to_a
 else
   range = gets.split.map(&:to_i)
   ary = ary & (range[0]..range[1]).to_a
 end
end
p ary.size