- Time limit: 1.00 s
- Memory limit: 512 MB
You are given a string consisting of n characters between a and z.
On each turn, you may remove any two adjacent characters that are equal. Your goal is to construct an empty string by removing all the characters.
In how many ways can you do this?
Input
The only input line has a string of length n.
Output
Print one integer: the number of ways modulo 10^9+7.
Constraints
- 1 \le n \le 500
Example
Input:
aabccb
Output:
3