n,m=map(int,input().split())
sc=[]
flag=0
for i in range(m):
  s,c=map(int,input().split())
  if [s,c] in sc:
    continue
  else:
    sc.append([s,c])
sc.sort()

ans=-1
keta=[0 for i in range(n)]
cnt=[0,0,0]
if n==1:
  for i,j in sc:
    if i>1 or len(sc)>1 or cnt[i-1]>0:
      flag=1
      break
    else:
      keta[0]=j
  ans=j

if n==2:
  for i,j in sc:
    if i>2 or len(sc)>2 or cnt[i-1]>0:
      flag=1
      break
    else:
      if i==1:
        if j==0:
          flag=1
          break
        keta[1]=j
        cnt[i-1]+=1
      if i==2:
        cnt[i-1]+=1
        if j==0:
          flag=1
          break
        else:
          keta[0]=j
  if keta[1]==0:
    keta[1]=1
  if flag==0 and keta[0]>0:
    ans=keta[1]*10+keta[0]

if n==3:
  for i,j in sc:
    if len(sc)>3 or cnt[i-1]>0:
      flag=1
      break
    else:
      if i==1:
        cnt[i-1]+=1
        if j==0:
          flag=1
          break
        keta[2]=j
      if i==2:
        cnt[i-1]+=1
        keta[1]=j
      if i==3:
        cnt[i-1]+=1
        keta[0]=j
  if keta[2]==0:
    keta[2]=1
  if flag==0 and (keta[1]+keta[2]>0):
    ans=keta[2]*100+keta[1]*10+keta[0]

print(ans)
