#include #include #include #include #define REP(i,a,b) for(i=a;ik);if(i>=j)break;t=d[i];d[i]=d[j];d[j]=t;t=m[i];m[i]=m[j];m[j]=t;}intIntSort(d,m,i);intIntSort(d+j+1,m+j+1,s-j-1);} int N, M; ll A[1001]; int res[1001], res_size; int now[1001], now_size; int val[1001]; int mat[100][100]; int unused[1001], unused_size; void solve(void){ int i, j, k, s; int r = M, c; int t, rank; now_size = 0; unused_size = N; rep(i,N) unused[i] = i, val[i] = rand()%100000000; intIntSort(val, unused, N); while(unused_size){ int fnd = -1; c = unused_size; if(c > M+1) c = M+1; rep(i,c) rep(k,r) if(A[unused[i]] & 1LL<= 0) unused[k++] = unused[i]; unused_size = k; } } if(now_size > res_size){ res_size = now_size; rep(i,N) res[i] = now[i]; } } int main(){ int T; int i, j; ll k; srand(time(NULL)); assert( scanf("%d",&T)==1 ); while(T--){ assert( scanf("%d",&N)==1 ); rep(i,N) assert( scanf("%lld",A+i)==1 ), assert( 1LL<=A[i] && A[i]<=(1LL<<60)-1 ); k = 0; rep(i,N) if(k < A[i]) k = A[i]; rep(i,61) if(k&1LL<