#include #include #include using namespace std; const int Mo=(int)1e9+7; int i,j,m,n,p,k,q,l,r,x,F[3005][3005],inv[300005]; struct Node{int x,y;}A[300005]; inline int power(int x,int y) { int sum=1; for (;y;y>>=1) { if (y&1) sum=1ll*sum*x%Mo; x=1ll*x*x%Mo; } return sum; } int main() { scanf("%d",&n); for (i=0;i<=250000;++i) inv[i]=power(i,Mo-2); for (i=1;i<=n;++i) scanf("%d%d",&A[i].x,&A[i].y),F[i][i]=A[i].y; for (i=1;i