PreQueL

Time Limit: 1 Second    Memory Limit: 32768 KB

In some simplistic DBMS named PreQueL, the only column type allowed is CHAR(1) (a single character), and furthermore, its values are restricted to English upper-case letters ('A' to 'Z'). Table may contain up to 9 columns, numbered from 1 to 9. Tables themselves are named with lower-case English letters ('a' to 'z').

The only database query possible first joins all the tables, then selects some rows according to conditions in one of two forms: either = or =, for example a2=A or b1=c4. All conditions must hold simultaneously, as if they were connected by 'AND' operator.

You must write a PreQueL processor, which, given a tables and a set of conditions, will produce query result, i.e. those rows of a join satisfying all the conditions. Resulting rows must be sorted alphabetically.

Input

The first line of input file contains of two integers - number of tables T and number of conditions D.

Starting from the second line there are T tables represented with number of rows RN and number of columns CN in the first line of a table, which is followed by RN lines consisting of exactly CN characters each. D lines with conditions follow the whole set of tables.

The constraints are: 1 <= T <= 26, 1 <= D <= 50, 1 <= CN <= 9, 1 <= RN <= 1000.

Process to the end of file.

Output

Output file contains result rows, one row per line. No input query will produce more than 1000 rows. The result rows are to be sorted alphabetically.

Sample Input

2 2
3 2
AX
BX
BY
2 3
ACD
BCC
a1=b1
a2=X

Sample Output

AXACD
BXBCC
Submit

Source: Northeastern Europe 2000, Far-Eastern Subregion