#include <iostream>
#include <vector>
#include <algorithm>
#include <set>
using namespace std;
// Function to find the maximum blocks
int maxBlocks(vector<int> &A) {
int n = A.size();
sort(A.begin(), A.end());
for (int len = 2; len <= n; ++len) {
if (n % len != 0) continue;
bool valid = true;
set<int> differences;
for (int i = 0; i < n; i += len) {
int diff = A[i + len - 1] - A[i];
differences.insert(diff);
}
if (differences.size() == 1) {
return n / len;
}
}
return 1;
}
int main() {
int T;
cin >> T;
while (T--) {
int N;
cin >> N;
vector<int> A(N);
for (int i = 0; i < N; ++i) {
cin >> A[i];
}
int result = maxBlocks(A);
cout << result << endl;
}
return 0;
}