#include<bits/stdc++.h>
using namespace std;
int t,n,a[2005],i,j;
int main()
{
    cin>>t;
    while(t--)
    {
        cin>>n;
        for(i=0;i<2*n;i++)  cin>>a[i];
        sort(a,a+2*n);
        for(i=0;i<2*n-1;i++)
        {
            int sum = a[i]+a[2*n-1];
            multiset <int> s;
            for(j=0;j<2*n;j++)    s.insert(a[j]);
            vector <int> ans;
            // int x = a[2*n-1];
            for(j=0;j<n;j++)
            {
                auto it1 = s.end();
                it1--;
                int p = *it1;
                int val = sum - p;
                s.erase(it1);
                auto it2 = s.find(val);
                if(it2 == s.end()) break;
                s.erase(it2);
                ans.push_back(p);   // current max in set
                ans.push_back(val); 
                // cout<<sum<<':'<<ans.size()<<',';
                sum = max(val,p);
            }
            // cout<<j<<',';
            if(j==n)    { cout<<"YES\n"<<a[i]+a[2*n-1]<<"\n"; for(j=0;j<n;j++) cout<<ans[2*j]<<' '<<ans[2*j+1]<<'\n'; break; }
        }
        // cout<<i<<"here\n";
        if(i== (2*n)-1 )  cout<<"NO\n";
    }
}