비밀번호 쌍 찾기

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

문제

ICPC(Inter-Continental Programming Company)의 비밀 서버는 비밀번호 두 개 vvww를 쓴다. 두 문자열은 vw=wvv^{|w|} = w^{|v|}를 만족한다. 즉 vvw|w|번 이어 붙인 문자열과 wwv|v|번 이어 붙인 문자열이 같다. 여기서 v|v|는 문자열 vv의 길이다. 예를 들어 v=abv = \mathtt{ab}, w=ababw = \mathtt{abab}이면 v4=w2=ababababv^{4} = w^{2} = \mathtt{abababab}이다. v=wv = w인 경우는 안전하지 않아서 쓰지 않는다.

두 문자열을 외우기 어려워서, 관리자는 문자열 nn개로 이루어진 집합 안에 비밀번호를 숨겼다. 집합에는 서로 다른 문자열 xxyy가 있어서, vvxx의 접두사이고 (x=vvx = vv'), wwyy의 접미사다 (y=wwy = w'w).

문자열 집합이 주어지면 비밀번호 쌍을 찾는 프로그램을 작성하시오.

입력

입력은 표준 입력으로 주어진다. 첫째 줄에 테스트 케이스의 개수 TT가 주어진다.

각 테스트 케이스의 첫째 줄에는 집합에 들어 있는 문자열의 개수 nn이 주어진다. (2n2002 \le n \le 200)

다음 nn개 줄에는 한 줄에 문자열 하나씩 주어진다. 각 문자열은 영어 소문자로만 이루어지고, 길이는 20,00020{,}000 이하다.

출력

출력은 표준 출력으로 한다. 테스트 케이스마다 정확히 한 줄씩 출력한다.

각 줄에는 정수 두 개 v|v|w|w|를 출력한다. 이때 집합 안의 서로 다른 두 문자열 xxyy에 대해 vvxx의 접두사, wwyy의 접미사이고, vw=wvv^{|w|} = w^{|v|}v<w|v| < |w|를 만족해야 한다. 이런 쌍이 둘 이상이면 v+w|v| + |w|가 가장 큰 쌍을 출력한다. 그런 비밀번호 쌍은 존재한다면 유일하다. 조건을 만족하는 쌍이 없으면 0 0을 출력한다.