F#include <bits/stdc++.h>
 
using namespace std;
#define ll long long
#define ld long double
 
#define endl '\n'
#define FAST                      \
    ios_base::sync_with_stdio(0); \
    cin.tie(0);                   \
    cout.tie(0);
const ll mod = 1000000007;
const double PI = 3.141592653589793238463;
const int MAXN = 1e5 + 5;

int main() {
int n,m;
cin>>n>>m;
map<int,set<int>>mm;
for(int i=0;i<m;i++)
{
    int a,b;
    cin>>a>>b;
    mm[a].insert(b);
}
if(n==1 && m==1 && (mm.begin())->first==1 && *((mm.begin())->second.begin())==0)
return cout<<0,0;
else if(n==1 && m==0)
return  cout<<0,0;
for(auto i=mm.begin();i!=mm.end();i++)
{
    set<int>v=i->second;
    if(v.size()>1 || (*v.begin()==0 && i->first==1))
    return cout<<-1,0;
}
int arr[n+1];
memset(arr,0,sizeof arr);
for(auto i=mm.begin();i!=mm.end();i++)
{
    set<int>v=i->second;
arr[i->first]=*v.begin();
    
}
if(arr[1]==0)
arr[1]=1;
for(int i=1;i<=n;i++)
{
  cout<<arr[i];
}
cout<<endl;

    return 0;
}
