/**
证明:
首先, 若n为奇数,则必然可以完成任务
将n个球遍号为1,2,...,n
若从1位置开始,进行 n-1次连续的 (flip, shift, shift), 则 除了球1外, 所有球的位置都
减了2, 而球1最后到达原来球n-1的位置。(见图, 可以知道, 相当于交换球1和2的位置)
若n为偶数, 则很明显,若将奇数位置和偶数位置各看成一个圈, 则flip就是交换这两个圈的相邻
元素, 根据相同的理论, 可将他们变换成任意排列,
故问题等价于, 奇数位置上与偶数位置上黑球数量相间放置时中间无空隙, 这要求它们的数目相差不超过1
**/
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int t, n, b;
cin>>t;
for (int i = 0; i < t; i++)
{
cin>>n;
int odd=0, even=0;
for (int j = 0; j < n; j++)
{
cin>>b;
if (b)
{
if (j%2) even++;
else odd++;
}
}
if (n%2 || even-odd > -2 && even-odd < 2) cout<<"YES"<<endl;
else cout<<"NO"<<endl;
}
}