n = int(raw_input())
dp = {}

def fib(n):
    if n in dp: return dp[n]
    if n == 0:
        dp[n] = 1
        return 1
    elif n == 1:
        dp[n] = 1
        return 1
    else:
        dp[n] = fib(n-1)+fib(n-2)
        return dp[n]

print fib(n) n = int(raw_input()) n int(raw_input()) int raw_input() raw_input dp = {} dp {} def fib(n):
    if n in dp: return dp[n]
    if n == 0:
        dp[n] = 1
        return 1
    elif n == 1:
        dp[n] = 1
        return 1
    else:
        dp[n] = fib(n-1)+fib(n-2)
        return dp[n] fib if n in dp: return dp[n]
     n in dp n dp if n == 0:
        dp[n] = 1
        return 1
    elif n == 1:
        dp[n] = 1
        return 1
    else:
        dp[n] = fib(n-1)+fib(n-2)
        return dp[n] n == 0 n 0 dp[n] = 1 dp[n] dp n 1 return 1 1 elif n == 1:
        dp[n] = 1
        return 1
     n == 1 n 1 dp[n] = 1 dp[n] dp n 1 return 1 1 dp[n] = fib(n-1)+fib(n-2) dp[n] dp n fib(n-1)+fib(n-2) fib(n-1) fib n-1 n 1 fib(n-2) fib n-2 n 2 return dp[n] dp[n] dp n n n print fib(n) fib n dp = {} {} dp n = int(raw_input()) int(raw_input()) n def fib(n):
    if n in dp: return dp[n]
    if n == 0:
        dp[n] = 1
        return 1
    elif n == 1:
        dp[n] = 1
        return 1
    else:
        dp[n] = fib(n-1)+fib(n-2)
        return dp[n] def fib(n):
    if n in dp: return dp[n]
    if n == 0:
        dp[n] = 1
        return 1
    elif n == 1:
        dp[n] = 1
        return 1
    else:
        dp[n] = fib(n-1)+fib(n-2)
        return dp[n] fib
n = int(raw_input())
dp = {}

def fib(n):
    if n in dp: return dp[n]
    if n == 0:
        dp[n] = 1
        return 1
    elif n == 1:
        dp[n] = 1
        return 1
    else:
        dp[n] = fib(n-1)+fib(n-2)
        return dp[n]

print fib(n)