/*
TASK:matrix
LANG:C
*/
#include <stdlib.h>
#include <stdio.h>
#define MAX 1000
int comp (const void *a,const void *b);
int main ()
{
    int a[MAX+2][MAX+2]={0,0};
    int i,j,n,m,tmp,l,p;
    scanf ("%d %d",&n,&m);
    for (p=0,i=0;i<n;i++,p++)
        {
         for (j=0;j<m;j++)
             scanf ("%d",&a[p][j]);
         qsort (a[p],m,sizeof (a[p][0]),comp);
         tmp=m;
         for (j=p-1;j>=0;j--)
             {
              for (l=0;l<m;l++)
                  if (a[j][l] ^ a[p][l]) break;
              if (l>=m)
                 {
                  p--;
                  break;
                 }
             }
        }
    printf ("%d\n",p);
    return 0;
}


int comp (const void *a,const void *b)
{
 int p;
 p=*(int *)a-*(int *)b;
 return p;
}
