import itertools
import functools
import math
from collections import Counter
from itertools import combinations
import re

"""
制約
1 ≦ N ≦ 3 桁数・・・答えは３桁の数字（０〜９９９まで）　計算回数のオーダー等は考慮不要である大きさ
0 ≦ M ≦ 5 条件の数
1 ≦ Si ≦ N 指定の桁数
0 ≦ Ci ≦ 9 指定の桁数の取りうる数字の範囲
"""


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

#正規化文字列で比較する
ans = ["."] * N

for i in range(M):
    S,C=map(int,input().split())

    #同じ桁数に異なる条件が入った場合は、その時点で当てはまるものがなくなる
    if ans[S-1] not in (".",C):
        print(-1)
        exit()

    #文字列で比較するため Cは str型に変換
    ans[S-1] = str(C)

#正規化した条件のため、先頭の文字が0であるかのチェックの必要はない
cmp = re.compile("".join(ans))

for i in range(10**3):
    #マッチした場合オブジェクトを返す、しない場合はNoneが返る
    res = cmp.match(str(i))
    if res:
        print(i)
        exit()

print(-1)