#include <bits/stdc++.h>
using namespace std;
int b[1005][1005];
int f(int x, int y) {
  int i, j;
  for (i = 0; i < 3; i++)
    for (j = 0; j < 3; j++)
      if (b[x + i][y + j] != 1) return 0;
  return 1;
}
int main() {
  int n, m, i, x, y, j, z;
  cin >> n >> m;
  vector<pair<int, int> > a(m);
  for (i = 0; i < m; i++) cin >> a[i].first >> a[i].second;
  for (i = 0; i < m; i++) {
    b[a[i].first][a[i].second] = 1;
    x = a[i].first - 2, y = a[i].second - 2;
    for (j = 0; j < 3; j++)
      for (z = 0; z < 3; z++)
        if (f(x + j, y + z)) {
          cout << i + 1 << endl;
          return 0;
        }
  }
  cout << -1 << endl;
}
