n, m, err = gets.to_i, gets.to_i, false

s = m

n.times do
  in_car, out_car = gets.split.map(&:to_i)
  
  m += in_car - out_car
  
  if m < 0
    err = true
  else
    s = [s, m].max
  end
end

puts err ? 0 : s