// test
// https://yukicoder.me/submissions/246985

#include <iostream>
#include <vector>
#include <algorithm>
#include <iterator>
#include <array>
#include <map>
#include <stack>
#include <queue>
#include <set>

using namespace std;

int main() {

    long N;
    cin >> N;

    vector<long long> dp;

    constexpr unsigned long long m = 1e9 + 7;

    dp.push_back(0);
    dp.push_back(1);
    dp.push_back(2);
    dp.push_back(2);
    for (long i = 4; i <= N; ++i) {
        dp.push_back((dp[i - 2] + dp[i - 3]) % m);
    }

    cout << dp[N] << "\n";

    return 0;
}