#include <bits/stdc++.h>
using namespace std;
const double eps = 1e-10;
const int INF = 0x3f3f3f3f;
const long long mod = 1e9 + 7;
const long long maxn = 1e6 + 5;
vector<int> V[5];
int main() {
  int n, m;
  cin >> n >> m;
  for (int i = 1; i <= m; i++) {
    int s, c;
    cin >> s >> c;
    if (V[s].size() && V[s][0] == c) continue;
    V[s].push_back(c);
  }
  int res = 0;
  for (int i = 1; i <= 3; i++) {
    if (V[i].size() > 1) {
      cout << -1;
      return 0;
    }
  }
  if (V[1].size()) {
    res = V[1][0];
  }
  if (V[2].size()) {
    res = res * 10 + V[2][0];
  }
  if (V[3].size()) {
    if (!V[2].size()) res *= 10;
    res = res * 10 + V[3][0];
  }
  cout << (res ? res : -1);
  return 0;
}
