#include <iostream>
#include <cmath>
using namespace std;
typedef unsigned long long int ul;
void reset(int grades[6]){
for(int i=0;i<6;i++)
grades[i]=0;
}
ul average(int grades[6], int k,int n){
ul res=0;
for(int i=0;i<6;i++)
res+=(ul)grades[i]*(ul)pow(i+1,k);
return res/n;
}
int bestAverage(int grades[6],int n){
int k=1;
bool underFour = false, aboveFour = false;
for(int i=0;i<6;i++){
if (i<3 && grades[i]>0)
underFour = true;
if (i>3 && grades[i]>0)
aboveFour = true;
}
if (underFour == true && aboveFour == false)
return -1;
else {
while (average(grades,k,n)<(ul)pow(4,k)){
k++;
}
return k;
}
}
int main()
{
int grades[6],t,n,number;
cin>>t;
for(int i=0;i<t;i++){
reset(grades);
cin>>n;
if (n!=0){
for(int j=0;j<n;j++){
cin>>number;
grades[number-1]++;
}
cout<<bestAverage(grades,n)<<endl;
} else
cout<<-1<<endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y21hdGg+Cgp1c2luZyBuYW1lc3BhY2Ugc3RkOwp0eXBlZGVmIHVuc2lnbmVkIGxvbmcgbG9uZyBpbnQgdWw7Cgp2b2lkIHJlc2V0KGludCBncmFkZXNbNl0pewogICAgZm9yKGludCBpPTA7aTw2O2krKykKICAgICAgICBncmFkZXNbaV09MDsKfQoKdWwgYXZlcmFnZShpbnQgZ3JhZGVzWzZdLCBpbnQgayxpbnQgbil7CiAgICB1bCByZXM9MDsKICAgIGZvcihpbnQgaT0wO2k8NjtpKyspCiAgICAgICAgcmVzKz0odWwpZ3JhZGVzW2ldKih1bClwb3coaSsxLGspOwogICAgcmV0dXJuIHJlcy9uOwp9CmludCBiZXN0QXZlcmFnZShpbnQgZ3JhZGVzWzZdLGludCBuKXsKICAgIGludCBrPTE7CiAgICBib29sIHVuZGVyRm91ciA9IGZhbHNlLCBhYm92ZUZvdXIgPSBmYWxzZTsKICAgIGZvcihpbnQgaT0wO2k8NjtpKyspewogICAgICAgIGlmIChpPDMgJiYgZ3JhZGVzW2ldPjApCiAgICAgICAgICAgIHVuZGVyRm91ciA9IHRydWU7CiAgICAgICAgaWYgKGk+MyAmJiBncmFkZXNbaV0+MCkKICAgICAgICAgICAgYWJvdmVGb3VyID0gdHJ1ZTsKICAgIH0KICAgIGlmICh1bmRlckZvdXIgPT0gdHJ1ZSAmJiBhYm92ZUZvdXIgPT0gZmFsc2UpCiAgICAgICAgcmV0dXJuIC0xOwogICAgZWxzZSB7CiAgICAgICAgd2hpbGUgKGF2ZXJhZ2UoZ3JhZGVzLGssbik8KHVsKXBvdyg0LGspKXsKICAgICAgICAgICAgaysrOwogICAgICAgIH0KICAgICAgICByZXR1cm4gazsKICAgIH0KfQppbnQgbWFpbigpCnsKICAgIGludCBncmFkZXNbNl0sdCxuLG51bWJlcjsKICAgIGNpbj4+dDsKICAgIGZvcihpbnQgaT0wO2k8dDtpKyspewogICAgICAgIHJlc2V0KGdyYWRlcyk7CiAgICAgICAgY2luPj5uOwogICAgICAgIGlmIChuIT0wKXsKICAgICAgICAgICAgZm9yKGludCBqPTA7ajxuO2orKyl7CiAgICAgICAgICAgICAgICBjaW4+Pm51bWJlcjsKICAgICAgICAgICAgICAgIGdyYWRlc1tudW1iZXItMV0rKzsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb3V0PDxiZXN0QXZlcmFnZShncmFkZXMsbik8PGVuZGw7CiAgICAgICAgfSBlbHNlCiAgICAgICAgICAgIGNvdXQ8PC0xPDxlbmRsOwogICAgfQogICAgcmV0dXJuIDA7Cn0K