import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class IsSquare2 {
static int len;
static int avg;
static boolean[] isV;
static int[] seq;
static int flag;
public static void main(String[] args) throws FileNotFoundException {
// TODO Auto-generated method stub
@SuppressWarnings("resource")
Scanner sc = new Scanner(System.in);
sc = new Scanner(new File("files/issquare"));
int T = sc.nextInt();
for (int t = 0; t < T; t++) {
len = sc.nextInt();
avg = 0;
seq = new int[len];
isV = new boolean[len];
int max = 0;
for (int i = 0; i < len; i++) {
seq[i] = sc.nextInt();
avg += seq[i];
if (seq[i] > max)
max = seq[i];
}
if (avg % 4 != 0) {
System.out.println("no");
} else if (len == 4) {
if (seq[0] == seq[1] && seq[0] == seq[2] && seq[0] == seq[3])
System.out.println("yes");
else
System.out.println("no");
} else {
avg /= 4;
if (max > avg)
System.out.println("no");
else {
flag=0;
BFS(1, 1);
if (flag == 1)
System.out.println("yes");
else
System.out.println("no");
}
}
}
}
private static void BFS(int c, int sn) {
// TODO Auto-generated method stub
if (flag == 1)
return;
if (c == 5) {
flag = 1;
return;
}
for (int i = sn; i < len - 2; i++) {
int[] queue = new int[i];
dfs(0, -1, i, queue, 0, c);
}
}
private static void dfs(int s, int pre, int step, int[] q, int sum, int c) {
// TODO Auto-generated method stub
if (s == step) {
if (sum == avg) {
boolean[] tmpv = new boolean[len];
CopyOf(tmpv, isV);
for (int i = 0; i < step; i++) {
isV[q[i]] = true;
}
BFS(c + 1, step);
CopyOf(isV, tmpv);
}
return;
}
for (int i = pre + 1; i < len; i++) {
if (!isV[i]) {
q[s] = i;
sum += seq[i];
dfs(s + 1, i, step, q, sum, c);
if (flag == 1)
return;
sum -= seq[i];
}
}
}
private static void CopyOf(boolean[] v1, boolean[] v2) {
// TODO Auto-generated method stub
for (int i = 0; i < len; i++) {
v1[i] = v2[i];
}
}
}
sample input:
10
20 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 161
10 15 4 1 11 3 2 8 8 8 20
5 20 30 20 30 24
7 6 2 1 7 3 8 9
6 1 2 10001 9999 10000 10001
20 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 30
4 1 1 1 1
9 1 7 2 6 4 4 3 2 3
5 5 5 3 2 5
20 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5
sample output:
no
yes
no
yes
yes
yes
yes
yes
yes
yes