// ConsoleApplication95.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

// ConsoleApplication94.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//

#include <iostream>
#include<cstring>
#include<algorithm>
#include<iomanip>
#include<set>
#include<map>
#include<vector>
using namespace std;
long long gcd(long long a, long long b)
{
	if (b == 0)
		return a;
	return gcd(b, a % b);
}
long long exgcd(long long a, long long b, long long& x, long long& y) {
	if (b == 0) {
		x = 1, y = 0;
		return a;
	}
	long long d = exgcd(b, a % b, y, x);
	y -= a / b * x;
	return d;
}
int main()
{
	vector<pair<int, int>>lala;
	map<int, int>la;
	int a, b, n, m,zong=0;
	cin >> n >> m;
	for (int i=0; i < m; i++)
	{
		cin >> a >> b;
		lala.push_back(make_pair(a, b));
	}
	for (int i = 0; i < m; i++)
	{
		for (int w = i; w < m; w++)
		{
			if (lala[i].first == lala[w].first)
			{
				if (lala[i].second <= lala[w].second)
				{
					lala[w].second = lala[i].second;
				}
				else
				{
					lala[i].second = lala[w].second;
				}
			}
		}
	}
	for (auto& x : lala)
	{
		la.insert(make_pair(x.first, x.second));
	}
	if (la[1] == 0)
	{
		cout << "-1" << endl;
		return 0;
	}
	
	for (auto& x : la)
	{
		zong += pow(10, n - x.first) * x.second;
	}
	cout << zong << endl;
}
