RT
#include<bits/stdc++.h>
#define ll long long
using namespace std;
int n,t,i,j,k,a[524288],p,r[1300],s[10086];bool q[12345],b;
int main()
{
cin>>t;
for(i=2;i<=10001;i++)
{
q[i]=true;
}
for(i=2;i<=10001;i++)
{
if(q[i]==true)
{
p++;r[p]=i;
for(j=2*i;j<=10001;j+=i) q[j]=false;
}
}
for(k=1;k<=t;k++)
{
cin>>n;
for(i=1;i<=n;i++)
scanf("%d",&a[i]);
if(n==2)
{
printf("Yes\n");
continue;
}
sort(a+1,a+n+1);
b=false;
for(i=1;i<=n-1;i++)
{
if(a[i]==a[i+1])
{
printf("No\n");
b=true;
break;
}
}
if(b==true) continue;
for(i=1;i<=10001;i++) s[i]=0;
for(i=1;i<=n;i++)
{
for(j=1;r[j]<=sqrt(a[i]);j++)
{
while(a[i]%r[j]==0)
{
a[i]/=r[j];
if(s[r[j]]!=0&&s[r[j]]!=i)
{
printf("No\n");b=true;
break;
}
else s[r[j]]=i;
}
if(b==true) break;
}
if(b==true) break;
if(1<a[i]&&a[i]<=10000)
{
if(s[a[i]]!=0&&s[a[i]]!=i)
{
printf("No\n",i);b=true;
break;
}
else s[a[i]]=i;
a[i]=1;
}
}
if(b==true) continue;
sort(a+1,a+n+1);
for(i=1;i<=n-1;i++)
{
if(a[i]==a[i+1]&&a[i]!=1)
{
printf("No\n");
b=true;
break;
}
}
if(b==false) printf("Yes\n");
}
return 0;
}