#include <bits/stdc++.h>
#define INF 2e+011
using namespace std;
ifstream f("romb.in");
ofstream g("romb.out");
double rap(double a,double b)
{
if(b==0)return INF;
return abs(a/b);
}
long long romb(double dx,double dy,int k,double Cx,double Cy,long long val )
{
if(k==0) return val;
if( Cx>=0 && Cy>=0 )///cadranul I
{
if(rap(dy,dx) < rap(Cy,Cx ))
return romb(dx/2,dy/2,k-1,Cx,Cy-dy/2,val*4-3); ///rombul I
else return romb(dx/2,dy/2,k-1,Cx-dx/2,Cy,val*4);///rombul IV
}
else if(Cx<=0 && Cy>=0)///cadranul II
{
if(rap(dy,dx) < rap(Cy,Cx ))
return romb(dx/2,dy/2,k-1,Cx,Cy-dy/2,val*4-3); ///rombul I
else return romb(dx/2,dy/2,k-1,Cx+dx/2,Cy,val*4-2); ///rombul II
}
else if(Cx<=0 && Cy<=0)///cadranul III
{
if(rap(dy,dx) > rap(Cy,Cx ))
return romb(dx/2,dy/2,k-1,Cx+dx/2,Cy,val*4-2); ///rombul II
else return romb(dx/2,dy/2,k-1,Cx,Cy+dy/2,val*4-1);///rombul III
}
else
{
if(rap(dy,dx) < rap(Cy,Cx ))
return romb(dx/2,dy/2,k-1,Cx,Cy+dy/2,val*4-1);///rombul III
else return romb(dx/2,dy/2,k-1,Cx-dx/2,Cy,val*4);///rombul IV
}
}
int main()
{
long long T,k;
double dx,dy,Cx,Cy;cout<<double(2000)/double(0.00000001)<<endl;
f>>T;
while(T--)
{
f>>dx>>dy>>k>>Cx>>Cy;
g<<romb(dx,dy,k,Cx,Cy,1)<<"\n";
}
}