from functools import cache MOD = 998244353 S = input() N = len(S) @cache def f(n,ptr,giri): if(ptr == 3):return 0 if(n == N):return 1 ret = 0 if(giri): for i in range(int(S[n])): next_ptr = ptr + 1 if int("404"[ptr]) == i else 1 if i == 4 else 0 ret += f(n+1,next_ptr,False) ret %= MOD next_ptr = ptr + 1 if int("404"[ptr]) == int(S[n]) else 1 if int(S[n]) == 4 else 0 ret += f(n+1,next_ptr,True) ret %= MOD else: for i in range(10): next_ptr = ptr + 1 if int("404"[ptr]) == i else 1 if i == 4 else 0 ret += f(n+1,next_ptr,False) ret %= MOD return ret print((f(0,0,True) - 1) % MOD)