#include
#include
#include
using namespace std;
int main()
{
int n, m;
cin >> n >> m;
bool ozboruvanje[n][n];
for(int i = 0; i < n; i++) {
for(int j = 0; j < n; j++) {
ozboruvanje[i][j] = false;
}
}
for(int i = 0; i < n; i++) {
ozboruvanje[i][i] = true;
}
int niza1[m + 1], niza2[m + 1];
for(int i = 0; i < m; i++) {
cin >> niza1[i] >> niza2[i];
niza1[i] -= 1;
niza2[i] -= 1;
}
for(int i = 0; i < m; i++) {
int a = niza1[i];
int b = niza2[i];
for(int j = 0; j < n; j++) {
if(ozboruvanje[j][a] or ozboruvanje[j][b]) {
ozboruvanje[j][a] = true;
ozboruvanje[j][b] = true;
}
}
}
int maks = 0;
for(int i = 0; i < n; i++) {
int vkupno = 0;
for(int j = 0; j < n; j++) {
if(ozboruvanje[j][i]) {
vkupno += 1;
}
}
if(maks < vkupno) {
maks = vkupno;
}
}
cout << maks - 1 << endl;
return 0;
}
/*
1 2 3 4 5
x = 4
*/