Alice ha scalato la gerarchia aziendale per molti anni e finalmente ha raggiunto la vetta. È appena diventata l'amministratore delegato (CEO) di una grande società quotata in borsa. Il precedente CEO è stato licenziato a causa di scarsi risultati finanziari, ma Alice sa perfettamente come incrementare i profitti. È ora di scegliere un nuovo nome per l'azienda!
Gli investitori adorano qualsiasi menzione dell'intelligenza artificiale, specialmente nel nome dell'azienda. Il valore base dell'azienda è uguale alla lunghezza del suo nome e ogni occorrenza della sottostringa "AI" moltiplica il valore dell'azienda per 5. Ad esempio, il nome "AAICPCAIIA" ha lunghezza 10 e due occorrenze (sottolineate) di "AI":
- $\operatorname{value}(\texttt{AAICPCAIIA}) = 10 \cdot 5 \cdot 5 = 250$
Altri esempi:
- $\operatorname{value}(\texttt{AXI}) = 3$ (zero occorrenze di "
AI") - $\operatorname{value}(\texttt{AIAIAIAI}) = 8 \cdot 5 \cdot 5 \cdot 5 \cdot 5 = 5000$ (quattro occorrenze di "
AI") - $\operatorname{value}(\texttt{AIMPPZ}) = 6 \cdot 5 = 30$ (una occorrenza di "
AI")
Il contratto di Alice le garantisce un bonus eccezionalmente generoso se il valore dell'azienda è esattamente $n$. Vuole inoltre che il nome sia il più corto possibile.
Alice è già impegnata con il suo prossimo compito: progettare il nuovo logo. Puoi proporre un nuovo nome aziendale nel frattempo? Trova la parola più corta possibile di valore $n$, composta da lettere maiuscole inglesi A-Z.
Input
L'unica riga contiene un intero $n$ ($1 \le n \le 100\,000$) – il valore aziendale desiderato.
Output
Stampa una parola composta dalle lettere A-Z – un nome con valore $n$ e la minima lunghezza possibile. Se esistono molte soluzioni, stampane una qualsiasi.
Esempi
Input 1
30
Output 1
AIMPPZ
Input 2
250
Output 2
AAICPCAIIA
Note
Nel primo test, cerchiamo il nome più corto possibile di valore 30. Le parole ottimali hanno lunghezza 6 e una occorrenza di "AI", ad esempio "AIMPPZ", "HUAWAI", "BRAINS" e "AAAIII". Nessuna parola più corta ha valore 30.
Nel secondo test, il valore 250 non può essere ottenuto con un nome più corto di 10 caratteri.