#include <bits/stdc++.h>
using namespace std;
int main() {
  int N, M;
  cin >> N >> M;
  int s[10], c[10];
  for (int i = 0; i < (int)(M); i++) cin >> s[i] >> c[i];
  int ans = -1;
  for (int i = 0; i < (int)(M); i++) {
    if (s[i] > N) {
      cout << ans << endl;
      return 0;
    }
  }
  if (N == 1) {
    for (int i = 0; i < (int)(10); i++) {
      for (int j = 0; j < (int)(M); j++) {
        if (i != c[j]) break;
        if (j == M - 1) {
          if (ans == -1)
            ans = i;
          else
            ans = min(ans, i);
        }
      }
    }
  }
  if (N == 2) {
    for (int i = 10; i < 100; i++) {
      for (int j = 0; j < (int)(M); j++) {
        if (s[j] == 1) {
          if (i / 10 != c[j]) break;
        }
        if (s[j] == 2) {
          if (i % 10 != c[j]) break;
        }
        if (j == M - 1) {
          if (ans == -1)
            ans = i;
          else
            ans = min(ans, i);
        }
      }
    }
  }
  if (N == 3) {
    for (int i = 100; i < 1000; i++) {
      for (int j = 0; j < (int)(M); j++) {
        if (s[j] == 1) {
          if (i / 100 != c[j]) break;
        }
        if (s[j] == 2) {
          if ((i / 10) % 10 != c[j]) break;
        }
        if (s[j] == 3) {
          if (i % 10 != c[j]) break;
        }
        if (j == M - 1) {
          if (ans == -1)
            ans = i;
          else
            ans = min(ans, i);
        }
      }
    }
  }
  cout << ans << endl;
  return 0;
}
