#include<bits/stdc++.h>
using namespace std;
#define ll long long
const ll M = 1e9;//M为压位的最大值
ll a[60004], l, sum[120004];
int n;
void Prime(int b, int f) {
for (int j = 2; j * j <= b && b != 1; j++)//质因数分解.
while (b % j == 0) {
sum[j] += f;
b /= j;
}
if (b)
sum[b] += f;
}
void High(ll c) {
for (int i = 1; i <= l; i++)
a[i] *= c;
for (int i = 1; i <= l; i++)
a[i + 1] += a[i] / M, a[i] %= M;//我们需要压缩位置快速处理
while (a[l + 1])
++l;
}
int main() {
a[1] = 1, l = 1;
scanf("%d", &n);
for (int i = 1; i <= n; i++)//对于两个组合数相除,我们这道题目必须使用快速的质因数分解法,去处理.
Prime(n + i, 1);
for (int i = 2; i <= n + 1; i++)
Prime(i, -1);
for (int i = 2; i <= 2 * n; i++)
for (ll j = 0; j < sum[i]; ++j)
High(i);//高精度
printf("%lld", a[l]);
for (ll i = l - 1; i; --i)
printf("%09lld", a[i]);//输出
return 0;
}