#1_10_A
n = int(input())
MEMO = [None] * (n + 1)

def Fib(i):
    if i == 0 or i == 1:
        return 1
        
    if MEMO[i]:
        return MEMO[i]
    
    r =  Fib(i-1) + Fib(i-2)
    MEMO[i] = r
    return r
     
print(Fib(n)) n = int(input()) n int(input()) int input() input MEMO = [None] * (n + 1) MEMO [None] * (n + 1) [None] None n + 1 n 1 def Fib(i):
    if i == 0 or i == 1:
        return 1
        
    if MEMO[i]:
        return MEMO[i]
    
    r =  Fib(i-1) + Fib(i-2)
    MEMO[i] = r
    return r
      Fib if i == 0 or i == 1:
        return 1
        
     i == 0 or i == 1 i == 0 i 0 i == 1 i 1 return 1 1 if MEMO[i]:
        return MEMO[i]
    
     MEMO[i] MEMO i return MEMO[i] MEMO[i] MEMO i r =  Fib(i-1) + Fib(i-2) r Fib(i-1) + Fib(i-2) Fib(i-1) Fib i-1 i 1 Fib(i-2) Fib i-2 i 2 MEMO[i] = r MEMO[i] MEMO i r return r r i i print(Fib(n)) print Fib(n) Fib n def Fib(i):
    if i == 0 or i == 1:
        return 1
        
    if MEMO[i]:
        return MEMO[i]
    
    r =  Fib(i-1) + Fib(i-2)
    MEMO[i] = r
    return r
      def Fib(i):
    if i == 0 or i == 1:
        return 1
        
    if MEMO[i]:
        return MEMO[i]
    
    r =  Fib(i-1) + Fib(i-2)
    MEMO[i] = r
    return r
      Fib MEMO = [None] * (n + 1) [None] * (n + 1) MEMO n = int(input()) int(input()) n
#1_10_A
n = int(input())
MEMO = [None] * (n + 1)

def Fib(i):
    if i == 0 or i == 1:
        return 1
        
    if MEMO[i]:
        return MEMO[i]
    
    r =  Fib(i-1) + Fib(i-2)
    MEMO[i] = r
    return r
     
print(Fib(n))
