#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
struct student{
char id[16];
int s,l,lr,r;
}stu[30010];
bool cmp(student a,student b)
{
return a.s > b.s;
}
bool cmp1(student a,student b)
{
if(a.s != b.s) return a.s > b.s;
else return strcmp(a.id,b.id) < 0 ;
}
int main()
{
int n,k,num = 0;
scanf("%d",&n);
for(int i = 1; i <= n; i++){
scanf("%d",&k);
for(int j = 0; j < k; j++){
scanf("%s %d",stu[num].id,&stu[num].s);
stu[num++].l = i;
}
sort(stu+num-k,stu+num,cmp);
stu[num-k].lr = 1;
for(int t = num-k+1; t <= num-1;t++){
if(stu[t].s == stu[t-1].s){
stu[t].lr = stu[t-1].lr;
}
else stu[t].lr = t-num+1+k;
}
}
sort(stu,stu+num,cmp1);
stu[0].r = 1;
for(int i = 1; i < num; i++){
if(stu[i].s == stu[i-1].s){
stu[i].r = stu[i-1].r;
}
else stu[i].r = i+1;
}
printf("%d\n",num);
for(int i = 0; i < num; i++){
printf("%s %d %d %d\n",stu[i].id,stu[i].r,stu[i].l,stu[i].lr);
}
return 0;
}