D. Фокус со стаканчиками
ограничение по времени на тест
3 секунды
ограничение по памяти на тест
256 мегабайт
ввод
stdin
вывод
stdout

Сотрудники компании F развлекают себя каждый раз по разному. Сегодня они пригласили в офис знаменитого фокусника, который показывает фокус с пластиковыми стаканчиками и шариком.

Суть фокуса в том, чтобы обмануть внимание человека. Изначально перед испытуемым в ряд выкладывают n пластиковых стаканчиков, далее фокусник кладет под один из стаканчиков маленький шарик, далее перемешивает стаканчики. После чего человек должен угадать, под каким стаканом находится шарик.

Но главного программиста компании F обмануть не так-то просто. Увидев фокус, он заметил несколько важных фактов:

  • на каждом из стаканчиков есть пометка — число от 1 до n; причем все пометки на стаканчиках различны;
  • фокусник перемешивает стаканчики за m операций, каждая операция имеет следующий вид: взять стаканчик с пометкой xi, который в данный момент стоит на позиции yi в ряду стаканчиков (позиции нумеруются слева, начиная от 1), и переместить его в самое начало ряда стаканчиков (на первую позицию).

Когда главный программист пришел домой после работы, он захотел воссоздать фокус. К сожалению, он не запомнил ни изначального, ни конечного положения стаканчиков. Он только запомнил, какие операции совершал фокусник. Помогите программисту, по заданным операциям в порядке их применения найти хотя бы одну изначальную перестановку стаканчиков, с которой можно совершить все операции в том же порядке, или сообщите, что такой не существует.

Входные данные

В первой строке записаны целые числа n и m (1 ≤ n, m ≤ 106). В каждой из следующих m строк записана пара целых чисел. В i-й строке записаны целые числа xi, yi (1 ≤ xi, yi ≤ n) — описание i-й операции фокусника. Обратите внимание, что операции заданы в том порядке, в котором их выполнял фокусник, программист хочет выполнить эти операции в таком же порядке.

Выходные данные

Если описанной перестановки не существует (программист ошибся в своих воспоминаниях), выведите -1. Иначе выведите n различных целых чисел, каждое от 1 до n: i-е число должно обозначать пометку на стаканчике, который изначально стоит в ряду на позиции i.

Если существует несколько правильных ответов, нужно вывести лексикографически наименьший.

Примеры
Входные данные
2 1
2 1
Выходные данные
2 1 
Входные данные
3 2
1 2
1 1
Выходные данные
2 1 3 
Входные данные
3 3
1 3
2 3
1 3
Выходные данные
-1