// #include <bits/stdc++.h>
// using namespace std;
// #define int long long 
// #define all(x) (x).begin(),(x).end()
// #define inputarr(a,n)        for(int i=0;i<n;++i) cin>>a[i]
// #define printarr(a,n)        for(int i=0;i<n;++i) cout<<a[i]<<" "
// #define maxipq priority_queue<int>
// #define minipq priority_queue<int,vector<int>,greater<>>
// const int N=1e14;

// signed main(){
//     ios_base::sync_with_stdio(false); 
//     cin.tie(NULL); 
//     cout.tie(NULL);
//     int TC=1;
//     // cin>>TC;
//     // scanf("%lld",&TC);
//     while(TC--){
//         // scanf("%lld",&a);
//         int n,m,q;
//         // cin>>n>>m;
//         cin>>n>>q;
//         vector<int>adj[n+1];
//         for(int i=1;i<n;++i){
//             int x,y;
//             cin>>x>>y;
//             adj[x].emplace_back(y);
//             adj[y].emplace_back(x);
//         }


//         while(q--){
//             int x,y;
//             cin>>x>>y;
//         }
//         // cout<<"\n";
//         // printf("\n");
//     }
// }

#include <bits/stdc++.h>
using namespace std;
#define int long long 
#define all(x) (x).begin(),(x).end()
#define inputarr(a,n)        for(int i=0;i<n;++i) cin>>a[i]
#define printarr(a,n)        for(int i=0;i<n;++i) cout<<a[i]<<" "
#define maxipq priority_queue<int>
#define minipq priority_queue<int,vector<int>,greater<>>
const int N=LONG_MAX;
 
signed main(){
    ios_base::sync_with_stdio(false); 
    cin.tie(NULL); 
    cout.tie(NULL);
    int TC=1;
    cin>>TC;
    // scanf("%lld",&TC);
    while(TC--){
        // scanf("%lld",&a);
        
        int a,b,x,y,e,f;
        cin>>a>>b>>x>>y>>e>>f;
        int ans=abs(x-a)+abs(y-b);
        if((e==a and e==x and ((f>b and f<y) or (f>y and f<b))) or (f==b and f==y) and ((e>a and e<x) or (e>x and e<a)))ans+=2;
        cout<<ans<<endl;


        // cout<<"\n";
        // printf("\n");
    }
}