#include <bits/stdc++.h>
using namespace std;
int main() {
  int t = {};
  int n = {};
  long long w = {};
  long long f = {};
  long long value = {};
  long long e = {};
  cin >> t;
  while (t--) {
    e = 0;
    cin >> n >> w;
    std::vector<pair<long long, long long>> a;
    std::vector<long long> b;
    f = (w + 1) / 2;
    for (long long i = 0; i < n; i++) {
      cin >> value;
      a.push_back({value, i + 1});
    }
    sort(a.begin(), a.end());
    if (a[0].first > w) {
      cout << -1 << endl;
    } else {
      for (int i = n - 1; i >= 0; i--) {
        if (e + a[i].first >= f && e + a[i].first <= w) {
          e += a[i].first;
          b.push_back(a[i].second);
          break;
        }
      }
      if (e >= f && e <= w) {
        cout << 1 << endl;
        cout << b[0] << endl;
      } else {
        for (int i = n - 1; i >= 0; i--) {
          if (e + a[i].first <= w) {
            e += a[i].first;
            b.push_back(a[i].second);
          }
        }
        if (e >= f && e <= w) {
          sort(b.begin(), b.end());
          cout << b.size() << endl;
          for (int i = 0; i < b.size(); i++) {
            cout << b[i] << " ";
          }
          cout << endl;
        } else {
          cout << -1 << endl;
        }
      }
    }
  }
  return 0;
}
