타원형 트랙 위에 검은색 원판과 흰색 원판이 임의의 순서로 한 줄(원형 수열)로 놓여 있습니다.
이 퍼즐에서는 플립(flip) 이라는 동작을 사용할 수 있습니다. 플립은 연속한 세 개의 원판을 골라 그림처럼 통째로 뒤집는(180° 회전시키는) 동작으로, 가운데 원판은 제자리에 두고 양 끝의 두 원판만 서로 자리를 바꿉니다. (Figure 1 참고) 트랙 위 어느 위치의 세 원판에 대해서도 플립을 할 수 있습니다.


원형으로 배치된 원판들의 색 수열이 주어질 때, 플립을 유한 번 수행하여 (Figure 2처럼) 검은색 원판끼리, 흰색 원판끼리 각각 한 덩어리로 연속하게 모을 수 있는지 판단하는 프로그램을 작성하세요.
첫째 줄에 테스트 케이스의 개수 T 가 주어집니다.
각 테스트 케이스는 한 줄로 이루어집니다. 줄의 맨 앞 수는 수열의 길이 m+n (10≤m+n<30) 이고, 이어서 원판을 나타내는 m+n 개의 수가 주어집니다. 각 수는 원판의 색을 나타내며 0 은 흰색 원판, 1 은 검은색 원판입니다. 여기서 m 은 흰색(0) 원판의 개수, n 은 검은색(1) 원판의 개수입니다. 모든 수는 공백으로 구분됩니다.
각 테스트 케이스마다 흰색 원판과 검은색 원판을 각각 한 덩어리로 분리할 수 있으면 YES 를, 그렇지 않으면 NO 를 한 줄에 출력합니다.