#include <bits/stdc++.h>
using namespace std;
const long long inf = 1e18;
const long long MAXN = 2e5 + 1;
int main() {
  long long tt;
  cin >> tt;
label:
  while (tt--) {
    long long n, w;
    cin >> n >> w;
    long long w1 = ceil(w / 2.0);
    vector<pair<long long, long long> > arr(n);
    for (long long i = 0; i < n; i++) {
      cin >> arr[i].first;
      arr[i].second = i + 1;
    }
    sort(arr.begin(), arr.end());
    long long sum = 0;
    for (long long i = 0; i < n; i++) {
      sum += arr[i].first;
      if (sum >= w1 && sum <= w) {
        cout << i + 1 << "\n";
        for (long long j = 0; j < i + 1; j++) cout << arr[j].second << " ";
        cout << "\n";
        goto label;
      }
      if (arr[i].first >= w1 && arr[i].first <= w) {
        cout << "1\n" << arr[i].second << "\n";
        goto label;
      }
    }
    cout << "-1\n";
  }
}
