#include #define MOD 1000000007 #define ull unsigned long long #include using namespace std; ull logpow(ull b, ull p){ if(p==0) return 1LL; if(p==1) return b; ull x = logpow(b, p/2); if(p%2==0){ return (x*x)%MOD; } else return ((x*x)%MOD*b)%MOD; } ull fact[300200]; ull comb(int b, int a){ return ((( fact[b] * logpow(fact[a], MOD-2))%MOD * logpow(fact[b-a], MOD-2)) %MOD)%MOD; } int main() { int n; cin>>n; fact[0]=1LL; for(int i=1; i<=2*n; i++){ fact[i] = ((fact[i-1])*i)%MOD; } map freqs; int x; for(int i=0; i>x; freqs[x]++; } ull sol=1; for(auto p:freqs){ sol = (sol * comb(2*p.second, p.second) )%MOD; } sol = (sol+MOD-1)%MOD; cout<