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.
s = input()
ans = []
l = False
flag = 0
for i in range(len(s)-1):
    if not l:
        if s[i] == "A" and s[i+1] == "B":
                ans.append((i,i+1))
                l = True
    else:
        if s[i] == "B" and s[i+1] == "A":
            if ans and ans[-1][1] != i:
                ans.append((i,i+1))
                flag = 1
                break
l = False
ans = []
for i in range(len(s)-1):
    if not l:
        if s[i] == "B" and s[i+1] == "A":
            ans.append((i,i+1))
            l = True
    else:
        if s[i] == "A" and s[i+1] == "B":
            if ans and ans[-1][1] != i:
                ans.append((i,i+1))
                flag = 1
                break  
if flag:
    print("YES")
else:
    print("NO")
                


    
