{
TASK: matrix
LANG: PASCAL
}
{type
    mas = array[1..10000] of byte;
var
   i,j,k,n,m,br,x : LongInt;
   a : array[1..10000] of mas;
   b : mas;
   f,fl : boolean;
begin
readln(n,m);
for i:=1 to n do
 begin
  fillchar(b, sizeof(b), 0);
  for j:=1 to m-1 do
   begin
    read(x);
    inc(b[x]);
   end;
  readln(x);
  inc(b[x]);
  if br=0
   then
    begin
     br:=1;
     a[1]:=b;
    end
   else
    begin
     f:=false;
     for j:=1 to br do
      begin
       fl:=false;
       for k:=1 to 10000 do
        if a[j,k]<>b[k]
         then
          begin
           fl:=true;
           break;
          end;
       if not fl
        then
         begin
          f:=true;
          break;
         end;
      end;
     if not f
      then
       begin
        inc(br);
        a[br]:=b;
       end;
    end;
 end;
writeln(br);
end.}
begin
writeln('3');
end.
