#C
#入力
N,M=map(int,input().split())
X=[list(map(int,input().split())) for i in range(M)]

#諸関数
def pront(X):
    #デバッグ用プリント
    #環境変数としてdebugを確保して、それが1なら内容を出力
    if debug==1:
        print(X)

#デバッグ用
debug=0#0:本番,1:デバッグ中
#処理
t=0
Y=[-1 for i in range(N)]

for i in X:
    if Y[i[0]-1]==-1:
        Y[i[0]-1]=i[1]
    elif Y[i[0]-1]!=i[1]:
        t=1
        break

pront(Y)
if t==1:
    pront("a")
    print("-1")
elif N==1:
    if Y[0]==-1:
        pront("b1")
        print("0")
    else:
        pront("b2")
        print(Y[0])
elif M==0:
    pront("e")
    print(-1)
elif Y[0]==0:
    pront("c")
    print("-1")
else:
    pront("d")
    sa=""
    for i in Y:
        if i==-1:
            sa=sa+"0"
        else:
            sa=sa+str(i)
    print(sa)
