#include <bits/stdc++.h>
using namespace std;
long long a[1005][1005];
bool vis[1005][1005];
int main() {
int n, m, a, b;
cin >> n >> m;
a[1][1] = 1;
for (int i = 1; i <= n; i++)
for (int j = 1; j <= n; j++)
vis[a][b] = true;
for (int i = 1; i <= m; i++) {
cin >> a >> b;
}
for (int i = 1; i <= n; i++)
if (vis[i][j] = false || (i == 1 && j == 1)) {
continue;
} else if (j == 1 && vis[i][j] == true) {
a[i][j] = a[i - 1][j];
} else if (i == 1 && vis[i][j] == true) {
a[i][j] = a[i][j - 1];
}
}
cout << a[n][n];
return 0;
}
Complie Error