Problem: A Pythagorean triple is a triple of integer numbers (a, b, c) such that it is possible to form a right triangle with the lengths of the first cathetus, the second cathetus and the hypotenuse equal to a, b and c, respectively. An example of the Pythagorean triple is (3, 4, 5).

Vasya studies the properties of right triangles, and he uses a formula that determines if some triple of integers is Pythagorean. Unfortunately, he has forgotten the exact formula; he remembers only that the formula was some equation with squares. So, he came up with the following formula: c = a^2 - b.

Obviously, this is not the right formula to check if a triple of numbers is Pythagorean. But, to Vasya's surprise, it actually worked on the triple (3, 4, 5): 5 = 3^2 - 4, so, according to Vasya's formula, it is a Pythagorean triple.

When Vasya found the right formula (and understood that his formula is wrong), he wondered: how many are there triples of integers (a, b, c) with 1 ≤ a ≤ b ≤ c ≤ n such that they are Pythagorean both according to his formula and the real definition? He asked you to count these triples.

Input

The first line contains one integer t (1 ≤ t ≤ 10^4) — the number of test cases.

Each test case consists of one line containing one integer n (1 ≤ n ≤ 10^9).

Output

For each test case, print one integer — the number of triples of integers (a, b, c) with 1 ≤ a ≤ b ≤ c ≤ n such that they are Pythagorean according both to the real definition and to the formula Vasya came up with.

Example

Input


3
3
6
9


Output


0
1
1

Note

The only Pythagorean triple satisfying c = a^2 - b with 1 ≤ a ≤ b ≤ c ≤ 9 is (3, 4, 5); that's why the answer for n = 3 is 0, and the answer for n = 6 (and for n = 9) is 1.

Solution (in CPP):

Solution:
#include<bits/stdc++.h>
using namespace std;
#define int long long
#define endl "\n"
vector<int>v;
void solve2(){
    // for(int i=1;i<=100;i++){
    //     for(int j=1;j<=100;j++){
    //         for(int k=1;k<=100;k++){
    //             if((k*k)==(i*i+j*j) and ((i*i)==(j+k))){
    //                 cout<<i<<" "<<j<<" "<<k<<endl;
    //             }
    //         }
    //     }
    // }
    int f=5;
    int d=8;
    // int count=1;
    
    while(f<=1000000000){
        v.push_back(f);    
        f+=d;
        d+=4;
        // count++;
    }
    // for(auto x:v){
    //     cout<<x<<" ";
    // }
    // cout<<endl;
    // cout<<count<<endl;

    // cout<<endl;
}
void solve(){
    int n;
    cin>>n;

    if(n<=4){
        cout<<0;
    }
    else{
        int x=upper_bound(v.begin(),v.end(),n)-v.begin();
        // x++;
        cout<<x;
    }
    cout<<endl;
}
int32_t main(){
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    int t;
    cin>>t;
    solve2();
    // t=1;
    while(t--){
        solve();
    }
    return 0;
}