import sys sys.setrecursionlimit(10**6) S = input() length = len(S) mod = 10**9+7 dp = [0]*length def rec(left_start, right_end): count = 1 for left_end, right_start in zip(range(left_start+1, length//2+1), range(right_end-1, (length+1)//2-1, -1)): if S[left_start:left_end] == S[right_start:right_end]: count += dp[left_end] or rec(left_end, right_start) dp[left_start] = count % mod return dp[left_start] print(rec(0, len(S)))