회계사의 메모

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

문제

당신에게는 모든 지출을 기록해 주던 회계사가 있었습니다. 당신은 매일 지출을 적은 메모를 회계사에게 건넸고, 회계사는 그것을 하나의 커다란 요약 파일 끝에 이어 붙였습니다. 각 메모는 다음과 같이 여러 줄로 이루어져 있었습니다.

bed = 100
table = 150
furniture = bed + table
furniture = furniture + 10

좀 더 일반적으로, 메모의 각 줄은 다음 두 형태 중 하나였습니다.

name = number
name = item + item

여기서 itemnumber 또는 name이고, number는 앞에 0이 붙지 않은 10910^9 이하의 자연수이며, name은 소문자와 대문자로 이루어진 비어 있지 않은 문자열입니다.

회계사는 메모를 요약 파일로 옮길 때, 각 메모 안의 줄 순서를 바꾸지 않았고 서로 다른 메모의 줄을 섞지도 않았습니다. 다만 이름을 바꾸는 경우가 있었습니다. 하나의 메모 안에서는 일관되게 바꾸어서, 같은 이름은 모두 같은 새 이름으로 바뀌었고 서로 다른 두 이름은 항상 서로 다른 이름으로 바뀌었습니다. 그러나 서로 다른 메모 사이에는 이런 일관성이 보장되지 않았습니다. 한 메모의 beerdrink로 바뀌고, 다른 메모의 teedrink로 바뀌며, 또 다른 메모의 beerfood로 바뀔 수도 있습니다. 이렇게 회계사가 바꾼 메모를 그 메모의 전사(transcription)라고 부릅니다.

정확히 말하면, 어떤 메모의 전사란 그 메모의 이름들을 일대일로 바꾸어(숫자와 각 줄의 구조는 그대로 둔 채) 얻을 수 있는, 요약 파일의 연속된 줄들의 구간입니다.

회계사가 막 그만두는 바람에 당신에게는 요약 파일과 정렬되지 않은 수많은 메모 더미만 남았습니다. 각 메모에 대해, 그 메모의 전사가 요약 파일의 어느 위치에서 시작될 수 있는지 구하세요.

입력

입력은 여러 개의 테스트 케이스로 이루어져 있습니다. 첫째 줄에는 테스트 케이스의 수를 나타내는 양의 정수 Z15Z \le 15가 주어집니다. 이어서 ZZ개의 테스트 케이스가 주어집니다.

각 테스트 케이스의 첫째 줄에는 메모의 개수 kk (1k500001 \le k \le 50000)가 주어집니다. 그다음 kk개의 메모에 대한 설명이 주어지고, 마지막으로 요약 파일에 대한 설명이 주어집니다. 각 설명(메모 또는 요약 파일)은 줄의 개수를 나타내는 정수 dd (1d1 \le d)가 적힌 한 줄로 시작하고, 이어서 위에서 설명한 형식의 줄이 dd개 주어집니다.

이름, 숫자, 그리고 기호 =+는 하나의 공백으로 구분되며, 각 줄의 길이는 최대 100100자입니다. 전체 텍스트의 길이와 모든 메모의 길이의 합은 각각 최대 3×1063 \times 10^6입니다.

출력

각 테스트 케이스마다 kk개의 줄을 출력합니다. ii번째 줄에는 ii번째 메모의 전사가 시작될 수 있는 요약 파일의 첫 번째 줄 번호(줄 번호는 11부터 시작)를 출력하고, 그러한 구간이 존재하지 않으면 NONE을 출력합니다.