def group_when(xs, pred): res = [] a = [] for x in xs: if not a or pred(a[-1], x): a.append(x) else: res.append(a) a = [x] if a: res.append(a) return res def f(g): res = [] for x in g: res.extend(x) return ''.join(res) def flip(xs): for i in range(len(xs)): if xs[i] == 'A': xs[i] = 'B' else: xs[i] = 'A' def solve_a(g): assert g[0][0] == 'A' hd = g[0] n = len(hd) if n >= 3: hd[0] = hd[1] = 'B' return f(g) cnt = 0 flip(hd) for i, x in enumerate(g): if i == 0: continue if x[0] == 'B': cnt += 1 if len(x) > 1 and cnt == 1: flip(x) x[0] = 'B' return f(g) elif cnt > 1: flip(x) return f(g) return f(g) def solve_b(g): assert g[0][0] == 'B' hd = g[0] n = len(hd) if n >= 2: return f(g) cnt = 0 for x in g: if x[0] == 'B': cnt += 1 if len(x) > 1 and cnt == 1: flip(x) x[0] = 'B' return f(g) elif cnt > 1: flip(x) return f(g) return f(g) def solve(): N = int(input()) S = input() g = group_when(S, lambda a, b: a == b) hd = g[0] if hd[0] == 'A': return solve_a(g) else: return solve_b(g) T = int(input()) for _ in range(T): ans = solve() print(ans)