#include #include using namespace atcoder; using Mint = modint1000000007; int main(){ int L; scanf("%d", &L); Mint answer = Mint::raw(1); for (int _ = 0; _ < L; _++) { int P, E; scanf("%d %d", &P, &E); answer *= (Mint::raw(P)*(Mint::raw(P).pow(E+1) - Mint::raw(1)) - Mint::raw(P-1)*Mint::raw(E+1))/(Mint::raw(P-1).pow(2)); } printf("%u\n", answer.val()); }