**Time limit:**1.00 s**Memory limit:**512 MB

You are given a string. You can remove any number of characters from it, but you cannot change the order of the remaining characters.

How many different strings can you generate?

# Input

The first input line contains a string of size n. Each character is one of a–z.

# Output

Print one integer: the number of strings modulo 10^9+7.

# Constraints

- 1 \le n \le 5 \cdot 10^5

# Example

Input:

aybabtu

Output:

103