//快排思想 
//快读 
#include <bits/stdc++.h>
using namespace std;

typedef long long ll;

int arr[5000005];

inline int read(){
    int x = 0, f = 1;
    char ch = getchar();
    while(ch < '0' || ch > '9'){
        if (ch == '-')
            f = -1;
        ch = getchar();
    }
    while(ch >= '0' && ch <= '9'){
        x = (x<<1) + (x<<3) + (ch^48);
        ch = getchar();
    }
    return x * f;
}

int  qs(int l,int r,int k)
{
    if(l==r)    return arr[l];
    int mid=(l+r)>>1;
    int x=arr[mid];
    int i=l,j=r;
    while(i<=j)
    {
        while(arr[i]<x) i++;
        while(arr[j]>x) j--;
        if(i<=j)
        {
            swap(arr[i],arr[j]);
            i++;j--;
        }
    }
        if(k<=j)    return qs(l,j,k);    
        else if(k>=i)    return qs(i,r,k);
        else return arr[k];
}
int main()
{
    int T;
    T=read();
    while(T--)
    {
    int n,k;
    n=read();k=read();
    int i;
    for(i=1;i<=n;i++)    arr[i]=read();
    cout<<qs(1,n,k)<<endl;;
    }
}