#include <bits/stdc++.h>   using namespace std;   int main() {     std::ios_base::sync_with_stdio(false);     std::cin.tie(0);     std::cout.tie(0);     int t;     cin >> t;     while (t--) {       int n;       cin >> n;       vector<int> a(n), b(2 * n);       multiset<int> m;       for (size_t i = 0; i < 2 * n; ++i) m.insert(i + 1);       for (auto& i : a) {         cin >> i;         m.erase(i);       }       bool flg = true;       for (size_t i = 0; i < n; ++i) {         b[2 * i] = a[i];         auto it = upper_bound(m.begin(), m.end(), a[i]);         if (it == m.end()) {           flg = false;           cout << -1 << endl;           break;         }         b[2 * i + 1] = *it;         m.erase(*it);       }       if (!flg) continue;       for (auto& i : b) cout << i <<    ;       cout << endl;     }     return 0;   }   