#include <bits/stdc++.h>
using namespace std;

int main(){ 
    int N;
    int M;
    
    cin >> N;
    cin >> M;
    
    vector<int> ans(N, 10);
  
    //整数入力
    for(int i = 0; i < M; i++){
        int s, c;
        cin >> s; cin >> c;
        
        if(ans.at(s-1) > 9){
            ans.at(s-1) = c;
        }else{
            if(ans.at(s-1) != c){
                cout << "-1" << endl;
                return 0;
            }
        }
    }
    
    // 最上位が0かつ桁数が1より大きい場合存在しない    
    if(ans.at(0) == 0 && N > 1){
        cout << "-1" << endl;
        return 0;
    }

    //最上位が定義されていなかった場合、1を設定
    if(ans.at(0) > 9){
        if(N > 1){
            ans.at(0) = 1;
        }else{
            ans.at(0) = 0;
    }

    //最上位から値を出力。定義されていなかった場合0を出力
    for(int i = 0; i < N; i++){
        if(ans.at(i) > 9){
            cout << 0;
        }else{
            cout << ans.at(i);
        }
    }
    cout << endl;
    return 0;
}
        
