AT_jag2018summer_day2_h Prefix Suffix Free
Description
[problemUrl]: https://atcoder.jp/contests/jag2018summer-day2/tasks/jag2018summer_day2_h
You are given a string $ S $ consisting of lowercase English letters. Count the number of strings $ T $ that satisfies all of the following conditions:
- $ T $ is a string of the same length as $ S $, consisting of lowercase English letters.
- For all $ K $ ( $ 1\ \leq\ K\ \leq\ |S| $ ), the string formed by the first $ K $ letters of $ S $ does not coincide with the string formed by the last $ K $ letters of $ T $.
Since the answer can be very large, find the number modulo $ 10^9+7 $.
Input Format
Input is given from Standard Input in the following format:
> $ S $
Output Format
Print the number of strings that satisfy the condition, modulo $ 10^9+7 $.
Explanation/Hint
### Constraints
- $ 1\ \leq\ |S|\ \leq\ 10^6 $
- $ S $ consists of lowercase English letters.
### Sample Explanation 1
For example, $ T= $ `zz` and `ab` satisfy the condition, but `ba` or `aa` does not.