/*
TASK : green
LANG : C++
*/
#include <iostream>
using namespace std;
long int ar[102][2];
int ploshttr(long int ax,long int ay,long int bx,long int by,long int cx, int cy)
{
	long int i,j,s,l,min,m[4][3],p[4];
	m[1][1]=ax;
	m[1][2]=ay;
	m[2][1]=bx;
	m[2][2]=by;
	m[3][1]=cx;
	m[3][2]=cy;
	min=ay;
	for(i=1;i<3;i++)
		for(j=i+1;j<4;j++)
			if(m[i][1]>m[j][1])
			{
				l=m[i][1];
				m[i][1]=m[j][1];
				m[j][1]=l;
				l=m[i][2];
				m[i][2]=m[j][2];
				m[j][2]=l;
			}
	for(i=1;i<4;i++)
		if(m[i][2]<min)min=m[i][2];
	min--;	s=(((m[1][2]-min)+(m[2][2]-min))*(m[2][1]-m[1][1]))/2+(((m[3][2]-min)+(m[2][2]-min))*(m[3][1]-m[2][1]))/2-(((m[1][2]-min)+(m[3][2]-min))*(m[3][1]-m[1][1]))/2;
	if(s<0)s=s*(-1);
	return s;
}
int lice()
{
	long int s=0,i=2,br=ar[0][0];
	do{
		s+=ploshttr(ar[1][0],ar[1][1],ar[i][0],ar[i][1],ar[i+1][0],ar[i+1][1]);
	i++;
	br--;
	}while(br>2);
	return s;
}
int main()
{
	long int j,i,min[5];
	j=1;
	cin >> ar[0][0];
	for(i=1;i<=ar[0][0];i++)
		cin >> ar[i][0] >> ar[i][1];
	min[1]=j;
	min[2]=ar[0][0];
	min[3]=lice();
	j++;
	do{
		cin >> ar[0][0];
		if(ar[0][0]==0){cout <<min[1]<<"\n";return 0;}
		for(i=1;i<=ar[0][0];i++)
			cin >> ar[i][0] >> ar[i][1];
		if(min[3]>lice()){min[1]=j;min[2]=ar[0][0];min[3]=lice();}
		if(min[3]==lice() && min[2]<ar[0][0]){min[1]=j;min[2]=ar[0][0];min[3]=lice();}
		j++;
	}while(ar[0][0]!=0);
	return 0;
}
