"""

https://yukicoder.me/problems/no/1171

runが増えるのは、新たな文字を追加する場合
入れる・入れないを選べるので

dp[i][最後の文字] = 現在門戸を開いている数
同じ文字を重ねて置いた場合、門戸は増えるが連は増えない

"""

from sys import stdin
S = stdin.readline()
S = S[:-1]

alp = "abcdefghijklmnopqrstuvwxyz"
ad = {}
for i in range(26):
    ad[alp[i]] = i

dp = [0] * 27
dp[-1] = 1
mod = 10**9+7

ans = 0

for loop in range(len(S)):
    i = S[loop]

    nsum = sum(dp) - dp[ad[i]]
    ans += nsum * pow(2,len(S)-loop-1,mod)
    ans %= mod
    dp[ad[i]] += sum(dp)
    dp[ad[i]] %= mod

print (ans)