#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
#define ll long long int
#define vv vector<long long>
#define mpp map<long long,long long>
#define ss set<long long>
#define vp vector<pair<long long, long long>>
#define MOD 1000000007
#define YES cout<<"YES"<<endl
#define NO cout<<"NO"<<endl
#define all_v v.begin(),v.end()
#define all_a a.begin(),a.end()
#define sort_rev sort(v.rbegin(),v.rend());
#define all_n for(int i=0;i<n;i++)
#define print for(auto it:v)cout<<it<<" "
#define print_vp for(auto it:vp)cout<<it.first<<" "<<it.second<<endl
#define print_mp for(auto it:mp) cout<<it.first<<" "<<it.second<<endl
void requisite(){
ios::sync_with_stdio(false);
cin.tie(nullptr);cout.tie(nullptr);
}
int main() {
requisite();
ll t;
cin>>t;
while (t--){
ll n,k;
cin>>n>>k;
vv v(n);
all_n{
cin>>v[i];
}
vector<string>s(n-k+1);
for (int i = 0; i <= n-k; ++i) {
for (int j = i; j <= i+k; ++j) {
s[i]=s[i].append((to_string(v[j])));
}
}
string a="";
for (int i = 0; i <n-k; ++i) {
// cout<<s[i]<<endl;
if (s[i].size()>a.size()){
a=s[i];
}
else if (s[i].size()==a.size()){
int l=0;
while (l<s[i].size()) {
ll x = s[i][l] - '0';
ll y = a[l] - '0';
if (x > y) {
a = s[i];
break;
}
else if (y>x){
break;
}
else l++;
}
}
}
cout<<a<<endl;
}
return 0;
}