#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; int main() { int32_t n; cin >> n; vector as(n + 1), bs(n + 1); for (auto i = 0; i <= n; ++i) { cin >> as[i]; } for (auto i = 0; i <= n; ++i) { cin >> bs[i]; } const auto MOD = int64_t(1e9) + 7; vector acc(n + 1); acc[0] = as[0]; for (auto i = 0; i < n; ++i) { acc[i + 1] = (as[i + 1] + acc[i]) % MOD; } int64_t ans = 0; for (auto i = 0; i <= n; ++i) { ans = (ans + (bs[i] * acc[n - i]) % MOD) % MOD; } cout << ans << endl; return 0; }