#include<iostream>
#include<cstring>
#include<string>
#include<cstdio>
#define maxn 310
using namespace std;
int used[maxn][maxn];
int dis[8][2]={{-2,1},{-1,2},{1,2},{2,1},{2,-1},{1,-2},{-1,-2},{-2,-1}};
int n;
struct f
{
int x;
int y;
int num;
}s[100005];
void bfs(int dx,int dy,int nx,int ny)
{
memset(used,0,sizeof(used));
int head=1; int tail=1;
used[dx][dy]=1;
s[tail].x=dx;
s[tail].y=dy;
s[tail].num=0;
tail++;
while(head<tail)
{
int x=s[head].x;
int y=s[head].y;
int temp=s[head].num;
if(x==nx&&y==ny)
{
cout<<temp<<endl;
break;
}
for(int i=0;i<8;i++)
{
int sx=x+dis[i][0];
int sy=y+dis[i][1];
if(sx>=0&&sx<n&&sy>=0&&sy<n&&used[sx][sy]==0)
{
used[sx][sy]=1;
s[tail].x=sx;
s[tail].y=sy;
s[tail].num=temp+1;
tail++;
}
}
head++;
}
}
int main( )
{
int t;
cin>>t;
int dx,dy,nx,ny;
while(t--)
{
cin>>n;
cin>>dx>>dy;
cin>>nx>>ny;
bfs(dx,dy,nx,ny);
}
return 0;
}