#include <bits/stdc++.h>
using namespace std;
#define nl '\n'
typedef long long ll;
#define int long long
void File() {
#ifndef ONLINE_JUDGE
freopen("input.txt", "r", stdin);
freopen("output.txt", "w", stdout);
#endif
ios::sync_with_stdio(false), cin.tie(nullptr), cout.tie(nullptr);
}
void sol() {
int a,b;
cin >> a >> b;
if(!(a&1) and !(b&1)) {
cout << a*(b/2)+2 << '\n';
}else if(!(a&1) and b&1) {
cout << -1 << '\n';
}else if(a&1 and !(b&1)) {
if((b/2)&1) {
cout << -1 <<'\n';
}else {
cout << a*(b/2)+2 << '\n';
}
}else {
cout << a*b+1 << '\n';
}
}
signed main() {
File();
int T{1};
cin >> T;
while (T--) {
sol();
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CiNkZWZpbmUgbmwgJ1xuJwp0eXBlZGVmIGxvbmcgbG9uZyBsbDsKI2RlZmluZSBpbnQgbG9uZyBsb25nCgp2b2lkIEZpbGUoKSB7CiNpZm5kZWYgT05MSU5FX0pVREdFCiAgICBmcmVvcGVuKCJpbnB1dC50eHQiLCAiciIsIHN0ZGluKTsKICAgIGZyZW9wZW4oIm91dHB1dC50eHQiLCAidyIsIHN0ZG91dCk7CiNlbmRpZgogICAgaW9zOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpLCBjaW4udGllKG51bGxwdHIpLCBjb3V0LnRpZShudWxscHRyKTsKfQoKdm9pZCBzb2woKSB7CiAgICBpbnQgYSxiOwogICAgY2luID4+IGEgPj4gYjsKICAgIGlmKCEoYSYxKSBhbmQgIShiJjEpKSB7CiAgICAgICAgY291dCA8PCBhKihiLzIpKzIgPDwgJ1xuJzsKICAgIH1lbHNlIGlmKCEoYSYxKSBhbmQgYiYxKSB7CiAgICAgICAgY291dCA8PCAtMSA8PCAnXG4nOwogICAgfWVsc2UgaWYoYSYxIGFuZCAhKGImMSkpIHsKICAgICAgICBpZigoYi8yKSYxKSB7CiAgICAgICAgICAgIGNvdXQgPDwgLTEgPDwnXG4nOwogICAgICAgIH1lbHNlIHsKICAgICAgICAgICAgY291dCA8PCBhKihiLzIpKzIgPDwgJ1xuJzsKICAgICAgICB9CiAgICB9ZWxzZSB7CiAgICAgICAgY291dCA8PCBhKmIrMSA8PCAnXG4nOwogICAgfQp9CnNpZ25lZCBtYWluKCkgewogICAgRmlsZSgpOwogICAgaW50IFR7MX07CiAgICBjaW4gPj4gVDsKICAgIHdoaWxlIChULS0pIHsKICAgICAgICBzb2woKTsKICAgIH0KfQo=