Hide

Problem D
Parents

A certain software architect stores hierarchical data by assigning a parent to each item. While explaining his idea he drew the following table and chart on the whiteboard.

ID

Parent

Item

0

-1

Geometry

1

0

Polyhedron

2

1

Prism

3

1

Platonic Solid

4

3

Tetrahedron

5

3

Cube

6

3

Icosahedron

7

1

Pyramid

8

0

Polygon

9

8

Triangle

10

8

Quadrilateral

11

10

Parallelogram

12

10

Rectangle

13

12

Square

\includegraphics[width=\textwidth ]{diagram.png}

The architect needs to find the deepest item(s). Write a program to print the deepest items in the heirarchy in alphabetical order. In the example above, there is only one deepest item: Square. If however, Square were not included in the example above, five deepest items exist: Tetrahedron, Cube, Icosahedron, Parallelogram, and Rectangle.

Input

The first line of input contains the number (n) of data sets to consider. (0<n1000) Each data set consists of an initial line containing a single positive integer, the number of items in that set (0<m1000). Each item appears on a line by itself containing, in order, a single integer, a space, and a sequence of upto 100 lower-case letters identifying the item. The integer is the index of the parent of the item, which must already exist, however if the item has no parent, the index is 1. Item identifiers are guarenteed to be unique.

Output

Each data set should produce one line of output containing the deepest items in alphabetical order.

Sample Input 1 Sample Output 1
2
14
-1 geometry
0 polyhedron
1 prism
1 platonicsolid
3 tetrahedron
3 cube
3 icosahedron
1 pyramid
0 polygon
8 triangle
8 quadalateral
10 parallelogram
10 rectangle
12 square
13
-1 geometry
0 polyhedron
1 prism
1 platonicsolid
3 tetrahedron
3 cube
3 icosahedron
1 pyramid
0 polygon
8 triangle
8 quadalateral
10 parallelogram
10 rectangle
square
cube icosahedron parallelogram rectangle tetrahedron
Hide

Please log in to submit a solution to this problem

Log in