#include<bits/stdc++.h>
#define ll long long int
#define print(a) for (auto x : a) cout << x << " "; cout << endl
#define print_upto(a,n) for(int i=0;i<n;i++) cout<<a[i]<<" "; cout<<endl
#define take(x,n) for(int i=0;i<n;i++) cin>>x[i];
#define watch(x) cout << (#x) << " is " << (x) << "\n"
#define watch2(x,y) cout <<(#x)<<" is "<<(x)<<" and "<<(#y)<<" is "<<(y)<<"\n"
using namespace std;
ll n;
map<ll, ll> mp;
ll func(ll n) {
if (n == 1 || n == 2)
return n;
if (mp[n] != 0)
return mp[n];
return mp[n] = func(n - 1) + func(n - 2);
}
int main() {
ios_base::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
// #ifndef ONLINE_JUDGE
// freopen("input.txt", "r", stdin);
// freopen("output.txt", "w", stdout);
// freopen("error.txt" , "w" , stderr);
// #endif
cin >> n;
mp[0] = 1;
mp[1] = 1;
mp[2] = 1;
ll ans = func(n);
cout << ans << "\n";
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KI2RlZmluZSBsbCBsb25nIGxvbmcgaW50CgojZGVmaW5lIHByaW50KGEpICAgICAgICBmb3IgKGF1dG8geCA6IGEpIGNvdXQgPDwgeCA8PCAiICI7IGNvdXQgPDwgZW5kbAojZGVmaW5lIHByaW50X3VwdG8oYSxuKSAgICAgICAgZm9yKGludCBpPTA7aTxuO2krKykgICAgY291dDw8YVtpXTw8IiAiOyBjb3V0PDxlbmRsCiNkZWZpbmUgdGFrZSh4LG4pICAgICAgICAgICBmb3IoaW50IGk9MDtpPG47aSsrKSAgY2luPj54W2ldOwoKI2RlZmluZSB3YXRjaCh4KSBjb3V0IDw8ICgjeCkgPDwgIiBpcyAiIDw8ICh4KSA8PCAiXG4iCiNkZWZpbmUgd2F0Y2gyKHgseSkgY291dCA8PCgjeCk8PCIgaXMgIjw8KHgpPDwiIGFuZCAiPDwoI3kpPDwiIGlzICI8PCh5KTw8IlxuIgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmxsIG47Cm1hcDxsbCwgbGw+IG1wOwoKbGwgZnVuYyhsbCBuKSB7CglpZiAobiA9PSAxIHx8IG4gPT0gMikKCQlyZXR1cm4gbjsKCglpZiAobXBbbl0gIT0gMCkKCQlyZXR1cm4gbXBbbl07CgoJcmV0dXJuIG1wW25dID0gZnVuYyhuIC0gMSkgKyBmdW5jKG4gLSAyKTsKfQoKaW50IG1haW4oKSB7CgoJaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7CgljaW4udGllKDApOwoJY291dC50aWUoMCk7CgovLyAjaWZuZGVmIE9OTElORV9KVURHRQovLyAJZnJlb3BlbigiaW5wdXQudHh0IiwgInIiLCBzdGRpbik7Ci8vIAlmcmVvcGVuKCJvdXRwdXQudHh0IiwgInciLCBzdGRvdXQpOwovLyAJZnJlb3BlbigiZXJyb3IudHh0IiAsICJ3IiAsIHN0ZGVycik7Ci8vICNlbmRpZgoKCWNpbiA+PiBuOwoKCW1wWzBdID0gMTsKCW1wWzFdID0gMTsKCW1wWzJdID0gMTsKCglsbCBhbnMgPSBmdW5jKG4pOwoJY291dCA8PCBhbnMgPDwgIlxuIjsKCglyZXR1cm4gMDsKfQ==