#include <bits/stdc++.h>
using namespace std;
string solve(int n, int k, vector<string>& arr) {
for (int i = 0; i<k && n>1; ++i) {
int pos = -1;
string max_con ="";
for (int j = 0; j < n - 1; ++j) {
string concat = arr[j] + arr[j + 1];
if (concat > max_con) {
max_con = concat;
pos = j;
}
}
if (pos != -1) {
arr[pos] = max_con;
arr.erase(arr.begin() + pos + 1);
--n;
}
}
return *max_element(arr.begin(), arr.end());
}
int main() {
int t;
cin>>t;
while(t--) {
int n,k;
cin>>n>>k;
vector<string> str(n);
for(int i=0; i<n; i++) {
cin>>str[i];
}
cout << solve(n, k, str) << endl;
}
return 0;
}