#!/usr/bin/python3 import sys # Načteme vstup a za jeho konec přidáme zarážku x = list(input()) n = len(x) x += '#' # Pomocná funkce, která prohazuje A a B def opak(z): if z == 'A': return 'B' else: return 'A' i = 0 while i < n: # Posloupnost začíná na nz znaků z z = x[i] if z == '_': # Pokud posloupnost začíná _, domyslíme si před ní A z = 'A' nz = 0 while x[i] == z: i += 1 nz += 1 if nz > 2: print("NEEXISTUJE") sys.exit() # Pokud následuje opačný znak, nemusíme se naším úsekem zabývat if x[i] != '_': continue # AA_ -> AAB if nz == 2: x[i] = opak(z) continue # Najdeme všechna _ za úsekem j = i while x[i] == '_': i += 1 # Podle následujícího znaku se rozhodneme, jak _ vyplníme # (V tuto chvíli x[i] je následující znak, x[j] první podtržítko) if x[i] == z: # A_..._A -> A(B)AB...ABA if (i-j)%2 == 1: x[j] = opak(z) j += 1 while j < i: x[j] = z x[j+1] = opak(z) j += 2 else: # A_..._B -> ABA...BA(A)B (též pro A_..._#) while j < i-1: x[j] = opak(z) x[j+1] = z j += 2 if j < i: x[j] = z # Vypíšeme vše kromě koncového # print("".join(x[:n]))