import sys input = sys.stdin.readline def read_values(): return map(int, input().split()) def read_list(): return list(read_values()) def construct_mp(W): L = len(W) T = [0]*(L+1) T[0] = j = -1 for i in range(L): while j >= 0 and W[i] != W[j]: j = T[j] j += 1 T[i+1] = j return T def main(): s=input().strip() mod = 998244353 mp = construct_mp(s) ans = pow(10,len(s),mod) - len(s) + 1 now = len(s) while mp[now] > 0: ans += pow(10,mp[now],mod) ans %= mod now = mp[now] print(ans) if __name__ == "__main__": main()