N_M = list(map(int,input().split()))
N = N_M[0]
M = N_M[1]
a = [input().split() for l in range(M)]
ans = 0
d = [0, 0, 0]
f1, f2, f3 = 0, 0, 0
if M > N:
    ans = -1
for i in range(M):
    if N == 1:
        if a[i][0] == '1':
            
            if f1 == 0:
                f1 = 1
                t1 = int(a[i][1])
                ans = int(a[i][1])
            elif t1 != int(a[i][1]):
                ans = -1
                break
    if N == 2:
        if a[i][0] == '1':
            if a[i][1] == '0':
                ans = -1
                break
            
            if f1 == 0:
                f1 = 1
                t1 = int(a[i][1])
                ans = ans + 10 * int(a[i][1])
            elif t1 != int(a[i][1]):
                ans = -1
                break
        elif a[i][0] == '2':
            
            if f2 == 0:
                f2 = 1
                t2 = int(a[i][1])
                ans = ans + int(a[i][1])
            elif t2 != int(a[i][1]):
                ans = -1
                break
    if N == 3:
        if a[i][0] == '1':
            if a[i][1] == '0':
                ans = -1
                break
            if f1 == 0:
                f1 = 1
                t1 = int(a[i][1])
                ans = ans + 100 * int(a[i][1])
            elif t1 != int(a[i][1]):
                ans = -1
                break
        elif a[i][0] == '2':
            
            if f2 == 0:
                f2 = 1
                t2 = int(a[i][1])
                ans = ans + 10 * int(a[i][1])
            elif t2 != int(a[i][1]):
                ans = -1
                break
        elif a[i][0] == '3':
            
            if f3 == 0:
                f3 = 1
                t3 = int(a[i][1])
                ans = ans + int(a[i][1])
            elif t3 != int(a[i][1]):
                ans = -1
                break
if len(str(ans)) < N and ans != -1:
    ans = ans + 10 ** (N-1)
print(ans)