#include using namespace std; using ll = long long; const ll mod = 1000000007; const int INF = 1001001001; ll gcd(ll a, ll b){return (b == 0 ? a : gcd(b, a % b));} ll lcm(ll a, ll b){return a / gcd(a, b) * b;} void solve() { int n, m; std::cin >> n >> m; std::vector xs(n), ys(m); for (auto& x : xs) std::cin >> x; for (auto& y : ys) std::cin >> y; ll ans = 0; for (ll a : xs) { for (ll b : ys) { ans += a * b % mod + a - b + gcd(a, b); ans %= mod; } } std::cout << ans << "\n"; } int main(){ solve(); }