#include <bits/stdc++.h>
using namespace std;
long long c[1005][1005];
long long dp[1005][1005], n;
int main() {
  memset(dp, 0, sizeof dp);
  for (int i = 1; i <= 1000; i++) dp[i][0] = i / 2 + i % 2;
  for (int i = 1; i <= 1000; i++) dp[i][0] = i / 2 + i % 2;
  for (int i = 1; i <= 1000; i++) {
    for (int j = 1; j <= i; j++) {
      long long t = (dp[i - 1][j] + 1) % 1000000007;
      ;
      if (j - 1 >= 0 && i - 1 >= 0) t = (t + dp[i - 1][j - 1]) % 1000000007;
      ;
      if (j - 2 >= 0) t = (t + dp[i][j - 2]) % 1000000007;
      ;
      dp[i][j] = t;
    }
  }
  cin >> n;
  cout << dp[n][n] << endl;
}
