CSES - Empty String
  • Time limit: 1.00 s
  • Memory limit: 512 MB

You are given a string consisting of nn 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 nn.

Output

Print one integer: the number of ways modulo 109+710^9+7.

Constraints

  • 1n5001 \le n \le 500

Example

Input:

aabccb

Output:

3