#include <algorithm> #include <cmath> #include <cstdio> #include <cstring> #include <deque> #include <iostream> #include <map> #include <queue> #include <set> #include <stack> #include <string> #include <utility> #include <vector> #define p(s) cout<<(s)<<endl #define REP(i,n,N) for(int i=n;i<N;i++) #define RREP(i,n,N) for(int i=N-1;i>=n;i--) #define CK(n,a,b) ((a)<=(n)&&(n)<(b)) #define F first #define S second typedef long long int ll; using namespace std; const ll mod=1e9+7; int N; int dp[1000010][3]; ll ans; int main(){ cin>>N; dp[0][0]=1; REP(i,0,N){ REP(j,0,3){ if(j<2) dp[i+1][j+1] += dp[i][j];//ケン if(j>0) dp[i+1][0] += dp[i][j];//パー dp[i+1][j+1]%=mod; dp[i+1][0]%=mod; } } REP(j,0,3){ ans += dp[N][j]; ans%=mod; } p(ans); return 0; }