#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();     }   }   