#include<bits/stdc++.h>
using namespace std;
map<int, int>vis;
int main(){
int a, b;
int d, c;
cin >> a >> b >> c >> d;
map<int, int>vis;
for (int i = 0; i <= 150; i++){
vis[b + a*i] = 1;
}
for (int i = 0; i <= 150; i++){
if (vis[d + c*i])
return cout << d + c*i << endl, 0;
}
puts("-1");
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKbWFwPGludCwgaW50PnZpczsKaW50IG1haW4oKXsKCglpbnQgYSwgYjsKCWludCBkLCBjOwoJY2luID4+IGEgPj4gYiA+PiBjID4+IGQ7CgkKCW1hcDxpbnQsIGludD52aXM7Cglmb3IgKGludCBpID0gMDsgaSA8PSAxNTA7IGkrKyl7CgkJdmlzW2IgKyBhKmldID0gMTsKCX0KCWZvciAoaW50IGkgPSAwOyBpIDw9IDE1MDsgaSsrKXsKCQlpZiAodmlzW2QgKyBjKmldKQoJCQlyZXR1cm4gY291dCA8PCBkICsgYyppIDw8IGVuZGwsIDA7Cgl9CglwdXRzKCItMSIpOwoJcmV0dXJuIDA7Cn0KCgoKCgo=