n, m = gets.split.map(&:to_i)
s = []
c = []
1.upto(m) do |i|
  s[i], c[i] = gets.split.map(&:to_i)
end
(10 ** (n - 1) - 1).upto(10 ** n - 1) do |i|
  f = true
  1.upto(m) do |j|
    f = false if i.to_s[s[j] - 1] != c[j].to_s
  end
  if f
    puts i
    exit
  end
end
puts '-1'