고리 모양의 띠에 n개의 칸이 있습니다. 각 칸은 검은색 또는 흰색으로 칠해져 있습니다. 모든 칸을 검은색으로 칠하는 것이 목표입니다. 칠할 때는 점퍼를 사용합니다. 점퍼는 검은 물감을 묻힌 채 뛰어다니는 로봇입니다. 점퍼가 흰 칸에 착지하면 그 칸을 검은색으로 다시 칠합니다. 점퍼는 검은 칸에는 절대 착지할 수 없습니다. 점퍼는 원하는 만큼 사용할 수 있고, 각 점퍼마다 흰 칸 하나를 출발 칸으로 고릅니다. 이때 고른 출발 칸들은 서로 모두 달라야 합니다.
모든 점퍼는 적어도 한 번은 뛰어야 하며, 출발한 칸으로 다시 돌아와야 합니다. 점퍼는 자신의 출발 칸을 마지막 점프에서만 칠합니다. 모든 점퍼는 동일하며, 가능한 점프의 집합 S={s1,…,sm}을 똑같이 공유합니다. 점퍼는 현재 칸에서 위 규칙을 만족하는 한 m가지 이동 중 하나를 할 수 있습니다. i번째 이동은 시계 방향으로 si칸만큼 점프하는 것입니다.
주어진 띠와 점퍼 명세에 대해, 위 규칙을 모두 지키면서 띠 전체를 검은색으로 칠할 수 있는지 판단하세요.
첫 번째 줄에 테스트 집합의 개수 t (1≤t≤20)가 주어집니다. 이어서 각 테스트 집합이 주어집니다.
각 테스트 집합의 첫 줄에는 두 정수 n과 m (1≤n≤500, 1≤m≤n)이 주어집니다. n은 띠의 길이, m은 가능한 점프 길이의 개수입니다. 다음 줄에는 고리 모양 띠를 나타내는 B와 C로 이루어진 길이 n의 문자열이 주어집니다 (B는 흰 칸, C는 검은 칸). 이어지는 m개의 줄에는 각각 점퍼가 할 수 있는 점프 길이 si (1≤si≤n)가 하나씩 주어집니다.
각 테스트 집합마다 한 줄을 출력합니다. 띠 전체를 검은색으로 칠할 수 있으면 TAK을, 그렇지 않으면 NIE를 출력합니다.