- Time limit: 1.00 s
- Memory limit: 512 MB
You are given a string of length and a dictionary containing words. In how many ways can you create the string using the words?
Input
The first input line has a string containing characters between a–z.
The second line has an integer : the number of words in the dictionary.
Finally there are lines describing the words. Each word is unique and consists of characters a–z.
Output
Print the number of ways modulo .
Constraints
- the total length of the words is at most
Example
Input:
ababc 4 ab abab c cb
Output:
2
Explanation: The possible ways are ab+ab+c
and abab+c
.