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.
"""
    author:  Adham0      
    created: 02.08.2023 23:22:30
    ### Adham was here ###
 
     █████  ██████  ██   ██  █████  ███    ███
    ██   ██ ██   ██ ██   ██ ██   ██ ████  ████
    ███████ ██   ██ ███████ ███████ ██ ████ ██
    ██   ██ ██   ██ ██   ██ ██   ██ ██  ██  ██ 
    ██   ██ ██████  ██   ██ ██   ██ ██      ██
"""

s = input()

a = 0
b = 0
ab = 0

i = 0
while i < len(s):
    if s[i:i + 3] == 'ABA':
        ab += 1
        i += 3
    elif s[i:i + 2] == 'AB':
        a += 1
        i += 2
    elif s[:i + 2] == 'BA':
        b += 1
        i += 2
    else:
        i += 1
                
    if a and b:
        print('YES')
        exit()
    elif a and ab or b and ab:
        print('YES')
        exit()
    elif ab:
        if ab >= 2:
            print('YES')
            exit()
        else:
            print('NO')

print('NO')