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.*;
import java.math.*;
public class Main {
	public static void main(String[] args) {
		Scanner in = new Scanner(System.in);
		int n = in.nextInt();
		int m = in.nextInt();
		if(n == 1) {
			int val = 0;
			if(m > 0) {
				in.nextInt();
				int prev = in.nextInt();
				boolean flag = true;
				for(int i = 0; i < m - 1; i++) {
					in.nextInt();
					if(in.nextInt() != prev) {
						flag = false;
						break;
					}
				}
				if(flag == true) val = prev;
				else val = -1;
			}
			System.out.println(val);
		}else {
			int[] ans = new int[n];
			boolean[] flag = new boolean[n];
			for(int i = 0; i < m; i++) {
				int x = in.nextInt();
				int y = in.nextInt();
				x -= 1;
				if(flag[x] == false) {
					if((x == 0) && (y == 0)) {
						ans[x] = -1;
						break;
					}
					ans[x] = y;
					flag[x] = true;
				}else {
					if(ans[x] != y) {
						ans[0] = -1;
						break;
					}
				}
			}
			if(ans[0] == -1) {
				System.out.println("-1");
			}else {
				if(ans[0] == 0) ans[0] = 1;
				for(int i = 0; i < n; i++) {
					System.out.print(ans[i]);
				}
				System.out.print("\n");
			}
		}
	}
} 