def readint(): return map(int, input().split()) def readlist(): return list(readint()) n = input() dp = [[[0] * 2 for _ in range(2)] for _ in range(len(n) + 5)] dp[0][0][0] = 1 for i in range(len(n)): for j in range(2): for k in range(2): if dp[i][j][k] == 0: continue lim = int(n[i]) if j == 0 else 9 for digit in range(lim + 1): tight = 1 if j == 1 or digit < lim else 0 flag = 1 if k == 1 or digit == 8 else 0 dp[i + 1][tight][flag] = ( dp[i + 1][tight][flag] + dp[i][j][k] ) % 998244353 ans = dp[len(n)][0][1] + dp[len(n)][1][1] print(ans % 998244353)