#include "bits/stdc++.h"

using namespace std;

using ll = long long;
using pii = pair <int, int>;
using pll = pair <ll, ll>;

#define FIO() ios_base::sync_with_stdio(0);cin.tie(NULL);

const int mx = 2e3 + 9;

bitset <mx> mark;

int main() {
    FIO();

    int tc; cin >> tc;
    while (tc--) {
        int n; cin >> n;

        int a[2 * n];
        map <int, vector <int>> idx;
        for (int i = 0; i < 2 * n; i++) cin >> a[i];

        sort(a, a + (2 * n), greater <int>());
        for (int i = 0; i < 2 * n; i++) {
            idx[a[i]].push_back(i);
        }

        vector <pii> ans;
        bool ok = false;

        for (int i = 1; i < 2 * n; i++) {
            for (int j = 0; j < 2 * n; j++) mark[j] = 0;
            mark[0] = mark[i] = 1;

            ans.clear();
            ans.emplace_back(a[0], a[i]);
            int x = a[0];
            ok = true;

            for (int j = 0; j < 2 * n; j++) {
                if (mark[j]) continue;
                int y = x - a[j];
                mark[j] = 1;

                if (idx.count(y) == 0) {
                    ok = false;
                    break;
                }

                bool fnd = false;
                vector <int>& v = idx[y];

                int lo = 0, hi = v.size() - 1;
                int k = -1;

                while (lo <= hi) {
                    int mid = (lo + hi) / 2;
                    if (mark[v[mid]]) {
                        lo = mid + 1;
                    } else {
                        fnd = true;
                        k = mid;
                        hi = mid - 1;
                    }
                }

                if (!fnd) {
                    ok = false;
                    break;
                }

                k = v[k];
                mark[k] = 1;
                ans.emplace_back(a[j], a[k]);
                x = a[j];
            }

            if (ok) break;
        }

        if (ok) {
            cout << "YES\n";
            cout << ans[0].first + ans[0].second << '\n';
            for (auto [p, q] : ans) cout << p << " " << q << '\n';
            continue;
        }

        cout << "NO\n";
    }
}
