#include <bits/stdc++.h>
using namespace std;
using std::swap;
vector<long long int> v;
vector<long long int> w;
int main() {
  int N, M;
  int ans = 0;
  cin >> N >> M;
  vector<vector<int>> m(N);
  if (M > 0) {
    for (int i = 0; i < M; i++) {
      int s, c;
      cin >> s >> c;
      if (N != 1 && s == 1 && c == 0) {
        cout << -1 << "\n";
        return 0;
      }
      m[s - 1].push_back(c);
    }
    for (int i = 0; i < N; i++) {
      if (m.at(i).size() >= 2) {
        for (int j = 0; j < m.at(i).size() - 1; j++) {
          if (m[i][j] != m[i][j + 1]) {
            cout << -1 << "\n";
            return 0;
          }
        }
      }
    }
  }
  if (m.at(0).size() == 0) m[0].push_back(1);
  for (int i = 0; i < N; i++) {
    if (m.at(i).size() == 0)
      continue;
    else {
      ans += m[i][0] * pow(10, N - i - 1);
    }
  }
  cout << ans << "\n";
  return 0;
}
