페르시아의 왕자

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

유명한 페르시아의 왕자에게 새 임무가 주어졌다! 간사한 재상 자파르가 이웃 나라를 방문하러 간 사이, 그는 왕의 딸을 지하 감옥에 가두었다. 왕자는 경비병들을 밀쳐내며 감옥 바로 앞의 어두운 방에 다다른다. 감옥 문을 여는 데 필요한 정보는 이 방의 벽에 박힌 여러 개의 돌판()에 새겨져 있다.

한 줄기의 빛이 한 쪽 벽의 작은 구멍을 통해 방 안으로 들어온다. 왕자에게는 여러 거울이 있으며, 각 거울은 정해진 내부 칸에만 놓아 빛을 돌판 쪽으로 보낼 수 있다. 각 거울의 방향은 미리 정해져 있어 바꿀 수 없고, 뒷면은 불투명해서 뒤에서 부딪히는 빛은 모두 흡수된다.

위에서 내려다본 방은 nm열의 격자다. 경계 칸은 벽이며, 거울은 내부 칸에만 놓을 수 있고 두 거울을 같은 칸에 놓을 수는 없다. 한 판을 비추려면 왕자는 거울의 부분집합을 골라 각각을 허용된 칸 중 하나에 놓고, 반사를 거친 빛이 그 판에 도달해야 한다. 빛은 나눌 수 없으므로 판은 한 번에 하나씩 비추며, 판마다 서로 다른 부분집합과 배치를 사용해도 된다.

왕자가 방 안의 모든 판을 비출 수 있는지 판단하라.

입력

첫 줄에는 테스트 케이스의 수 t (1 ≤ t ≤ 20)가 주어진다.

각 테스트 케이스는 0개 이상의 거울 설명 줄로 시작한다. 거울 설명은 한 자리 숫자(식별자), 빈칸 하나, 그리고 방향을 나타내는 네 쌍 -/, -\, /-, \- 중 하나로 이루어진다. 하이픈(-)은 불투명한 뒷면을 나타내므로, 빛은 거울의 반사면(하이픈이 없는 쪽)에 부딪힐 때만 반사된다. 예를 들어 -/은 오른쪽에서 온 빛을 아래쪽으로(그 반대도 같이) 반사하지만, 왼쪽이나 위에서 온 빛은 막는다.

거울 설명 다음에는 위에서 내려다본 방을 나타내는 m글자짜리 n줄이 온다 (2 ≤ m, n ≤ 40). 경계의 벽은 #이다. 판이 있는 벽 칸은 가로(위/아래) 벽에서는 -, 세로(왼/오른) 벽에서는 |로 표시된다. 경계 칸 중 정확히 하나만 빈칸이며, 그것이 빛이 들어오는 구멍이다. 빛은 그 벽에 수직으로 들어온다. 네 모서리 칸은 항상 #이다. 모든 내부 칸은 .이지만, 거울을 놓을 수 있는 칸은 숫자를 담고 있다. 거울은 칸의 숫자가 그 거울의 식별자와 같을 때만 그 칸에 놓을 수 있다.

출력

각 테스트 케이스마다, 위 규칙에 따라 모든 판을 비출 수 있으면 YES를, 그렇지 않으면 NO를 한 줄에 출력한다.