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)

def check(s, n):
    prev = None
    for i in range(n):
        if prev == None and i > 0 and s[i] == 'B' and s[i - 1] == 'A':
            prev = i
        if i < n - 1 and s[i] == 'B' and s[i + 1] == 'A' and prev != None and prev < i:
            return "YES"
    prev = None
    for i in range(n):
        if prev == None and i > 0 and s[i] == 'A' and s[i - 1] == 'B':
            prev = i
        if i < n - 1 and s[i] == 'A' and s[i + 1] == 'B' and prev != None and prev < i:
            return "YES"
    return "NO"

print(check(s, n))