If there is an integer not less than 0 satisfying the following conditions, print the smallest such integer; otherwise, print `-1`.

* The integer has exactly N digits in base ten. (We assume 0 to be a 1-digit integer. For other integers, leading zeros are not allowed.)
* The s_i-th digit from the left is c_i. \left(i = 1, 2, \cdots, M\right)

Constraints

* All values in input are integers.
* 1 \leq N \leq 3
* 0 \leq M \leq 5
* 1 \leq s_i \leq N
* 0 \leq c_i \leq 9

Input

Input is given from Standard Input in the following format:


N M
s_1 c_1
\vdots
s_M c_M


Output

Print the answer.

Examples

Input

3 3
1 7
3 2
1 7


Output

702


Input

3 2
2 1
2 3


Output

-1


Input

3 1
1 0


Output

-1
#include <bits/stdc++.h>
using namespace std;

int main() {
	long long n,m,k,ans,cur,res,i,j;
	cin >> n >> m;
	vector<long long> a(n,10);
	for(i=0; i<m; i++){
		cin >> k >> cur;
		k--;
		if(a[k]==10){
			a[k]=cur;
		}else if(a[k]!=cur){
			cout << -1;  return 0;
		}
	}
	
	if(n!=1 && a[0]==0){
		cout << -1; return 0;
	}
	
	if(n==1 && m==0){
		cout << 0; return 0;
	}
	for(i=0; i<n; i++){
		if(a[i]==10 && i==0){
			cout << 1;
		}else if(a[i]==10 && i!=0){
			cout << 0;	
		}else{
			cout << a[i];
		}
	}

	return 0;
}