#include<bits/stdc++.h>
using namespace std;
void solve(int arr[], int n, int target) {
// sort the array
sort(arr, arr+n);
// for counting the total no. of triplets
int count = 0;
// consider i for the first element
for(int i = 0; i < n-2; i++) {
if(arr[i] > target) break;
// remaining sum
int sum = target - arr[i];
// find a pair with given sum from arr[i+1, n-1];
int j = i+1, k = n-1;
while(j < k) {
int temp = arr[j] + arr[k];
if(temp == sum) {
cout << arr[i] << " " << arr[j] << " " << arr[k] << endl;
return;
}
else if(temp < sum) {
j++;
}
else {
k--;
}
}
}
cout << "-1" << endl;
}
int main() {
int t;
cin >> t;
while(t--) {
int n;
cin >> n;
int arr[n];
for(int i = 0; i < n; i++)
cin >> arr[i];
int target;
cin >> target;
solve(arr, n, target);
}
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnZvaWQgc29sdmUoaW50IGFycltdLCBpbnQgbiwgaW50IHRhcmdldCkgewoJCgkvLyBzb3J0IHRoZSBhcnJheQoJc29ydChhcnIsIGFycituKTsKCgkvLyBmb3IgY291bnRpbmcgdGhlIHRvdGFsIG5vLiBvZiB0cmlwbGV0cwoJaW50IGNvdW50ID0gMDsKCgkvLyBjb25zaWRlciBpIGZvciB0aGUgZmlyc3QgZWxlbWVudAoJZm9yKGludCBpID0gMDsgaSA8IG4tMjsgaSsrKSB7CgkJCgkJaWYoYXJyW2ldID4gdGFyZ2V0KSBicmVhazsKCQkKCQkvLyByZW1haW5pbmcgc3VtCgkJaW50IHN1bSA9IHRhcmdldCAtIGFycltpXTsKCQkKCQkvLyBmaW5kIGEgcGFpciB3aXRoIGdpdmVuIHN1bSBmcm9tIGFycltpKzEsIG4tMV07CgkJaW50IGogPSBpKzEsIGsgPSBuLTE7CgkJd2hpbGUoaiA8IGspIHsKCQkJCgkJCWludCB0ZW1wID0gYXJyW2pdICsgYXJyW2tdOwoJCQkKCQkJaWYodGVtcCA9PSBzdW0pIHsKCQkJCWNvdXQgPDwgYXJyW2ldIDw8ICIgIiA8PCBhcnJbal0gPDwgIiAiIDw8IGFycltrXSA8PCBlbmRsOwoJCQkJcmV0dXJuOwoJCQl9CgkJCWVsc2UgaWYodGVtcCA8IHN1bSkgewoJCQkJaisrOwoJCQl9CgkJCWVsc2UgewoJCQkJay0tOwoJCQl9CgkJfQoJfQoJCgljb3V0IDw8ICItMSIgPDwgZW5kbDsKfQoKaW50IG1haW4oKSB7CgkKCWludCB0OwoJY2luID4+IHQ7CgkKCXdoaWxlKHQtLSkgewoJCQoJCWludCBuOwoJCWNpbiA+PiBuOwoJCgkJaW50IGFycltuXTsKCQlmb3IoaW50IGkgPSAwOyBpIDwgbjsgaSsrKQoJCQljaW4gPj4gYXJyW2ldOwoJCgkJaW50IHRhcmdldDsKCQljaW4gPj4gdGFyZ2V0OwoJCgkJc29sdmUoYXJyLCBuLCB0YXJnZXQpOwoJfQoJCglyZXR1cm4gMDsKfQ==