#include <bits/stdc++.h>
using namespace std;
using ll=long long;
string solve(int n,int k,vector<string>& arr) {
for(int i=0; i<k && n>1; i++) {
string max_con= "";
int pos=-1;
// Find the best pair to concatenate
for (int j=0; j<n-1; j++) {
string concat1 = arr[j] + arr[j + 1];
if (concat1>max_con){
max_con=concat1;
pos = j;
}
}
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;
}