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
import java.util.*;

class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		int M = sc.nextInt();
		int[] s = new int[M];
		int[] c = new int[M];
		int ans = -1;
		
		for(int j=0; j<M ;j++) {
			s[j] = sc.nextInt();
			c[j] = sc.nextInt();
		}
		
		if(N==1) {
			for(int i=0; i<10 ;i++) {
				int check = 0;
				for(int j=0; j<M ;j++) {
					if(s[j]==1 && c[j] == i) check++;
				}
				if(check == M) {
					ans = i;
					break;
				}
			}
		}else if(N==2) {
			for(int i=10; i<100 ;i++) {
				int check = 0;
				for(int j=0; j<M ;j++) {
					if(s[j]==1 && c[j] == i%100/10) check++;
					if(s[j]==2 && c[j] == i%10) check++;
				}
				if(check == M) {
					ans = i;
					break;
				}
			}
		}else if(N==3) {
			for(int i=100; i<1000 ;i++) {
				int check = 0;
				for(int j=0; j<M ;j++) {
					if(s[j]==1 && c[j] == i/100) check++;
					if(s[j]==2 && c[j] == (i%100)/10) check++;
					if(s[j]==3 && c[j] == i%10) check++;
				}
				if(check == M) {
					ans = i;
					break;
				}
			}
			
			
		}
		System.out.println(ans);

	}
}


