Problem: The statement of this problem is the same as the statement of problem C1. The only difference is that, in problem C1, n is always even, and in C2, n is always odd.

You are given a regular polygon with 2 ⋅ n vertices (it's convex and has equal sides and equal angles) and all its sides have length 1. Let's name it as 2n-gon.

Your task is to find the square of the minimum size such that you can embed 2n-gon in the square. Embedding 2n-gon in the square means that you need to place 2n-gon in the square in such way that each point which lies inside or on a border of 2n-gon should also lie inside or on a border of the square.

You can rotate 2n-gon and/or the square.

Input

The first line contains a single integer T (1 ≤ T ≤ 200) — the number of test cases.

Next T lines contain descriptions of test cases — one per line. Each line contains single odd integer n (3 ≤ n ≤ 199). Don't forget you need to embed 2n-gon, not an n-gon.

Output

Print T real numbers — one per test case. For each test case, print the minimum length of a side of the square 2n-gon can be embedded in. Your answer will be considered correct if its absolute or relative error doesn't exceed 10^{-6}.

Example

Input


3
3
5
199


Output


1.931851653
3.196226611
126.687663595

Solution (in PYTHON3):

Solution:
solution  = {
3: 1.9318516566168684, 5: 3.1962266154895227, 7: 4.465702138555225, 9: 5.736856625445605, 11: 7.008771027108681, 13: 8.281093792726105, 15: 9.553661307773872, 17: 10.826387082930989, 19: 12.099221095538162, 21: 13.37213239223544, 23: 14.645100801220043, 25: 15.91811260829573, 27: 17.191158165121383, 29: 18.46423048630482, 31: 19.737324389919028, 33: 21.01043595073844, 35: 22.28356214103188, 37: 23.55670058790705, 39: 24.82984940774907, 41: 26.10300707771331, 43: 27.3761723648695, 45: 28.649344253436915, 47: 29.922521900564597, 49: 31.195704601032457, 51: 32.46889176025982, 53: 33.742082873426554, 55: 35.01527750915028, 57: 36.288475296600815, 59: 37.5616759152356, 61: 38.83487908655478, 63: 40.108084567427035, 65: 41.38129214464761, 67: 42.65450163047119, 69: 43.9277128589218, 71: 45.200925682726385, 73: 46.474139970752574, 75: 47.747355608353246, 77: 49.02057248549742, 79: 50.29379051040848, 81: 51.567009598062775, 83: 52.84022967163215, 85: 54.11345066151974, 87: 55.38667250452869, 89: 56.659895143143025, 91: 57.93311852490338, 93: 59.20634260186318, 95: 60.47956733011363, 97: 61.75279266936748, 99: 63.02601858259308, 101: 64.29924503569211, 103: 65.57247199721473, 105: 66.84569943810742, 107: 68.11892733148889, 109: 69.3921556524509, 111: 70.6653843778804, 113: 71.93861348630078, 115: 73.21184295772943, 117: 74.48507277355019, 119: 75.75830291639832, 121: 77.0315333700573, 123: 78.30476411936536, 125: 79.57799515013099, 127: 80.85122644905681, 129: 82.12445800367001, 131: 83.39768980225952, 133: 84.6709218338187, 135: 85.94415408799317, 137: 87.21738655503323, 139: 88.49061922575028, 141: 89.76385209147706, 143: 91.03708514403127, 145: 92.31031837568199, 147: 93.58355177911906, 149: 94.8567853474248, 151: 96.13001907652828, 153: 97.4032529552281, 155: 98.67648698014948, 157: 99.94972114570429, 159: 101.22295544658557, 161: 102.49618987775007, 163: 103.76942443440196, 165: 105.04265911197807, 167: 106.3158939061338, 169: 107.58912881273005, 171: 108.86236382782165, 173: 110.1355989476456, 175: 111.40883416861115, 177: 112.68206948728968, 179: 113.95530490040586, 181: 115.22854040482915, 183: 116.50177599756584, 185: 117.7750116757517, 187: 119.04824743664504, 189: 120.32148327762013, 191: 121.59471919616135, 193: 122.86795518985727, 195: 124.14119125639549, 197: 125.41442739355739, 199: 126.68766359921355, }

for _ in range(int(input())):
    print(solution[int(input())])