#include <iostream>
#include <vector>
#include <utility>
#include <map>
#include <algorithm>
#include <queue>
#include <cmath>

using namespace std;

void printVector(const vector<int>& vec) {
	 for (int value : vec) {
		 cout << value << " ";
	 }
	 cout << endl;
}

int main() {
	int n,m;
	cin >> n >> m;
	vector<int> s(m,0);
	vector<int> c(m,0);
	vector<string> ans(m,"0");
	for (int i=0; i<m; i++)
			cin >> s[i] >> c[i];

	// printVector(s);
	// printVector(c);
	// if (s[0] == 0 || any_of(s.begin(), s.end(), [](int x) {return x != 1;}))
	if (!(any_of(s.begin(), s.end(), [](int x) {return x == 1;})))){
		cout << "-1" << endl;
	else if(s[0] == 0){
		cout << "-1" << endl;
	} else {
		for (int i=0; i<m; i++)
			ans[s[i]-1] = to_string(c[i]);
		for (auto i : ans)
			cout << i << endl;
	}

	// if (m < n)
	// 	cout << "-1" << endl;
	// else {
	// }

	return 0;
}