MOD = 10**9+7 HALF = pow(2, MOD-2, MOD) s = input() n = len(s) pos = [[] for _ in range(26)] for i in range(n): pos[ord(s[i])-97].append(i) ans = pow(2, n, MOD) - 1 for i in range(1, n): ans += (n-i) * pow(2, n-1-i, MOD) ans %= MOD for p in pos: l = len(p) cur = 0 for i in range(l-1): d = p[i+1] - p[i] cur *= pow(HALF, d, MOD) cur += pow(2, n-1-d, MOD) cur %= MOD ans -= cur ans %= MOD print(ans)