#include<bits/stdc++.h>
using namespace std;
int T,n,m,k,a[2000005],sta[305][305];
int op;
bool flag;
int main(){
	freopen("meow.in","r",stdin);
	freopen("meow.out","w",stdout);
	scanf("%d", &T);
	while(T--){
		scanf("%d%d%d", &n, &m, &k);
		for(int i = 1; i <= m; i++) scanf("%d", &a[i]);
		int cnt=0;
		for(int i = 1; i <= m; i++){
			bool flag=1;
			for(int i = 1; i <= n; i++)
				if(sta[i][sta[i][0]]==a[i]){
					op++;
					flag=0;
				}
			if(flag){
				cnt++;
				sta[cnt][++sta[cnt][0]]=a[i];	
				op++;
			}
		}
		printf("%d\n", op);
		cnt=0;
		memset(sta,0,sizeof(sta));
		for(int i = 1; i <= m; i++){
			bool flag=1;
			for(int j = 1; j <= n; j++)
				if(sta[j][sta[j][0]]==a[i]){
					printf("1 %d\n", j);
					op++;
					flag=0;
				}
			if(flag){
				cnt++;
				printf("1 %d\n", cnt);
				sta[cnt][++sta[cnt][0]]=a[i];	
				op++;
			}
		}
	}
	return 0;
}