import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int round = in.nextInt(); for (int i = 0; i < round; i++) { int n = in.nextInt(); // 表示方碑数量 long oddSum = 0; long evenSum = 0; result: { // 处理n=1的边界情况:单个方碑已相等 if (n == 1) { in.nextLong(); System.out.println("YES"); break result; } // 读取n个方碑的能量,按1-based索引分奇偶位求和 for (int j = 1; j <= n; j++) { long num = in.nextLong(); if (j % 2 == 1) { oddSum += num; } else { evenSum += num; } } // 条件1:总能量必须能被n整除(否则无法均分) long total = oddSum + evenSum; if (total % n != 0) { System.out.println("NO"); break result; } // 计算奇位数量和偶位数量 int oddCount = (n + 1) / 2; // 1-based索引的奇位数量(如n=3→2,n=4→2) int evenCount = n / 2; // 1-based索引的偶位数量(如n=3→1,n=4→2) // 条件2:奇位总和/奇位数量 == 偶位总和/偶位数量(均等于avg) // 注:因total%n==0,且oddSum/oddCount == evenSum/evenCount,故必能整除(推导见前文) if (oddSum / oddCount == evenSum / evenCount) { System.out.println("YES"); } else { System.out.println("NO"); } } } in.close(); } }