from collections import deque
import sys
T = int(input())
for _ in range(T):
p = list(sys.stdin.readline().strip())
n = int(sys.stdin.readline())
array = sys.stdin.readline().strip()
queue = deque(array[1:-1].split(','))
if n == 0:
queue = deque()
else:
cnt = 0
Is = True
for i in p:
if i == 'R':
cnt += 1
else:
if queue:
if cnt % 2 != 0:
queue.pop()
else:
queue.popleft()
else:
Is = False
break
if not Is:
print('error')
else:
if cnt % 2 == 0:
print('['+','.join(queue)+']')
else:
queue.reverse()
print('['+','.join(queue)+']')
'R'에 대해서는 마지막에 한번 수행해주면 된다.
만약 'R'이 짝수번 만큼 나와 두 번 뒤집어야 할 경우 배열은 본래의 모양을 가질 것이다.
그렇기 때문에 'R'이 총 홀수번 나온 경우에만 마지막에 reverse 함수를 활용하면 된다.
다만 'D'를 처리할 때 R이 나온 수를 계속 체크해가며 홀수번 나왔을 경우 뒤에서 제거하고 짝수번 나왔을 경우 앞에서 제거해야하기 때문에 자료 구조 queue를 활용한다.