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 = False

# Check if "AB" and "BA" exist in the string
ab_found = s.find("AB")
ba_found = s.find("BA")

# Iterate over all possible combinations of "AB" and "BA"
while ab_found != -1:
    # Check if there is a non-overlapping "BA" after "AB"
    if ba_found != -1 and ba_found != ab_found + 1:
        found = True
        break

    # Find the next occurrence of "AB" after the current position
    ab_found = s.find("AB", ab_found + 2)
    ba_found = s.find("BA", ba_found + 2)

if found:
    print("YES")
else:
    print("NO")
