대수학 협업

아직 제출이 없습니다시간 제한3초메모리 제한256 MB

문제

군론을 연구하는 사람들과 선형대수를 연구하는 사람들이 두 이론을 합치려고 한다. 군론에서는 전단사 함수, 즉 순열이 중요한 역할을 한다. 유한집합 AA에 대해 함수 σ:AA\sigma : A \to AAA의 순열이라는 것은, 모든 aAa \in A에서 σ(ρ(a))=a\sigma(\rho(a)) = a이고 ρ(σ(a))=a\rho(\sigma(a)) = a인 함수 ρ:AA\rho : A \to A가 존재한다는 뜻이다.

팀의 나머지 절반인 선형대수 전문가는 멱등 함수를 많이 다룬다. 멱등 함수는 3차원 게임에서 그림자를 계산할 때 쓰는 사영으로 나타나고, 추이 폐포 같은 폐포 연산자로도 나타난다. 함수 p:AAp : A \to A가 멱등이라는 것은 모든 aAa \in A에서 p(p(a))=p(a)p(p(a)) = p(a)가 성립한다는 뜻이다.

두 팀은 유한집합 AA의 순열 중 멱등이 아닌 것이 몇 개인지 알고 싶다. 그 개수가 AA의 크기에만 달려 있다는 사실은 이미 알아냈다. 크기 nn이 주어질 때, 원소가 nn개인 집합의 순열 중 멱등이 아닌 것의 개수를 구하라.

입력

첫 줄에 테스트 케이스의 개수 tt가 주어진다 (1t1001 \le t \le 100). 이어지는 tt개의 줄에 집합의 크기 nn이 한 줄에 하나씩 주어진다 (1n1051 \le n \le 10^5).

출력

각 테스트 케이스마다 원소가 nn개인 집합의 순열 중 멱등이 아닌 것의 개수를 109+7=100000000710^9 + 7 = 1000000007로 나눈 나머지를 한 줄에 출력한다.