#include <bits/stdc++.h>
using namespace std;
string vow = "aeiou";
int month[] = {-1, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
const int dxhorse[] = {-2, -2, -1, -1, 1, 1, 2, 2};
const int dyhorse[] = {1, -1, 2, -2, 2, -2, 1, -1};
const int dx[] = {-1, 0, 1, 0};
const int dy[] = {0, 1, 0, -1};
const long double pie = 3.1415926535897932384626;
const long long mod = 1e9 + 7;
void bad() {
  cout << -1;
  cout << "\n";
  ;
  exit(0);
}
void solve(int test_case) {
  int n, q;
  cin >> n >> q;
  vector<int> v(n);
  vector<bool> vis(n);
  while (q--) {
    int indx, val;
    cin >> indx >> val;
    indx--;
    if (vis[indx] == true) {
      if (v[indx] != val) bad();
      continue;
      ;
    }
    vis[indx] = 1;
    v[indx] = val;
  }
  reverse((v).begin(), (v).end());
  int f = 1;
  int s = 0;
  for (int i = 0; i < n; i++) {
    s += f * v[i];
    f *= 10;
  }
  string temp = to_string(s);
  int z = temp.size();
  if (z != n) bad();
  cout << s;
  cout << "\n";
  ;
}
int main() {
  int t = 1;
  for (int i = 1; i <= t; i++) solve(i);
  return 0;
}
