MOD = 10 ** 9 + 7 N = gets.to_i A = Array.new(N + 1, 0); A[1] = 1 S = Array.new(N + 1, 0); S[1] = 1 (2 .. N).each do |i| A[i] = (i * S[i - 1]) % MOD S[i] = (S[i - 2] + A[i]) % MOD end puts A[N]