#include <bits/stdc++.h>
using namespace std;
void solve() {
  long long int n, k;
  cin >> n >> k;
  long long int a[n], s = 0;
  vector<pair<long long int, long long int> > v;
  for (int i = 0; i < n; i++) {
    cin >> a[i];
    if (a[i] <= k) {
      v.push_back({a[i], i + 1});
      s += a[i];
    }
  }
  if (s < (k + 1) / 2) {
    cout << -1 << endl;
    return;
  }
  s = 0;
  sort(v.begin(), v.end());
  vector<long long int> ans;
  for (int i = v.size() - 1; i >= 0; i--) {
    if (s + v[i].first >= (k + 1) / 2 and s + v[i].first <= k) {
      s += v[i].first;
      ans.push_back(v[i].second);
      break;
    } else if (s + v[i].first < (k + 1) / 2) {
      ans.push_back(v[i].second);
      s += v[i].first;
    }
  }
  if (ans.size() == 0) {
    cout << -1 << endl;
  }
  sort(ans.begin(), ans.end());
  cout << ans.size() << endl;
  for (int i = 0; i < ans.size(); i++) {
    cout << ans[i] << " ";
  }
  cout << endl;
}
int main() {
  int t;
  cin >> t;
  while (t--) {
    solve();
  }
}
