#include <bits/stdc++.h>
using namespace std;
const int maxn = 1e5 + 9;
const int MOD = 1000000007;
int mod = 999998639;
inline long long qpow(long long b, long long e, long long m = MOD) {
  long long a = 1;
  for (; e; e >>= 1, b = b * b % m)
    if (e & 1) a = a * b % m;
  return a;
}
set<int> s;
int b[109];
vector<int> ve;
int main() {
  int _;
  while (scanf("%d", &_) != EOF) {
    while (_--) {
      ve.clear();
      s.clear();
      int n;
      scanf("%d", &n);
      for (int i = 1; i <= 2 * n; i++) {
        s.insert(i);
      }
      for (int i = 1; i <= n; i++) {
        scanf("%d", &b[i]);
        s.erase(b[i]);
      }
      bool flag = false;
      for (int i = 1; i <= n; i++) {
        set<int>::iterator it = s.upper_bound(b[i]);
        if (it == s.end()) {
          flag = true;
          break;
        } else {
          ve.push_back(b[i]);
          ve.push_back(*it);
          s.erase(it);
        }
      }
      if (flag) {
        printf("-1\n");
      } else {
        for (int i = 0; i < ve.size(); i++) {
          printf("%d ", ve[i]);
        }
        printf("\n");
      }
    }
  }
}
