#include <bits/stdc++.h>
using namespace std;
vector<int> v, vv;
map<int, int> m;
int main() {
  int n, t, i, j, k, a;
  cin >> t;
  while (t--) {
    cin >> n >> k;
    m.clear(), v.clear(), vv.clear();
    for (i = 0; i < n; i++) {
      cin >> a;
      if (m[a] == 0) {
        v.push_back(a);
        m[a] = 1;
      }
    }
    if (v.size() > k) {
      cout << "-1" << endl;
    } else {
      if (v.size() < k) {
        for (i = 1; i <= n; i++) {
          if (m[i] == 0) {
            v.push_back(i);
            m[i] = 1;
          }
          if (v.size() == k) break;
        }
      }
      sort(v.begin(), v.end());
      for (i = 1; i <= n; i++) {
        for (j = 0; j < k; j++) {
          vv.push_back(v[j]);
        }
      }
      cout << vv.size() << endl;
      for (i = 0; i < vv.size(); i++) cout << vv[i] << " ";
      cout << endl;
    }
  }
}
