#include <bits/stdc++.h>
using namespace std;
long long a[100005], d[100005], sum[100005];
int main() {
  long long t, n;
  scanf("%lld", &t);
  while (t--) {
    scanf("%lld", &n);
    long long maxn = 0;
    for (int i = 0; i < n; i++) {
      scanf("%lld", &a[i]);
    }
    long long p = a[0], k = 1;
    for (int i = 1; i < n; i++) {
      if (a[i] > a[i - 1] && a[i] > p) {
        p = a[i];
      } else {
        if (p - a[i] > maxn) maxn = p - a[i];
      }
    }
    if (maxn > 0) {
      long long pp = 1;
      for (int i = 1;; i++) {
        if (maxn < pp) {
          printf("%d\n", i - 1);
          break;
        } else {
          pp = pp * 2;
        }
      }
    } else {
      printf("0\n");
    }
  }
  return 0;
}
