#include <bits/stdc++.h>
#include "horses.h"
using namespace std;
using i64 = long long;
constexpr int mod = 1e9 + 7;
int n;
vector<int> x, y;
vector<i64> p, a;
int solve() {
p[0] = x[0];
a[0] = x[0] * y[0] % mod;
for (int i = 1; i < n; i++) {
p[i] = p[i - 1] * x[i] % mod;
a[i] = p[i] * y[i] % mod;
}
return ranges::max(a);
}
int init(int N, int X[], int Y[]) {
n = N;
x.assign(X, X + N);
y.assign(Y, Y + N);
p.resize(n);
a.resize(n);
return solve();
}
int updateX(int pos, int val) {
x[pos] = val;
return solve();
}
int updateY(int pos, int val) {
y[pos] = val;
return solve();
}