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.
from itertools import combinations
from collections import Counter;
def findingallaccurance(test_str):
    return Counter([test_str[x:y] for x, y in combinations(range(len(test_str) + 1), r=2)]);

str = input()
out = findingallaccurance(str)
result = out['AB'] +out['BA'];
if(result > 1 and len(str) > 3):
    print('YES')
else:
    print('NO');