#include<bits/stdc++.h>
using namespace std;
__int128 n,a[100005],b[100005],c[100005],m[100005];
__int128 mul=1,ans;
__int128 x,y;
inline void input(__int128 &s){
s=0;
char c=' ';
while(c>'9'||c<'0') c=getchar();
while(c>='0'&&c<='9')
{
s=s*10+c-'0';
c=getchar();
}
}
inline void output(__int128 x){
if(x>9)output(x/10);
putchar(x%10+'0');
}
void exgcd(__int128 a,__int128 b){
if(b==0){
x=1;
y=0;
return;
}
exgcd(b,a%b);
__int128 t=x;
x=y;
y=t-a/b*y;
return;
}
int main(){
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
input(n);
for(int i=1;i<=n;i++){
input(b[i]);
}
for(int i=1;i<=n;i++){
input(a[i]);
mul*=a[i];
b[i]=(b[i]%a[i]+a[i])%a[i];
}
for(int i=1;i<=n;i++){
m[i]=mul/a[i];
exgcd(m[i],a[i]);
x=(x%a[i]+a[i])%a[i];
c[i]=m[i]*x;
}
for(int i=1;i<=n;i++){
ans+=b[i]*c[i];
ans%=mul;
}
output(ans);
return 0;
}