#include using namespace std; const int MAX = 1000001; int n; int a[MAX]; int S[MAX]; int freq[MAX]; vector good[MAX]; void init() { S[1] = 0; for(int i = 2; i < MAX; ++i) { if (!S[i]) { for(int j = i; j < MAX; j += i) { S[j] += i; } } } int mx = 0; for(int i = 1; i < MAX; ++i) { for(int j = i; j < MAX; j += i) { if (S[i] && (S[j] % S[i] == 0)) { mx += 1; good[i].push_back(j); } } } } int main() { ios_base::sync_with_stdio(false); init(); int t; cin >> t; while(t--) { cin >> n; for(int i = 1; i <= n; ++i) { cin >> a[i]; freq[a[i]] += 1; } long long ans = 0, v; for(int i = 1; i < MAX; ++i) { if (freq[i]) { v = 0; for(auto it : good[i]) { v += freq[it]; } ans += v * freq[i]; } } ans -= n; // account for i == j cout << ans << "\n"; for(int i = 1; i <= n; ++i) { freq[a[i]] -= 1; } } return 0; }