// Mochi Kasato - MKasato
// FB: https://w...content-available-to-author-only...k.com/mochikasato/
// Problem link: (không cần, bài này sao phải chấm:v)
#include <bits/stdc++.h>
#define boostcode ios_base::sync_with_stdio(0); cin.tie(0);
#define openf if (fopen("test.inp", "r")) {freopen("test.inp", "r", stdin); freopen("test.out", "w", stdout);}
#define fi first
#define se second
#define pb(x) push_back(x)
using namespace std;
typedef long long ll;
typedef pair<int, int> pii;
#define y1 ymot
int x1, y1, x2, y2;
int main() {
boostcode;
// openf;
cin >> x1 >> y1 >> x2 >> y2;
ll mau = (ll)y1*y2;
ll tu = (ll)x1*y2 + (ll)x2*y1;
ll ucln = __gcd(tu, mau);
tu /= ucln;
mau /= ucln;
cout << tu << ' ' << mau;
return 0;
}
/* TESTS:
Test 1:
3 6
-->
67
Test 2:
-->
Test 3:
-->
Test 4:
-->
*/
Ly8gTW9jaGkgS2FzYXRvIC0gTUthc2F0bwovLyBGQjogaHR0cHM6Ly93Li4uY29udGVudC1hdmFpbGFibGUtdG8tYXV0aG9yLW9ubHkuLi5rLmNvbS9tb2NoaWthc2F0by8KLy8gUHJvYmxlbSBsaW5rOiAoa2jDtG5nIGPhuqduLCBiw6BpIG7DoHkgc2FvIHBo4bqjaSBjaOG6pW06dikKI2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgYm9vc3Rjb2RlIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7IGNpbi50aWUoMCk7CiNkZWZpbmUgb3BlbmYgaWYgKGZvcGVuKCJ0ZXN0LmlucCIsICJyIikpIHtmcmVvcGVuKCJ0ZXN0LmlucCIsICJyIiwgc3RkaW4pOyBmcmVvcGVuKCJ0ZXN0Lm91dCIsICJ3Iiwgc3Rkb3V0KTt9CiNkZWZpbmUgZmkgZmlyc3QKI2RlZmluZSBzZSBzZWNvbmQKI2RlZmluZSBwYih4KSBwdXNoX2JhY2soeCkKCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnR5cGVkZWYgbG9uZyBsb25nIGxsOwp0eXBlZGVmIHBhaXI8aW50LCBpbnQ+IHBpaTsKI2RlZmluZSB5MSB5bW90CgppbnQgeDEsIHkxLCB4MiwgeTI7CgppbnQgbWFpbigpIHsKICAgIGJvb3N0Y29kZTsKLy8gICAgb3BlbmY7CgogICAgY2luID4+IHgxID4+IHkxID4+IHgyID4+IHkyOwogICAgbGwgbWF1ID0gKGxsKXkxKnkyOwogICAgbGwgdHUgPSAobGwpeDEqeTIgKyAobGwpeDIqeTE7CiAgICBsbCB1Y2xuID0gX19nY2QodHUsIG1hdSk7CiAgICB0dSAvPSB1Y2xuOwogICAgbWF1IC89IHVjbG47CiAgICBjb3V0IDw8IHR1IDw8ICcgJyA8PCBtYXU7CgogICAgcmV0dXJuIDA7Cn0KLyogVEVTVFM6ClRlc3QgMToKMyA2Ci0tPgo2NwpUZXN0IDI6CgotLT4KClRlc3QgMzoKCi0tPgoKVGVzdCA0OgoKLS0+CgoqLwo=