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.
import sys
input = lambda: sys.stdin.readline().rstrip()
from collections import deque,defaultdict,Counter
from bisect import *
from heapq import *
from math import ceil,gcd,lcm
S=input()
N=len(S)
a,b = [],[]
for i in range(N-1):
    if S[i]=="A" and S[i+1]=="B":
        a.append(i)
    elif s[i]=="B" and S[i+1]=="A":
        b.append(i)

if max(a)+1!=min(b):
    print("YES")
else:
    print("NO")