/*
AizuOnline A1124
Title When Can We Meet?
*/
#include <stdio.h>
// Select Below
//#include <stdlib.h>
#include <string.h>
//#include <float.h>
//#include <math.h>
//#include <limits.h>
//Global data section
int N,Q,M,D;
char date_table[100];
//
main()
{
  int i,j,maxmem,maxdat;

  while(EOF!=scanf("%d %d ",&N,&Q) && (N||Q))
    {
      memset(date_table,0,sizeof(date_table));
      for(i=0;i<N;i++)
	{
	  scanf("%d",&M);
	  //printf("M:%d\n",M);
	  for(j=0;j<M;j++)
	    {
	      scanf("%d ",&D);
	      date_table[D]++;
	    }
	}
      maxmem=0;maxdat=0;
      for(i=1;i<=sizeof(date_table);i++)
	if(date_table[i]>=Q && date_table[i]>maxmem)
	  {
	    maxdat=i;
	    maxmem=date_table[i];	 
	  }
      if(maxdat>0)
	printf("%d\n",maxdat);
      else
	printf("0\n");
    NEXT:
      ;
    }
return(0);
}