#include <map>
#include <set>
#include <list>
#include <cmath>
#include <ctime>
#include <deque>
#include <queue>
#include <stack>
#include <string>
#include <bitset>
#include <cstdio>
#include <limits>
#include <vector>
#include <climits>
#include <cstring>
#include <cstdlib>
#include <fstream>
#include <numeric>
#include <sstream>
#include <iostream>
#include <algorithm>
#include <unordered_map>
using namespace std;
int main() {
/* Enter your code here. Read input from STDIN. Print output to STDOUT */
int q;
for(cin>>q;q>0;q--) {
long long n,o;
cin>>o;
n=o+1;
long long j = -1;
while(n) {
n=n/2;
j++;
}
long long mx = j-1;
long long val = o-(((long long)1)<<j);
if(val>=0) {
int temp = val;
long long bit = 0;
val++;
while(val>0) {
bit++;
val=val/2;
}
mx = max(bit,mx);
}
cout<<j+mx<<endl;
}
return 0;
}
I2luY2x1ZGUgPG1hcD4KI2luY2x1ZGUgPHNldD4KI2luY2x1ZGUgPGxpc3Q+CiNpbmNsdWRlIDxjbWF0aD4KI2luY2x1ZGUgPGN0aW1lPgojaW5jbHVkZSA8ZGVxdWU+CiNpbmNsdWRlIDxxdWV1ZT4KI2luY2x1ZGUgPHN0YWNrPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8Yml0c2V0PgojaW5jbHVkZSA8Y3N0ZGlvPgojaW5jbHVkZSA8bGltaXRzPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8Y2xpbWl0cz4KI2luY2x1ZGUgPGNzdHJpbmc+CiNpbmNsdWRlIDxjc3RkbGliPgojaW5jbHVkZSA8ZnN0cmVhbT4KI2luY2x1ZGUgPG51bWVyaWM+CiNpbmNsdWRlIDxzc3RyZWFtPgojaW5jbHVkZSA8aW9zdHJlYW0+CiNpbmNsdWRlIDxhbGdvcml0aG0+CiNpbmNsdWRlIDx1bm9yZGVyZWRfbWFwPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKaW50IG1haW4oKSB7CiAgICAvKiBFbnRlciB5b3VyIGNvZGUgaGVyZS4gUmVhZCBpbnB1dCBmcm9tIFNURElOLiBQcmludCBvdXRwdXQgdG8gU1RET1VUICovCiAgICBpbnQgcTsKICAgIGZvcihjaW4+PnE7cT4wO3EtLSkgewogICAgICAgIGxvbmcgbG9uZyBuLG87CiAgICAgICAgY2luPj5vOwogICAgICAgIG49bysxOwogICAgICAgIGxvbmcgbG9uZyBqID0gLTE7CiAgICAgICAgd2hpbGUobikgewogICAgICAgICAgICBuPW4vMjsKICAgICAgICAgICAgaisrOwogICAgICAgIH0KICAgICAgICBsb25nIGxvbmcgbXggPSBqLTE7CiAgICAgICAgbG9uZyBsb25nIHZhbCA9IG8tKCgobG9uZyBsb25nKTEpPDxqKTsKICAgICAgICBpZih2YWw+PTApIHsKICAgICAgICAgICAgaW50IHRlbXAgPSB2YWw7CiAgICAgICAgICAgIGxvbmcgbG9uZyBiaXQgPSAwOwogICAgICAgICAgICB2YWwrKzsKICAgICAgICAgICAgd2hpbGUodmFsPjApIHsKICAgICAgICAgICAgYml0Kys7CiAgICAgICAgICAgIHZhbD12YWwvMjsKICAgICAgICAgICAgfQogICAgICAgICAgICBteCA9IG1heChiaXQsbXgpOwogICAgICAgIH0KICAgICAgICBjb3V0PDxqK214PDxlbmRsOwogICAgfQogICAgcmV0dXJuIDA7Cn0=