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)
found_ab = False
found_ba = False

# Find the first occurrence of "AB"
for i in range(n-1):
    if s[i] == 'A' and s[i+1] == 'B':
        found_ab = True
        break

# Find the first occurrence of "BA" after "AB"
for i in range(i+2, n-1):
    if s[i] == 'B' and s[i+1] == 'A':
        found_ba = True
        break

# Check if both "AB" and "BA" have been found
if found_ab and found_ba:
    print("YES")
else:
    found_ab = False
    found_ba = False

    # Find the first occurrence of "BA"
    for i in range(n-1):
        if s[i] == 'B' and s[i+1] == 'A':
            found_ba = True
            break

    # Find the first occurrence of "AB" after "BA"
    for i in range(i+2, n-1):
        if s[i] == 'A' and s[i+1] == 'B':
            found_ab = True
            break

    # Check if both "AB" and "BA" have been found
    if found_ab and found_ba:
        print("YES")
    else:
        print("NO")
