def fib(n):
    def iter(a, b, cnt):
        if cnt == 0:
            return a
        return iter(b, a+b, cnt-1)
    return iter(1, 1, n)

if __name__ == '__main__':
    n = int(input())
    print(fib(n)) def fib(n):
    def iter(a, b, cnt):
        if cnt == 0:
            return a
        return iter(b, a+b, cnt-1)
    return iter(1, 1, n) fib def iter(a, b, cnt):
        if cnt == 0:
            return a
        return iter(b, a+b, cnt-1)
     iter if cnt == 0:
            return a
         cnt == 0 cnt 0 return a a return iter(b, a+b, cnt-1) iter(b, a+b, cnt-1) iter b a+b a b cnt-1 cnt 1 a a b b cnt cnt return iter(1, 1, n) iter(1, 1, n) iter 1 1 n n n if __name__ == '__main__':
    n = int(input())
    print(fib(n)) __name__ == '__main__' __name__ '__main__' n = int(input()) n int(input()) int input() input print(fib(n)) print fib(n) fib n def fib(n):
    def iter(a, b, cnt):
        if cnt == 0:
            return a
        return iter(b, a+b, cnt-1)
    return iter(1, 1, n) def fib(n):
    def iter(a, b, cnt):
        if cnt == 0:
            return a
        return iter(b, a+b, cnt-1)
    return iter(1, 1, n) fib n = int(input()) int(input()) n
def fib(n):
    def iter(a, b, cnt):
        if cnt == 0:
            return a
        return iter(b, a+b, cnt-1)
    return iter(1, 1, n)

if __name__ == '__main__':
    n = int(input())
    print(fib(n))