#include<bits/stdc++.h>
using namespace std;
int f[505],x[505],y[505];
int main() {
int n,k,maxn=0;
cin>>n>>k;
for(int i=1; i<=n; i++) {
cin>>x[i]>>y[i];
}
f[1]=1;
for(int i=2; i<=n; i++) {
int mann=0;
for(int j=1; j<=i-1; j++) {
if(x[i]-x[j]==1&&y[i]==y[j]||y[i]-y[j]==1&&x[i]==x[j]) {
mann=max(mann,f[j]);
}
}
f[i]=mann+1;
}
for(int i=1; i<=n; i++) {
maxn=max(maxn,f[i]);
}
cout<<maxn;
}