
# N桁
N, M = map(int, input().split())

from collections import defaultdict

l = defaultdict(lambda: 10**9)

for m in range(M):
    s,c = map(int, input().split())
    if s==1 and c==0:# 先頭桁を0にしない
        continue
    else:
        l[s] = min(l[s], c*10**(N-s)) # max3桁の場合、左から3番目は配列の0
        #print(c*10**(3-s))

#print("---")
ans = 0
for n in range(N+1):
    if l[n]!=10**9:
        ans += l[n]
        #print(l[n])
    
#print(ans, len(str(ans)))
if len(str(ans)) == N:
    print(ans)
elif len(str(ans)) > N:
    print(-1)
elif len(str(ans)) < N:
    if l[0] == 10**9 and N==3:# #Nが3桁の場合 先頭桁が未指定の場合、100追加
        print(ans+100)
    elif l[0] == 10**9 and l[1] == 10**9 and N==2:# #Nが2桁の場合 先頭2桁が未指定の場合、10追加
        print(ans+10)
    elif l[0] == 10**9 and l[1] == 10**9 and l[2] == 10**9 and N==1:# #Nが1桁の場合 全て0なら0にする
        print(0)
    else:
        print(-1)
else:
    print(-1)