import sys sys.setrecursionlimit(10**7) def I(): return int(sys.stdin.readline().rstrip()) def MI(): return map(int,sys.stdin.readline().rstrip().split()) def LI(): return list(map(int,sys.stdin.readline().rstrip().split())) def LI2(): return list(map(int,sys.stdin.readline().rstrip())) def S(): return sys.stdin.readline().rstrip() def LS(): return list(sys.stdin.readline().rstrip().split()) def LS2(): return list(sys.stdin.readline().rstrip()) S = S() N = len(S) mod = 998244353 power0 = [1] for _ in range(N): power0.append((power0[-1]*11) % mod) power1 = [1] for _ in range(N): power1.append((power1[-1]*2) % mod) ans = 0 for i in range(N): s = int(S[i]) ans += s*power0[N-1-i]*power1[i] ans %= mod print(ans)