n = gets.to_i
p = Array.new(n) { gets.split.map(&:to_i) }

u = p[0][0]
v = p[0][1]
max = i = 0

p.each_with_index do |(x, y), idx|
  tmp = (u - x).abs + (v - y).abs
  if tmp > max
    i = idx
    max = tmp
  end
end

u = p[i][0]
v = p[i][1]
tmp = i = max = 0
p.each_with_index do |(x, y), idx|
  tmp = (u - x).abs + (v - y).abs
  if tmp > max
    i = idx
    max = tmp
  end
end

puts (u - p[i][0]).abs + (v - p[i][1]).abs
