소수 곱과 최소공배수

N이 주어지면 1부터 N까지 최소공배수를 N 이하 모든 소수의 곱으로 나눈 몫을 1000000007로 나눈 나머지를 출력합니다.

보통7정수론수학아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

정수 NN이 주어진다. 11부터 NN까지의 모든 정수의 최소공배수를 LCM(1,2,,N)\mathrm{LCM}(1, 2, \ldots, N)이라 하고, NN 이하의 모든 소수를 곱한 값을 P(N)P(N)이라 하자.

LCM(1,2,,N)\mathrm{LCM}(1, 2, \ldots, N)은 항상 P(N)P(N)으로 나누어떨어진다. 그 몫을 10000000071000000007로 나눈 나머지를 구하라.

예를 들어 N=5N = 5이면 LCM(1,2,3,4,5)=60\mathrm{LCM}(1, 2, 3, 4, 5) = 60이고 P(5)=2×3×5=30P(5) = 2 \times 3 \times 5 = 30이므로 몫은 60/30=260 / 30 = 2이다.

입력

첫 줄에 테스트 케이스의 개수 TT가 주어진다. (1T500001 \le T \le 50\,000)

이어지는 TT개의 줄에 정수 NN이 한 줄에 하나씩 주어진다. (2N10142 \le N \le 10^{14})

출력

각 테스트 케이스마다 Case x: S 형식으로 한 줄씩 출력한다. xx11부터 시작하는 테스트 케이스 번호이고, SS는 몫을 10000000071000000007로 나눈 나머지이다.