n,m=map(int,input().split())
a=[list(map(int,input().split())) for i in range(m)]

answer=[] #答えを収納するリストを作成
for i in range(n):
  answer.append(10) #各桁に10をセット(条件がないことを示す)
  
for i in range(len(a)): #aで指定された条件を適用する
  if answer[a[i][0]-1]==10:
    answer[a[i][0]-1]=a[i][1] #もともと空だったら入れる
  elif answer[a[i][0]-1]!=a[i][1]:
    answer[a[i][0]-1]=11 #空でなく、指示も異なるということは不適なのでそれを示す11を入れる

if answer[0]==10:
  answer[0]==1 #最小のやつを作る
    
for i in range(len(answer)):
  if answer[i]==10:
    answer[i]=0 #空のところには0を入れる(最小を作る)

number=""
for i in range(len(answer)):
  number=number+str(answer[i])
  
if (11 in answer) or (answer[0]==0 and n!=1):
  print(-1)
else:
  print(number)