#include <bits/stdc++.h>
using namespace std;
int64_t nearest_power_of_2(int64_t a) {
  int cnt = 0;
  while (a / 2 != 0) {
    a = a / 2;
    cnt++;
  }
  return cnt;
}
int main() {
  int64_t t;
  cin >> t;
  for (int i = 0; i < t; i++) {
    int64_t n;
    cin >> n;
    vector<int64_t> v;
    for (int j = 0; j < n; j++) {
      int64_t k;
      cin >> k;
      v.push_back(k);
    }
    int64_t max = 0;
    int64_t b = 0;
    for (int j = 0; j < n - 1; j++) {
      if (v[j + 1] < v[j]) {
        b++;
        int64_t d = v[j] - v[j + 1];
        if (max < nearest_power_of_2(d)) {
          max = nearest_power_of_2(d);
        }
        v[j + 1] = v[j];
      }
    }
    if (max == 0 && b == 0) {
      cout << 0 << endl;
    } else {
      cout << max + 1 << endl;
    }
  }
}
