#include #include using namespace std; const long long mod = 1000000007; const long long mod2 = mod*2+2; pair fib(long long n, long long m) { if (n == 0) return {0,1}; if (n % 2){ auto p = fib(n-1,m); return {p.second, (p.first + p.second) % m}; } auto p = fib(n/2,m); long long s = (p.second * p.second + p.first * p.first) % m; long long f = (p.second * p.first + p.first * (p.second - p.first + m)) % m; return {f,s}; } int main() { long long n; scanf ("%lld",&n); printf ("%lld\n",fib(fib(n,mod2).first,mod).first); return 0; }