MOD = 998244353 def factorial(n): F = [1] for i in range(1, n+1): F.append(F[-1]*i%MOD) invF = [pow(F[-1], -1, MOD)] for i in reversed(range(n)): invF.append(invF[-1]*(i+1)%MOD) invF = invF[::-1] return F, invF F, invF = factorial(10**6) N = int(input()) if N == 1: exit(print(1)) dp = [[0]*(N+1) for _ in range(N+1)] dp[0][0] = 1 for i in range(N): for j in range(N+1): if dp[i][j] == 0: continue if i == 0: dp[i+1][j+1] += dp[i][j] dp[i+1][j+1] %= MOD if i+2 <= N: dp[i+2][j+1] += dp[i][j] dp[i+2][j+1] %= MOD else: if i+2 <= N: dp[i+2][j+1] += dp[i][j] dp[i+2][j+1] %= MOD if i+3 <= N: dp[i+3][j+1] += dp[i][j] dp[i+3][j+1] %= MOD ans = 0 for i in range(N-1, N+1): for j in range(N+1): ans += dp[i][j]*F[j]%MOD*F[N-j]%MOD ans %= MOD print(ans)