#include<bits/stdc++.h>
using namespace std;
void swap(int &a, int& b){
	int t=a;
	a=b;
	b=t;
}
void solve(){
	long long int n,ans;
	scanf("%lld",&n);
	int p[n];
	for(int i=0;i<n;i++) p[i]=i+1;
	swap(p[0],p[n-1]);
	ans=(n-1)*(n-1);
	vector<pair<int,int>> v;
	v.push_back({1,n});
	for(int i=1;i<n/2;i++){
		ans+=2*(n-i-1)*(n-i-1);
		v.push_back({i+1,n});
		v.push_back({n-i,1});
		swap(p[0],p[n-i-1]);
		swap(p[n-1],p[i]);
	}
	if(n%2){
		v.push_back({n/2+1,1});
		ans+=(n/2)*(n/2);
		swap(p[n/2],p[0]);
	}
	reverse(v.begin(),v.end());
	printf("%lld\n",ans);
	for(int a:p) printf("%d ",a);
	puts("");
	printf("%lld\n",n-1);
	for(int i=0;i<n-1;i++) printf("%d %d\n",v[i].first, v[i].second);
}

int main(){
	int t;
	cin>>t;
	while(t--) solve();
}
