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.Scanner;

public class Main {

	public static void main(String[] args) {

		Scanner scan = new Scanner(System.in);

		int N = scan.nextInt();
		int M = scan.nextInt();
		int[] s = new int[M+1];
		int[] c = new int[M+1];
		boolean f = true;

		for (int i = 1; i < M+1; i++) {
			s[i] = scan.nextInt();
			c[i] = scan.nextInt();
		}

		if (N == 1) {
			for (int i = 1; i < M; i++) {
				if (c[i] != c[i+1]) {
					f = false;
				}
			}

			if (f && M == 0) System.out.println(0);
			else if (f) System.out.println(c[1]);
			else System.out.println(-1);

		} else {
			int[] ans = new int[N+1];
			boolean[] vst = new boolean[N+1];
			ans[1] = 1;

			for (int i = 1; i < M+1; i++) {
				if (!vst[s[i]]) {
					vst[s[i]] = true;
					ans[s[i]] = c[i];
				} else if (c[i] != ans[s[i]]) {
						f = false;
						break;
				}
			}

			if (!f || ans[1] == 0) {
				System.out.println(-1);
			} else {
				for (int i = 1; i < N+1; i++) {
					System.out.print(ans[i]);
				}
			}

		}

	}

}
