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.

def checker():
    s = input()

    def dp(idx, sub):
        for i in range(idx+1, len(s)):
            if s[i-1] + s[i] == sub:
                return True
        
        return False
    
    for i in range(1, len(s)):
        if (s[i] == 'A' and s[i-1] == 'B') or (s[i] == 'B' and s[i-1] == 'A'):
            # print(s[i-1]+s[i])
            if dp(i+1, s[i]+s[i-1]):
                print('YES')
                return
        
    print('NO')

checker()