Problem description


Bliskie liczby
(bliskie-liczby)
Memory limit: 64 MB
Time limit: 8.00 s

Jak zdążyliśmy się już przekonać przy okazji innych zadań sparingowych, Jaś ma wiele dziwnych zainteresowań. Jednym z nich jest zabawa swoim zbiorem liczb naturalnych. Do tego zbioru często dodaje on pewne liczby naturalne, a czasami usuwa z niego już istniejące. Za każdym razem jednak zastanawia się jaka jest najmniejsza różnica między dwiema różnymi liczbami z tego zbioru. Jak to zwykle bywa w zadaniach sparingowych, to zadanie przypadło w udziale Tobie.

Napisz program, który: wczyta operacje na zbiorze Jasia, po każdej operacji wyznaczy różnicę między dwiema najbliższymi liczbami w tym zbiorze i wypisze wyniki na standardowe wyjście.

Wejście

W pierwszym wierszu wejścia znajduje się jedna liczba naturalna Q, określająca liczbę operacji. W kolejnych Q wierszach znajdują się kolejne operacje. Opis każdej z nich składa się z jednego znaku + lub -, pojedynczego odstępu oraz liczby naturalnej Ai – operacja typu + odpowiada dodaniu liczby Ai do zbioru, zaś operacja typu - odpowiada jej usunięciu.

Gwarantowane jest, że do zbioru nie będą dodawane duplikaty oraz że usuwane ze zbioru będą jedynie istniejące w nim elementy.

Wyjście

Twój program powinien wypisać na wyjście dokładnie Q wierszy. W i-tym wierszu powinna się znaleźć odpowiedź na pytanie Jasia po wykonaniu i pierwszych operacji. Odpowiedź to jedna liczba całkowita – najmniejsza różnica pomiędzy dwiema różnymi liczbami w zbiorze. Jeśli zbiór nie ma dwóch różnych liczb – wówczas zamiast tego należy wypisać jedynie jedno słowo NIE.

Uwaga

Zbiór Jasia jest początkowo pusty.

Ograniczenia

1 ≤ Q ≤ 500 000, 1 ≤ Ai ≤ 1018.

Przykład

Input Output
8
+ 3
+ 7
+ 9
- 7
+ 12
- 3
- 12
+ 4
NIE
4
2
6
3
3
NIE
5