Nodo massimo in un Binary Search Tree (albero binario di ricerca)

Dato un Binary Search Tree (BST) inizialmente vuoto e senza nodi, ti viene chiesto di eseguire 3 tipi di query:

  1. insert x – inserisce il valore x nel BST

  2. max – stampa il valore massimo presente nel BST

  3. print – stampa il contenuto del BST nell'ordine di visita in-order

Dato un numero q di query, devi scrivere un programma che le esegua tutte.

Input

La prima riga dell’input contiene un solo numero q (1 ≤ q ≤ 1000).

Le successive q righe contengono le query da eseguire. Per tutte le query insert, il valore di x non supera 10^9 in valore assoluto.

Output

Per ogni query max, il programma deve stampare su una nuova riga il valore massimo del BST.

Per ogni query print, il programma deve stampare il BST in visita post-order, inserendo uno spazio fra i vari valori.

Esempi

Input

Output

7 insert 2 insert 1 max insert 0 max insert 4 print

2 2 0 1 4 2

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue