/*
TASK:matrix
LANG:C++
*/
#include<iostream>
#include<algorithm>
using namespace std;
int n,m,f=0;int used[10000];
unsigned long a[10000][1000];
int main()
{ cin>>n>>m;
int i,j,k;
for(i=1;i<=n;i++)
 for( j=1;j<=m;j++)
  cin>>a[i][j];
for(i=1;i<=n;i++)
sort(a[i]+1,a[i]+n);
used[1]=1;
 for(i=1;i<=n;i++)
  { for(j=i+1;j<=n;j++)
    if(!used[j])
     for(k=1;k<=m;k++)
    { if(a[i][k]!=a[j][k])break;
      if(k==m){f++;used[i]=1;used[j]=1;}
    }
  }   
cout<<n-f<<endl;
system("pause");
return 0;

}     
