#include <bits/stdc++.h>
using namespace std;
const long long N = 100;
long long t, n, W, down;
pair<long long, long long> w[300000];
signed main() {
  ios::sync_with_stdio(false);
  cin >> t;
  while (t--) {
    cin >> n >> W;
    if (W % 2 == 0)
      down = W / 2;
    else
      down = W / 2 + 1;
    long long sum = 0;
    for (long long i = 1; i <= n; i++) {
      cin >> w[i].first, w[i].second = i;
      if (w[i].first <= W) sum += w[i].first;
    }
    sort(w + 1, w + 1 + n);
    long long my = 0;
    if (w[1].first > W) {
      cout << "-1" << endl;
      continue;
    }
    if (sum < down) {
      cout << "-1" << endl;
      continue;
    }
    sum = 0;
    vector<long long> res;
    for (long long i = n; i >= 1; i--) {
      if (w[i].first <= W) {
        if (sum + w[i].first >= down && sum + w[i].first <= W) {
          res.push_back(w[i].second);
          break;
        }
        if (sum + w[i].first <= W) {
          sum += w[i].first;
          res.push_back(w[i].second);
        }
      }
    }
    sort(res.begin(), res.end());
    cout << res.size() << endl;
    for (auto x : res) cout << x << " ";
    cout << endl;
  }
}
