#include<bits/stdc++.h>
#define all(x) (x).begin(),(x).end()
#define allr(x) x.rbegin(),x.rend()
#define sz(x) ((int)x.size())
#define AbdElmawla std::ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
using namespace std;
typedef unsigned long long int ull;
typedef long long int ll;
typedef long double ld;
int dx[]= {-1,1,0,0,1,-1,1,-1};
int dy[]= {0,0,1,-1,1,-1,-1,1};
void solve()
{
int n,m;cin>>n>>m;
int x,y,x2,y2;
cin>>x>>y>>x2>>y2;
if(x==x2&&y==y2)
cout<<0;
else if(x2<=x||m==1)
cout<<-1;
else{
int dis=x2-x,dis2=abs(y-y2);
if(abs(dis-dis2)%2==0)
cout<<dis;
else cout<<-1;
}
}
int main()
{
AbdElmawla
freopen("doroob.in","r",stdin);
int t=1;
cin>>t;
while(t--)
{
solve();
if(t)
cout<<'\n';
}
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KI2RlZmluZSBhbGwoeCkgICAgICh4KS5iZWdpbigpLCh4KS5lbmQoKQojZGVmaW5lIGFsbHIoeCkgICAgeC5yYmVnaW4oKSx4LnJlbmQoKQojZGVmaW5lIHN6KHgpICAgICAgKChpbnQpeC5zaXplKCkpCiNkZWZpbmUgQWJkRWxtYXdsYSBzdGQ6Omlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7Y2luLnRpZSgwKTtjb3V0LnRpZSgwKTsKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKdHlwZWRlZiB1bnNpZ25lZCBsb25nIGxvbmcgaW50IHVsbDsKdHlwZWRlZiBsb25nIGxvbmcgaW50IGxsOwp0eXBlZGVmIGxvbmcgZG91YmxlIGxkOwppbnQgZHhbXT0gey0xLDEsMCwwLDEsLTEsMSwtMX07CmludCBkeVtdPSB7MCwwLDEsLTEsMSwtMSwtMSwxfTsKdm9pZCBzb2x2ZSgpCnsKICAgIGludCBuLG07Y2luPj5uPj5tOwogICAgaW50IHgseSx4Mix5MjsKICAgIGNpbj4+eD4+eT4+eDI+PnkyOwogICAgaWYoeD09eDImJnk9PXkyKQogICAgICAgIGNvdXQ8PDA7CiAgICBlbHNlIGlmKHgyPD14fHxtPT0xKQogICAgICAgIGNvdXQ8PC0xOwogICAgZWxzZXsKICAgICAgICBpbnQgZGlzPXgyLXgsZGlzMj1hYnMoeS15Mik7CiAgICAgICAgaWYoYWJzKGRpcy1kaXMyKSUyPT0wKQogICAgICAgICAgICBjb3V0PDxkaXM7CiAgICAgICAgZWxzZSBjb3V0PDwtMTsKICAgIH0KfQppbnQgbWFpbigpCnsKICAgIEFiZEVsbWF3bGEKICAgIGZyZW9wZW4oImRvcm9vYi5pbiIsInIiLHN0ZGluKTsKICAgIGludCB0PTE7CiAgICBjaW4+PnQ7CiAgICB3aGlsZSh0LS0pCiAgICB7CiAgICAgICAgc29sdmUoKTsKICAgICAgICBpZih0KQogICAgICAgICAgICBjb3V0PDwnXG4nOwogICAgfQp9Cg==