팰린드롬

아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

팰린드롬은 앞에서 읽으나 뒤에서 읽으나 똑같은 단어이다. 예를 들어 civic, radar, rotor, madam은 모두 팰린드롬이다.

공책에 소문자 알파벳으로 이루어진 단어 kk개가 적혀 있다. 이 단어들 중 서로 다른 위치에 있는 두 단어를 골라 앞뒤로 이어 붙였을 때 팰린드롬이 되는 경우를 찾으려고 한다. 즉, 서로 다른 두 인덱스 iji \ne j에 대해 ii번째 단어 바로 뒤에 jj번째 단어를 이어 붙인 문자열이 팰린드롬인지 확인한다. (같은 단어를 두 번 사용할 수는 없다.)

예를 들어 단어가 aaba, ba, ababa, bbaa, baaba일 때, ababa 뒤에 ba를 이어 붙이면 팰린드롬 abababa를 만들 수 있다.

kk개의 단어가 주어졌을 때 이러한 팰린드롬을 찾는 프로그램을 작성하시오.

입력

첫째 줄에 테스트 케이스의 개수 TT가 주어진다. 각 테스트 케이스의 첫째 줄에는 공책에 적힌 단어의 수 kk (1k1001 \le k \le 100)가 주어진다. 이어지는 kk개의 줄에는 a부터 z까지의 소문자 알파벳으로 이루어진 단어가 한 줄에 하나씩 주어진다. 한 테스트 케이스에 등장하는 모든 단어 길이의 합은 10,000 이하이다.

출력

각 테스트 케이스마다 만들 수 있는 팰린드롬을 한 줄에 하나씩 출력한다. 만들 수 있는 팰린드롬이 여러 개라면 사전순으로 가장 앞서는 것을 출력한다. 팰린드롬을 만들 수 없으면 0을 출력한다.