LOCKER - Magic of the locker

Vertu, the clever businessman, sells the ropes to his customers at the rate of 1 rupee per meter. He can only sell an integer length of a rope to a customer. Also, he has a magic locker which functions this way:

Suppose the locker has 'x' rupees. Now if 'y' rupees more are put into this locker, it multiplies them and total money in the locker now is 'x × y'.

This morning, Vertu starts his bussiness with 'n' meters of rope. He puts 1 rupee in the locker as to have good luck.

Find the maximum money he can earn today considering that he sold all of his rope at the end of the day.

NOTE: Vertu has to put all rupees into the locker as soon as he gets it, and can get rupees from locker only at the end of the day.

Input and Output

The first line contains t, the number of test cases. t lines follow, each containing one positive integer n. For each of these integers, print the required answer modulo (109+7).

Constraints

t < 105

0 < n < 1012

Example

Input:
2
4
5

Output:
4
6

Added by:darkshadows
Date:2013-03-28
Time limit:1s
Source limit:5000B
Memory limit:1536MB
Cluster: Cube (Intel G860)
Languages:All except: ASM64
Resource:Own problem

hide comments
2013-12-20 08:21:50 [Lakshman]
TLE...TLE AC 0.12 Second....
2013-12-20 08:21:50 raunakrocks
easy1..AC!!
2013-12-20 08:21:50 Michael Kharitonov
@ Ankit Paharia: You need fast i/o and precomputation.
2013-12-20 08:21:50 Ankit Paharia
My best time is 0.16 seconds... I want to know how it is AC in 0.00 or 0.01 seconds.. please reply who got AC in 0.00 or 0.01 ...
2013-12-20 08:21:50 daft_wullie
Nice problem. Is it possible to get AC with a python solution using an O(logn) algo?
--ans(francky)--> Yes it is, check Py3 rank list ;-) But it will be hard. (Py2.7 is possible too). I've let a comment in that way, but author deleted it :-(
--edit(RĂ¼diger)--> Now I got AC using C++ and same algo. I would appreciate to increase time limit for python so that correct algo can pass.

Last edit: 2013-04-01 19:44:36
© Spoj.com. All Rights Reserved. Spoj uses Sphere Engine™ © by Sphere Research Labs.