대회 운영 시스템 관리자 Ahmed는 팀마다 로그인용 비밀번호를 만들어 두었는데, 그 목록을 잃어버렸다. 다행히 비밀번호를 만든 방법은 기억하고 있다.
Ahmed에게는 문자열 N개로 이루어진 목록 X가 있다. 어떤 목록 P가 X와 똑같은 원소로 이루어져 있고 순서만 다를 수 있다면, P를 X의 순열이라고 부른다. Ahmed는 X의 순열을 모두 만든 다음, 각 순열 P에 들어 있는 문자열을 앞에서부터 차례로 이어 붙여 문자열 하나를 만들고, 이렇게 얻은 문자열을 모두 목록 Y에 모은다. 마지막으로 Y를 ASCII 코드 순서에 따른 사전순으로 정렬하고 중복된 문자열을 지운다. 비밀번호는 이렇게 정리한 Y에서 미리 정해 둔 위치에 있는 문자열이다.
목록 X와 위치 K가 주어질 때, Y에서 K번째에 있는 비밀번호를 출력하는 프로그램을 작성하시오. 위치는 1부터 센다.
첫째 줄에 테스트 케이스의 개수 T가 주어진다.
각 테스트 케이스는 목록 X의 크기 N (N≤20)과 위치 K로 시작하고, 그 뒤에 문자열 N개가 이어진다. 각 문자열의 길이는 최대 10이고, N개 문자열의 길이는 모두 같다. 문자열은 공백 없이 알파벳 대소문자로만 이루어져 있다. K는 항상 유효한 값이다.
각 테스트 케이스마다 K번째 비밀번호를 한 줄에 하나씩 출력한다.