# Bobの最善は、最初に見つかったAの塊をBにすること # なので、 Alice の最善は、なるべく 「ABA*」をつくることになる # Sが2文字以下のとき、どうやってもすべてBになるので、3文字以上のときを考える # - 「AAA*」のとき、「ABA*」にする (2文字目のみ) # - 「AAB*」のとき、「ABA*」+3文字目から連続するBをAにする # - 「ABA*」のとき、「ABA*」+最初に見つかった連続するBをAにする # - 「ABB*」のとき、「ABA*」+3文字目から連続するBをAにする # - 「BAA*」のとき、「ABA*」にする (1,2文字目のみ) # - 「BAB*」のとき、「ABA*」+3文字目から連続するBをAにする # - 「BBA*」のとき、「ABA*」にする (1文字目のみ) # - 「BBB*」のときだけ、どうやっても最終的に全部Bになる # # うまくまとめると、 # - 「AB*」or「*AB」のとき、 3文字目以降で最初に見つかったBの塊をAにする # - 1, 2文字目をBにする # になる def f(): N = int(input()) S = list(input().strip()) if N <= 2: print("B" * N) return if S[0] + S[1] == "AB" or S[1] + S[2] == "AB": i = 2 while i < N and S[i] == "A": i += 1 j = i + 1 while j <= N and S[j - 1] == "B": S[j - 1] = "A" j += 1 S[0] = "B" S[1] = "B" print(*S, sep="") T = int(input()) for _ in range(T): f()