Now that Chef has finished baking and frosting his cupcakes, it's time to package them. Chef has N cupcakes, and needs to decide how many cupcakes to place in each package. Each package must contain the same number of cupcakes. Chef will choose an integer A between 1 and N, inclusive, and place exactly A cupcakes into each package.  Chef makes as many packages as possible. Chef then gets to eat the remaining cupcakes. Chef enjoys eating cupcakes very much. Help Chef choose the package size A that will let him eat as many cupcakes as possible.


Input

Input begins with an integer T, the number of test cases. Each test case consists of a single integer N, the number of cupcakes.


Output

For each test case, output the package size that will maximize the number of leftover cupcakes. If multiple package sizes will result in the same number of leftover cupcakes, print the largest such size.


Constraints

1 ≤ T ≤ 1000
2 ≤ N ≤ 100000000 (10^8)


Sample Input
2
2
5

Sample Output
2
3

Explanation

In the first test case, there will be no leftover cupcakes regardless of the size Chef chooses, so he chooses the largest possible size.  In the second test case, there will be 2 leftover cupcakes.
# cook your code here

#in case n is odd (eg n=11) then making packets of size n/2+1 will give max remaining cupcakes (here, =11/2+1=6 packet size and 11 pancakes so 1 packet will be made of 6 pancakes and 5 pancakes for eating.
#in case n is even (eg. n=10) then for max remaining pancakes, packet size=n/2+1 again, here, 10/2+1=6, so 4 pancakes left
#so in each case no. of pancakes available for eating=n-(n/2+1)=n-pack_size, where pack_size=size of muffin packet for max remaining. this must not be =0; if =0 (eg. n=2=>n/2+1=2=pack_size so n-pack_size=0) then print n

t=int(raw_input())
for i in range(t):
    n=int(raw_input())
    pack_size=n/2+1
    if n-pack_size==0:
        print n #actually also=n/2+1=pack_size so no if reqd. Just for convenience
    else:
        print pack_size