/*
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,br=0,n,m,tmp,l;
    scanf ("%d %d",&n,&m);
    br=n;
    for (i=0;i<n;i++)
        {
         for (j=0;j<m;j++)
             scanf ("%d",&a[i][j]);
         qsort (a[i],m,sizeof (a[i][0]),comp);
         tmp=m;
         for (j=i-1;j>=0;j--)
             {
              for (l=0;l<m;l++)
                  if (a[j][l] ^ a[i][l]) break;
              if (l>=m)
                 {
                  br--;
                  break;
                 }
             }
        }
    printf ("%d\n",br);
    return 0;
}


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