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()
n=len(s)
fb=lb=fa=la=-1
flag=False
for i in range(n-1):
    if s[i]=='A' and s[i+1]=='B':
        if fa==-1:
            fa=i
            # break
            if flag:
                break
            flag=True
    elif s[i]=='B' and s[i+1]=='A':
        if fb==-1:
            fb=i
            if flag:
                break
            flag=True
flag=False
for i in range(n-1,0,-1):
    if s[i]=='A' and s[i-1]=='B':
        if la==-1:
            la=i
            # break
            if flag:
                break
            flag=True
    elif s[i]=='B' and s[i-1]=='A':
        if lb==-1:
            lb=i
            if flag:
                break
            flag=True

if abs(fa-la)>2 or abs(fb-lb)>2:
    print("YES")
else:
    print("NO")