Aktualisierung des Inventars

Das Geschäft verfügt über n Artikel mit unterschiedlichen Preisen. Wenn ein Kunde einen dieser Artikel kauft, möchte der Ladenbesitzer wissen, welches danach das günstigste und das teuerste Produkt im Sortiment ist, sobald der gekaufte Artikel entfernt wurde. Er bittet dich, ein Programm zu entwickeln, das für jedes Element im Inventar die günstigsten und teuersten Artikel nach dessen Entfernung ermittelt. Beachte dabei, dass jede Entfernung unabhängig von den anderen betrachtet wird, das heißt, nur der ausgewählte Artikel gilt als entfernt, während die übrigen Items unverändert bleiben.

Input

In der ersten Zeile der Eingabe steht die Ganzzahl n – die Anzahl der Artikel im Geschäft (1 ≤ n ≤ ).
In der nächsten Zeile stehen n Zahlen, jeweils durch ein Leerzeichen getrennt, die die Preise dieser Artikel repräsentieren ().

Output

Das Programm soll n Zeilen ausgeben. In Zeile i sollen zwei Zahlen stehen: das günstigste und das teuerste Produkt im Sortiment, nachdem Artikel i entfernt wurde.

Examples

Input
Output
5 6 8 1 10 3
1 10 1 10 3 10 1 8 1 10
 

Constraints

Time limit: 4 seconds

Memory limit: 512 MB

Output limit: 10 MB

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