#include using namespace std; typedef long long ll; #define REP(i, n) for(int(i)=0;(i)<(n);++(i)) #define FOR(i, f, t) for(int(i)=(f);(i)<(t);(++i)) ll gcd(ll n, ll m){return m?gcd(m,n%m):n;} ll lcm(ll n, ll m){return n/gcd(n,m)*m;} int main(){ ll x1,y1,x2,y2,x3,y3; cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3; // a = x1 + y1 * b1 // = x2 + y2 * b2 // = x3 + y3 * b3 ll a = x1; REP(i,y2+1){ if(a % y2 == x2) break; a += y1; } ll y = lcm(y1,y2); REP(i,y3+1){ if(a % y3 == x3) break; a += y; } if(a % y1 != x1 || a % y2 != x2 || a % y3 != x3){ cout << -1 << endl; return 0; } if(a == 0) a = lcm(y,y3); cout << a << endl; }