#include <bits/stdc++.h>
using namespace std;
int main() {
  int t;
  cin >> t;
  while (t--) {
    int n, k = 0, l = 0, s = 0;
    cin >> n;
    int A[n], B[n + 1], C[n];
    B[0] = 0;
    for (int i = 0; i < n; i++) {
      A[i] = 1000000;
    }
    for (int i = 1; i <= n; i++) {
      cin >> B[i];
      if (B[i] < B[i - 1]) {
        k = -1;
      } else {
        for (int j = B[i - 1] + 1; j < B[i]; j++) {
          A[l] = j;
          l++;
        }
      }
    }
    if (k == -1) {
      cout << k << "\n";
    } else {
      int m = 0;
      for (int i = 1; i <= n; i++) {
        if (B[i] > B[i - 1]) {
          C[i - 1] = B[i];
        } else {
          if (A[m] < B[i]) {
            C[i - 1] = A[m];
            m++;
          } else {
            k = -1;
          }
        }
      }
      if (k == -1) {
        cout << k << "\n";
      } else {
        for (int i = 0; i < n; i++) {
          cout << C[i] << " ";
        }
        cout << "\n";
      }
    }
  }
}
