You are given string *s*. Your task is to determine if the given string *s* contains two non-overlapping substrings "AB" and "BA" (the substrings can go in any order).
The only line of input contains a string *s* of length between 1 and 10<sup class="upper-index">5</sup> consisting of uppercase Latin letters.
# import sys, os
# sys.stdin = open(os.path.join(sys.path[0], "input.txt"), "r")
# sys.stdout = open(os.path.join(sys.path[0], "output.txt"), "w")

string = input()
first_index = string.find("AB")
counts = [0, 0]
ab_index, ba_index = -1, -1 
for i in range(0, len(string) - 1):
    if(string[i] + string[i + 1] == "AB"):
        counts[0] += 1
        if(counts[0] == 1):
            ab_index = i
    if(string[i] + string[i + 1] == "BA"):
        counts[1] += 1
        if(counts[1] == 1):
            ba_index = i
if(max(counts) > 1 or abs(ab_index - ba_index) > 1):
    print("YES")
else:
    print("NO")
    








        







    


