Mod = int(1e9) + 7 N = int(input()) C = [[0] * (N + 1) for r in range(N + 1)] dp = [[0] * (N + 1) for r in range(N + 1)] dp[0][0] = 1 ans = 0 for r in range(N + 1): C[r][0] = C[r][r] = 1 for c in range(1, r): C[r][c] = (C[r - 1][c] + C[r - 1][c - 1]) % Mod for pair in range(1, N + 1): for num in range(1, pair + 1): dp[pair][num] = (dp[pair - 1][num - 1] + dp[pair - 1][num] * num) % Mod ans = (ans + dp[pair][num] * C[N][pair] * pow(num * (num - 1), N - pair, Mod)) % Mod print(ans)