#include using namespace std; typedef unsigned long long ll; typedef std::pair P; #define For(i, a, b) for(int i = (a); i < (b); i++) #define Rep(i, n) For(i, 0, (n)) #define Rrep(i, n) for(int i = (n - 1); i >= 0; i--) #define All(i, x) for(typeof(x.begin()) i = x.begin(); i != x.end(); i++) #define ReAll(i, x) for(typeof(x.end()) i = x.end(); i != x.begin(); i--) #define pb push_back const int dx[4] = {1, 0, -1, 0}, dy[4] = {0, 1, 0, -1}; const int MAX = 100000; const int INF = 1e9; const int MOD = 1000000007; const string END = "\n"; void solve(){ ll n; cin >> n; ll a[n][9]; ll ans = 0; Rep(i, n){ Rep(j, 9){ if(i == 0){ a[i][j] = 1; ans += 1; }else{ ll tmp = 0; Rep(k, j+1){ tmp += a[i-1][k]; tmp %= MOD; } a[i][j] = tmp; ans += tmp; ans %= MOD; } } } cout << (ans + 1) % MOD << END; } int main(){ cin.tie(0); ios::sync_with_stdio(false); solve(); return 0; }