import java.util.Scanner;
/**
* @author supermejane
* @date 2025/10/3
* @description
*/
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
int n = in.nextInt();
while(n-- > 0) {
int len = in.nextInt();
Long oddSum = 0L, evenSum = 0L; //注意精度
boolean result = false;
//true加奇数
boolean sign = true;
for (int i = 0; i < len; i++) {
int a = in.nextInt();
if (sign) {
evenSum += a;
} else {
oddSum += a;
}
sign = !sign;
}
Long totalSum = oddSum + evenSum;
Long avg = totalSum / len;
if (avg * len == totalSum) {
int oddCount = len / 2, evenCount = len - oddCount;
if (oddSum == avg * oddCount && evenSum == avg * evenCount) result = true;
}
System.out.println(result ? "YES" : "NO");
}
}
}
//奇数之间是连通的,偶数之间也是,奇偶之间不连通
//由于相邻奇数之间连通,等价于所有的奇数之间都是连通的,可以随意分配到任何想要的状态,所以只取决于数量之和,和初始的位置不相关。