#include <bits/stdc++.h>
using namespace std;
int n = 1;
long long dp[2010][1100][2];
long long mod = 1000000007;
long long go(int i, int s, int t) {
  if (i == n) {
    return 0;
  }
  long long &ret = dp[i][s][t];
  if (ret != -1) return ret % mod;
  ret = 0;
  if (t == 0) {
    if (n - i - 1 > s) {
      ret = max(0LL, 1 + go(i + 1, s + 1, 1)) % mod;
      if (s - 1 >= 0) ret += max(0LL, go(i + 1, s - 1, 0)) % mod;
    } else if (s - 1 >= 0)
      ret += max(0LL, 1 + go(i + 1, s - 1, 1)) % mod;
  } else {
    if (n - i - 1 > s) ret += max(0LL, go(i + 1, s + 1, 0)) % mod;
    if (s - 1 >= 0) ret += max(0LL, go(i + 1, s - 1, 0)) % mod;
  }
  return ret % mod;
}
int main() {
  cin >> n;
  n *= 2;
  memset(dp, -1, sizeof dp);
  cout << go(0, 0, 0);
  return 0;
}
