from math import gcd def floor_sqrt(n): if n<0: return -1 ng,ok=n+1,-1 while ng-ok>1: mid=(ok+ng)//2 if mid*mid<=n: ok=mid else: ng=mid return ok def solve(): n=int(input()) a=list(map(int,input().split())) for i in range(n): for j in range(i+1,n): g=gcd(a[i],a[j]) if g!=1: a[i]//=g a[j]//=g if a[i]!=1: s=floor_sqrt(a[i]) if s*s!=a[i]: print('No') return print('Yes') for _ in range(int(input())): solve()