#include<stdio.h>
#define NILL -1

int main()
{
  int i,j,k,m=0,n,parent[100000],L[100000],R[100000],id, child; 
  for(i=0; i<100000; i++){
      parent[i]=NILL;
      L[i]=NILL;
      R[i]=NILL;
    }
  scanf("%d", &n);
  for(i=0; i<n; i++){
    scanf("%d %d", &id, &k);
      for(j=0;j<k;j++){
        scanf("%d",&child);
        parent[child]=id;
	  if(j==0)L[id]=child;
	  else R[m]=child;
	  m=child;
    }
  }for(i=0; i<n; i++){
      printf("node %d: ", i);
      printf("parent = %d, ", parent[i]);
      for(j=parent[i], k=0; j!=NILL; j=parent[j], k++);
      printf("depth = %d, ", k);
      if(parent[i]==NILL)printf("root, [");
      else if(parent[i]!=NILL && L[i]!=NILL)printf("internal node, [");
      else printf("leaf, [");
      for(j=L[i]; j!=NILL; j=R[j]){
	    if(R[j]!=NILL)printf("%d, ", j);
	    else printf("%d", j);
	}
      printf("]\n");
    }
  return 0;
}
