#include<bits/stdc++.h>
#define int long long
using namespace std;
long long gcd(int u,int v){
return (v==0)?u:gcd(v,u%v);
}
void solve(int p1,int a1,int p2,int a2,int &p,int &a){
if(p1<p2)swap(p1,p2),swap(a1,a2);
int x=a1;
int g=gcd(p1,p2);
int l=p1/g*p2;
while(x<=l&&x%p2!=a2)x+=p1;
if(x>l)p=-1,a=-1;
else p=l,a=x;
}
int n,p[100005],a[100005];
signed main(){
scanf("%lld",&n);
for(int i=1;i<=n;i++){
scanf("%lld%lld",&p[i],&a[i]);
}
while(n>1){
solve(p[n-1],a[n-1],p[n],a[n],p[n-1],a[n-1]);
n--;
}
printf("%lld",a[1]-p[1]*(a[1]/p[1]));
}