#include <bits/stdc++.h>
#define rep(i,n) for(int i = 0; i < (int)(n); i++)

using namespace std;
using LL = long long;
using P = pair<int,int>;

void solve(){
	int n;
	cin >> n;
	n *= 2;
	vector<int> a(n);
	rep(i,n) cin >> a[i];
	sort(a.begin(), a.end());
	rep(i,n-1){
		int op = 0, num = 0;
		vector<P> ans(n / 2);
		map<int,int> mp;
		rep(j,n) mp[a[j]]++;
		int now = a[n - 1];
		mp[now]--;
		mp[a[i]]--;
		ans[0] = P(a[i], a[n - 1]);
		bool flag = true;
		while(op < n / 2 - 1){
			num++;
			int M = a[n - 1 - num];
			if(mp[M] == 0) continue;
			mp[M]--;
			int m = now - M;
			if(mp[m] == 0){
				flag = false;
				break;
			}
			mp[m]--;
			ans[op+1] = P(m, M);
			now = M;
			op++;
		}
		if(!flag) continue;
		cout << "YES" << endl;
		cout << ans[0].first + ans[0].second << endl;
		rep(i,n/2) cout << ans[i].first << " " << ans[i].second << endl;
		return;
	}
	cout << "NO" << endl;
}

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

  return 0;
}
