MOD = 10 ** 9 + 7 N = int(input()) fact = [1]*(N+1) rfact = [1]*(N+1) r = 1 for i in range(1, N+1): fact[i] = r = r * i % MOD rfact[N] = r = pow(fact[N], -1, MOD) for i in range(N, 0, -1): rfact[i-1] = r = r * i % MOD def comb(n, k): return fact[n] * rfact[k] * rfact[n-k] % MOD ans = 0 for i in range(1,N+1): tmp = comb(N,i) tmp *= pow(i,N-i,MOD) tmp %= MOD ans += tmp ans %= MOD print(ans)