func_code_string: #include <bits/stdc++.h>   using namespace std;   long long gcd(long long a, long long b, long long& x, long long& y) {     cerr <<  a ==   << a <<   b ==   << b << endl;     if (a == 0) {       x = 0;       y = 1;       return b;     }     long long x1, y1;     long long d = gcd(b % a, a, x1, y1);     cerr <<  x1 ==   << x1 <<   y1 ==   << y1 << endl;     x = y1 - (b / a) * x1;     y = x1;     cerr <<  x ==   << x <<   y ==   << y << endl;     return d;   }   long long fact(long long a) {     long long ans = 1;     for (int i = 2; i <= a; ++i) ans = (ans * i) % 1000000007;     return ans;   }   int main() {     int n;     cin >> n;     long long ans = fact(2 * n - 1) % 1000000007;     long long tmp = (fact(n) * fact((2 * n - 1) - n)) % 1000000007;     long long x, y;     cerr << tmp <<     << ans << endl;     gcd(tmp, 1000000007, x, y);     cerr << x << endl;     while (x < 0) x += 1000000007;     ans = (ans * (x % 1000000007)) % 1000000007;     if (n == 2)       cout << 4 << endl;     else       cout << (ans * 2 - n) % 1000000007;     return 0;   }   