import java.util.Scanner;
public class Main {
private static int[][] point; //垃圾点集合
private static int result[]=new int[5];
public static void main(String args[])
{
Scanner scan=new Scanner(System.in);
int n=scan.nextInt();
point=new int[n][2];
for(int i=0;i<n;i++)
{
point[i][0]=scan.nextInt();
point[i][1]=scan.nextInt();
}
Sort(n);
run(n);
}
public static void Sort(int n)
{
int tmp[]=new int[2];
for(int i=0;i<n;i++)
{
for(int j=i+1;j<n;j++)
{
if(point[i][0]>point[j][0])
{
tmp=point[i];
point[i]=point[j];
point[j]=tmp;
}
else if(point[i][0]==point[j][0]&&point[i][1]>point[j][1])
{
tmp=point[i];
point[i]=point[j];
point[j]=tmp;
}
}
}
}
public static void run(int n)
{
for(int i=0;i<n;i++)
{
int num=0;
int key=0;
for(int j=0;j<n;j++)
{
if(point[i][0]-1==point[j][0]&&point[i][1]==point[j][1])
{
num++;
}
if(point[i][0]==point[j][0]&&point[i][1]+1==point[j][1])
{
num++;
}
if(point[i][0]+1==point[j][0]&&point[i][1]==point[j][1])
{
num++;
}
if(point[i][0]==point[j][0]&&point[i][1]-1==point[j][1])
{
num++;
}
}
if(num==4)
{
for(int j=0;j<n;j++)
{
if(point[i][0]-1==point[j][0]&&point[i][1]+1==point[j][1])
{
key++;
}
if(point[i][0]-1==point[j][0]&&point[i][1]-1==point[j][1])
{
key++;
}
if(point[i][0]+1==point[j][0]&&point[i][1]+1==point[j][1])
{
key++;
}
if(point[i][0]+1==point[j][0]&&point[i][1]-1==point[j][1])
{
key++;
}
}
result[key]++;
}
}
for(int i=0;i<5;i++)
{
System.out.println(result[i]);
}
}
}