DPDPDPDP
import sys
n = int(sys.stdin.readline().rstrip())
#dp = [0 for _ in range(n+1)]
dp = 1 # 사자를 한 마리도 배치하지 않는 경우도 하나의 경우의 수
#chk = [0 for _ in range(n+1)] # 더할 수 4, chk[0]+dp[1]*2, chk[1]+dp[2]*2
chk = 2
for i in range(1,n+1) :
#print(i, dp, chk)
olddp = dp
dp = dp + chk#dp[i-1] + chk[i-1]
chk = chk + olddp*2
# chk[i] = chk[i-1] + dp[i-1]*2
print(dp%9901)
import sys
n = int(sys.stdin.readline().rstrip())
#dp = [0 for _ in range(n+1)]
dp = 1 # 사자를 한 마리도 배치하지 않는 경우도 하나의 경우의 수
#chk = [0 for _ in range(n+1)] # 더할 수 4, chk[0]+dp[1]*2, chk[1]+dp[2]*2
chk = 2
for i in range(1,n+1) :
#print(i, dp, chk)
olddp = dp
dp = dp + chk#dp[i-1] + chk[i-1]
chk = chk + olddp*2
# chk[i] = chk[i-1] + dp[i-1]*2
print(dp%9901)
-나누기를 안해줬어
import sys
n = int(sys.stdin.readline().rstrip())
dp = [0 for _ in range(n+1)]
dp[0] = 1 # 사자를 한 마리도 배치하지 않는 경우도 하나의 경우의 수
chk = [0 for _ in range(n+1)] # 더할 수 4, chk[0]+dp[1]*2, chk[1]+dp[2]*2
chk[0] = 2
for i in range(1,n+1) :
#print(i, dp, chk)
dp[i] = dp[i-1] + chk[i-1]
chk[i] = chk[i-1] + dp[i-1]*2
print(dp[-1])
import sys
n = int(sys.stdin.readline().rstrip())
dp = [0 for _ in range(n+1)]
dp[0] = 1 # 사자를 한 마리도 배치하지 않는 경우도 하나의 경우의 수
chk = [0 for _ in range(n+1)] # 더할 수 4, chk[0]+dp[1]*2, chk[1]+dp[2]*2
chk[0] = 2
for i in range(1,n+1) :
#print(i, dp, chk)
dp[i] = dp[i-1] + chk[i-1]
chk[i] = chk[i-1] + dp[i-1]*2
print(dp[-1]%9901)