//输入:
//4 3
//5 1 2 3 2 1
//1 1
//3 2 2 2
//2 3 2
//输出:
//2 3
//3 6
//2 2
#include<iostream>
using namespace std;
#include<cstdio>
const int N = 110;
int a[N];//该词一共出现在几篇文章中
int b[N];//该词的出现总次数
int con[N];//用于标记该词出现在第几篇中
int main()
{
//输入文章篇数及单词数
scanf("%d%d",&n, &m);
int len;//文章长度
int word;//出现的单词
while(n --)
{
cin >> len;
for(int i = 1; i <= len; i ++)
{
cin >> word;
b[word] ++;//只要该词出现了总次数就加1
//n表示第几篇
//该词出现了但是还未被标记为出现在第几篇中
//对其进行标记
//出现篇数增加
if(con[word] != n) con[word] = n, a[word] ++;
}
}
//将最后结果输出
for(int i = 1; i <= m; i ++)
{
printf("%d %d\n",a[i], b[i]);
}
return 0;
}