/*
==> Don't stop when you're tired, stop when you're done.
==> Don't forget from the river to the sea palestine will be free
--> @author: MIDORIYA_
*/
//*==============================================================
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef double db;
typedef long double ld;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;
typedef vector<int> vi;
typedef vector<ll> vll;
typedef vector<db> vd;
typedef vector<ld> vld;
typedef vector<bool> vb;
typedef vector<vector<ll>> vvl;
typedef vector<vector<int>> vvi;
typedef vector<pii> vii;
typedef set<int> si;
typedef set<ll> sl;
#define pb push_back
#define all(x) x.begin(), x.end()
#define rall(x) x.rbegin(), x.rend()
#define endl "\n"
const ll MOD = 998244353, mod = 1e9 + 7, maxA = 1e5 + 5;
#define time cerr << "Time Taken: " << (float)clock() / CLOCKS_PER_SEC << " Secs" << endl;
//*===================>>>Fast-IO-Functions<<<=================
void fastIO()
{
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
}
//*===================>>>File-IO-Functions<<<=================
void fileIO()
{
#ifndef ONLINE_JUDGE
freopen("in.txt", "r", stdin);
freopen("out.txt", "w", stdout);
#endif
}
//*===================>>>ONE-FOR-ALL-Function<<<==============
void OneForAll()
{
ll M, N, P, Q;
cin >> M >> N >> P >> Q;
bool flag = false;
ll given = 2LL * M * N, target = 1LL * P * Q;
if (given < target)
{
flag = false;
}
if ((P <= 2 * M and Q <= N) || (P <= M and Q <= 2 * N))
{
flag = true;
}
if ((Q <= 2 * M and P <= N) || (Q <= M and P <= 2 * N))
{
flag = true;
}
cout << (flag ? to_string(given - target) : "IMPOSSIBLE") << endl;
}
int main()
{
fastIO();
fileIO();
ll tc = 1;
// cin >> tc;
// factorial(mod);
while(tc--)
{
// cout << "Case " << i << ": ";
OneForAll();
}
time;
return 0;
}
LyoKPT0+IERvbid0IHN0b3Agd2hlbiB5b3UncmUgdGlyZWQsIHN0b3Agd2hlbiB5b3UncmUgZG9uZS4KPT0+IERvbid0IGZvcmdldCBmcm9tIHRoZSByaXZlciB0byB0aGUgc2VhIHBhbGVzdGluZSB3aWxsIGJlIGZyZWUgCi0tPiBAYXV0aG9yOiBNSURPUklZQV8KKi8KLy8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KI2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnR5cGVkZWYgbG9uZyBsb25nIGxsOwp0eXBlZGVmIGRvdWJsZSBkYjsKdHlwZWRlZiBsb25nIGRvdWJsZSBsZDsKdHlwZWRlZiBwYWlyPGludCwgaW50PiBwaWk7CnR5cGVkZWYgcGFpcjxsbCwgbGw+IHBsbDsKdHlwZWRlZiB2ZWN0b3I8aW50PiB2aTsKdHlwZWRlZiB2ZWN0b3I8bGw+IHZsbDsKdHlwZWRlZiB2ZWN0b3I8ZGI+IHZkOwp0eXBlZGVmIHZlY3RvcjxsZD4gdmxkOwp0eXBlZGVmIHZlY3Rvcjxib29sPiB2YjsKdHlwZWRlZiB2ZWN0b3I8dmVjdG9yPGxsPj4gdnZsOwp0eXBlZGVmIHZlY3Rvcjx2ZWN0b3I8aW50Pj4gdnZpOwp0eXBlZGVmIHZlY3RvcjxwaWk+IHZpaTsKdHlwZWRlZiBzZXQ8aW50PiBzaTsKdHlwZWRlZiBzZXQ8bGw+IHNsOwojZGVmaW5lIHBiIHB1c2hfYmFjawojZGVmaW5lIGFsbCh4KSB4LmJlZ2luKCksIHguZW5kKCkKI2RlZmluZSByYWxsKHgpIHgucmJlZ2luKCksIHgucmVuZCgpCiNkZWZpbmUgZW5kbCAiXG4iCmNvbnN0IGxsIE1PRCA9IDk5ODI0NDM1MywgbW9kID0gMWU5ICsgNywgbWF4QSA9IDFlNSArIDU7CiNkZWZpbmUgdGltZSBjZXJyIDw8ICJUaW1lIFRha2VuOiAiIDw8IChmbG9hdCljbG9jaygpIC8gQ0xPQ0tTX1BFUl9TRUMgPDwgIiBTZWNzIiA8PCBlbmRsOwovLyo9PT09PT09PT09PT09PT09PT09Pj4+RmFzdC1JTy1GdW5jdGlvbnM8PDw9PT09PT09PT09PT09PT09PQp2b2lkIGZhc3RJTygpCnsKICAgIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogICAgY2luLnRpZShudWxscHRyKTsKICAgIGNvdXQudGllKG51bGxwdHIpOwp9Ci8vKj09PT09PT09PT09PT09PT09PT0+Pj5GaWxlLUlPLUZ1bmN0aW9uczw8PD09PT09PT09PT09PT09PT09CnZvaWQgZmlsZUlPKCkKewojaWZuZGVmIE9OTElORV9KVURHRQogICAgZnJlb3BlbigiaW4udHh0IiwgInIiLCBzdGRpbik7CiAgICBmcmVvcGVuKCJvdXQudHh0IiwgInciLCBzdGRvdXQpOwojZW5kaWYKfQovLyo9PT09PT09PT09PT09PT09PT09Pj4+T05FLUZPUi1BTEwtRnVuY3Rpb248PDw9PT09PT09PT09PT09PQp2b2lkIE9uZUZvckFsbCgpCnsKICAgIGxsIE0sIE4sIFAsIFE7CiAgICBjaW4gPj4gTSA+PiBOID4+IFAgPj4gUTsKCiAgICBib29sIGZsYWcgPSBmYWxzZTsKICAgIGxsIGdpdmVuID0gMkxMICogTSAqIE4sIHRhcmdldCA9IDFMTCAqIFAgKiBROwogICAgaWYgKGdpdmVuIDwgdGFyZ2V0KQogICAgewogICAgICAgIGZsYWcgPSBmYWxzZTsKICAgIH0KCiAgICBpZiAoKFAgPD0gMiAqIE0gYW5kIFEgPD0gTikgfHwgKFAgPD0gTSBhbmQgUSA8PSAyICogTikpCiAgICB7CiAgICAgICAgZmxhZyA9IHRydWU7CiAgICB9CgogICAgaWYgKChRIDw9IDIgKiBNIGFuZCBQIDw9IE4pIHx8IChRIDw9IE0gYW5kIFAgPD0gMiAqIE4pKQogICAgewogICAgICAgIGZsYWcgPSB0cnVlOwogICAgfQoKICAgIGNvdXQgPDwgKGZsYWcgPyB0b19zdHJpbmcoZ2l2ZW4gLSB0YXJnZXQpIDogIklNUE9TU0lCTEUiKSA8PCBlbmRsOwp9CgppbnQgbWFpbigpCnsKICAgIGZhc3RJTygpOwogICAgZmlsZUlPKCk7CgogICAgbGwgdGMgPSAxOwogICAgLy8gY2luID4+IHRjOwogICAgLy8gZmFjdG9yaWFsKG1vZCk7CiAgICB3aGlsZSh0Yy0tKQogICAgewogICAgICAgIC8vIGNvdXQgPDwgIkNhc2UgIiA8PCBpIDw8ICI6ICI7CiAgICAgICAgT25lRm9yQWxsKCk7CiAgICB9CiAgICB0aW1lOwogICAgcmV0dXJuIDA7Cn0=