#include<bits/stdc++.h>
using namespace std ;
int n , k , a[500] , x[500];
bool check = false ;
void BackTrack(int i , int start , int sum){
for(int j = start ; j <= n ; j++){
x[i] = a[j];
if(sum + a[j] == k){
check = true ;
cout << "[";
for(int l = 1 ; l <= i ; l++){
cout << x[l] ;
if( l < i) cout << " ";
}
cout << "]";
cout << " ";
}
else if(sum + a[j] < k) BackTrack(i + 1 , j + 1 , sum + a[j]);
}
}
int main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
int test ; cin >> test ;
while(test--){
cin >> n >> k ;
for(int i = 1 ; i <= n ; i++) cin >> a[i];
sort(a + 1 , a + n + 1);
BackTrack(1 , 1 , 0);
if(check == false) cout << "-1" ;
cout << "\n";
}
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZCA7CmludCBuICwgayAsIGFbNTAwXSAsIHhbNTAwXTsKYm9vbCBjaGVjayA9IGZhbHNlIDsKdm9pZCBCYWNrVHJhY2soaW50IGkgLCBpbnQgc3RhcnQgLCBpbnQgc3VtKXsKICAgIGZvcihpbnQgaiA9IHN0YXJ0IDsgaiA8PSBuIDsgaisrKXsKICAgICAgICB4W2ldID0gYVtqXTsKICAgICAgICBpZihzdW0gKyBhW2pdID09IGspewogICAgICAgICAgICBjaGVjayA9IHRydWUgOwogICAgICAgICAgICBjb3V0IDw8ICJbIjsKICAgICAgICAgICAgZm9yKGludCBsID0gMSA7ICBsIDw9IGkgOyBsKyspewogICAgICAgICAgICAgICAgY291dCA8PCB4W2xdIDsKICAgICAgICAgICAgICAgIGlmKCBsIDwgaSkgY291dCA8PCAiICI7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY291dCA8PCAiXSI7CiAgICAgICAgICAgIGNvdXQgPDwgIiAiOwogICAgICAgIH0KICAgICAgICBlbHNlIGlmKHN1bSArIGFbal0gPCBrKSBCYWNrVHJhY2soaSArIDEgLCBqICsgMSAsIHN1bSArIGFbal0pOwogICAgfQp9CmludCBtYWluKCl7CiAgICBpb3M6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7CiAgICBjaW4udGllKG51bGxwdHIpOwogICAgY291dC50aWUobnVsbHB0cik7CglpbnQgdGVzdCA7IGNpbiA+PiB0ZXN0IDsKCXdoaWxlKHRlc3QtLSl7CgkJY2luID4+IG4gPj4gayA7CgkgICAgZm9yKGludCBpID0gMSA7IGkgPD0gbiA7IGkrKykgY2luID4+IGFbaV07CgkgICAgc29ydChhICsgMSAsIGEgKyBuICsgMSk7CgkgICAgQmFja1RyYWNrKDEgLCAxICwgMCk7CgkgICAgaWYoY2hlY2sgPT0gZmFsc2UpIGNvdXQgPDwgIi0xIiA7CgkgICAgY291dCA8PCAiXG4iOwoJfQogICAgCn0=