If there is an integer not less than 0 satisfying the following conditions, print the smallest such integer; otherwise, print `-1`.

* The integer has exactly N digits in base ten. (We assume 0 to be a 1-digit integer. For other integers, leading zeros are not allowed.)
* The s_i-th digit from the left is c_i. \left(i = 1, 2, \cdots, M\right)

Constraints

* All values in input are integers.
* 1 \leq N \leq 3
* 0 \leq M \leq 5
* 1 \leq s_i \leq N
* 0 \leq c_i \leq 9

Input

Input is given from Standard Input in the following format:


N M
s_1 c_1
\vdots
s_M c_M


Output

Print the answer.

Examples

Input

3 3
1 7
3 2
1 7


Output

702


Input

3 2
2 1
2 3


Output

-1


Input

3 1
1 0


Output

-1
#include<iostream>
#include<cstdio>

using namespace std;

int n,m,z[2323];
bool vis[2323];
int main(){
	bool flag=0;
cin>>n>>m;

for(int i=0;i<m;i++){
	int a,b; cin>>a>>b;
    if(z[a]!=b){if(vis[a]==1){flag=1;break;
	}else{z[a]=b;vis[a]=1;}}
	else vis[a]=1;
}
if(n==1&&z[1]==0){cout<<0;return 0;
}
if(flag==1 ||(vis[1]==1&& z[1]==0)){cout<<-1;return 0;
}
if(vis[1]==0)z[1]=1;
for(int i=2;i<=n;i++){
	if(vis[i]==0)z[i]=0;
}
for(int i=1;i<=n;i++)cout<<z[i];
return 0;
} 