#include using namespace std; int modinv(int a,int m){ a%=m; if((a-1)%m==0)return a; return(1-(long)m*modinv(m,a))/a; } paircrt_mod(vectorr,vectorm,int mod){ int n=r.size(); assert(m.size()==n); for(int i=1;ix(n+1),p(n+1,1); for(int i=0;i>n; vectorr(n),m(n); for(int i=0;i>r[i]>>m[i]; auto[x,l]=crt_mod(r,m,1000000007); if(l==0){cout<<-1<<'\n';return 0;} bool zero=1; for(int i=0;i0)zero=0; cout<<(zero?l:x)<<'\n'; }