n, m = gets.split.map(&:to_i)
xn = gets.split.map(&:to_i)
yn = gets.split.map(&:to_i)
width = xn.last - xn.first
height = yn.last - yn.first
M = (10**9) + 7

a = yn.each_cons(2).map.with_index(1) { |(i,j),y| (j-i) * width * y * (m - y) }.inject(:+)
a += xn.each_cons(2).map.with_index(1) { |(i,j),x| (j-i) * height * x * (n - x) }.inject(:+)
p a % M
