У цій задачі вам необхідно організувати структуру даних Heap для зберігання цілих чисел, над якою визначено наступні операції:
Insert() - додати в Heap ;
Extract - дістати з Heap найбільше число (видаливши його при цьому).
Перший рядок містить кількість команд (1 \le n \le 10^5), потім послідовність з команд, кожна у своєму рядку.
Кожна команда має такий формат: "0 число" або "1", що позначає відповідно операції Insert(число) та Extract. Числа, що додаються, знаходяться у інтервалі від до 10^7 включно.
Гарантується, що при виконанні команди Extract у структурі знаходиться щонайменше один елемент.
Для кожної команди діставання виведіть число, отримане при виконанні команди Extract.
Приклад 1