Problem3636--Hyper String

3636: Hyper String

Time Limit: 2 Sec  Memory Limit: 256 MB
Submit: 0  Solved: 0
[Submit] [Status] [Web Board] [Creator:]

Description

time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output

Paul Erdos's prediction came true. Finally an alien force landed on the Earth. In contrary to our expectation they didn't asked the humans to compute the value of a Ramsey number (maybe they had solved it themselves). They asked another question which seemed as hard as calculating Ramsey numbers. Aliens threatened that if humans don't solve this problem in less than 2 hours they will destroy the Earth.

Before telling the problem they introduced the concept of Hyper Strings. A Hyper String is made by concatenation of some base strings. Suppose you are given a list of base strings b1,b2,...,bn. Now the Hyper String made from indices list i1,i2,...,im is concatenation of base strings bi1,bi2,...,bim. A Hyper String can be very large and doing operations on it is very costly for computers.

The aliens asked humans to compute the length of the longest common sub-sequence of a Hyper String t with a string s.

Input

The first line of input contains the single integer n (1≤n≤2000) − the number of base strings.

The next n lines contains values of base strings. Each base string is made of lowercase Latin letters. A base string cannot be empty string and the sum of lengths of all n base strings doesn't exceed 106.

The next line contains the single integer m (1≤m≤2000) − the number of base strings in the given Hyper String t.

The next line contains m space-separated integer numbers i1,i2,...,im (1≤ijn) − the indices of base strings in the Hyper String t.

The last line contains a non-empty string s. String s is made of lowercase Latin letters and its length is no more than 2000 characters.

Output

Print the length of longest common sub-sequence of Hyper String t and string s. If there is no common sub-sequence print 0.

Examples
Input
2
cba
dgh
2
1 2
aedfhr
Output
3
Input
2
b
a
5
1 2 1 2 1
aaa
Output
2
Note

The length of string s is the number of characters in it. If the length of string s is marked as |s|, then string s can be represented as s=s1s2... s|s|.

A non-empty string y=s[p1p2... p|y|]=sp1sp2... sp|y| (1≤p1<p2<...<p|y|≤|s|) is a subsequence of string s. For example, "coders" is a subsequence of "codeforces".

Source/Category