1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
import sys

sys.setrecursionlimit(2000)

def solve():
    input_data = sys.stdin.read().split()
    if not input_data:
        return
    
    ptr = 0
    t = int(input_data[ptr])
    ptr += 1
    
    for _ in range(t):
        if ptr >= len(input_data):
            break
        n = int(input_data[ptr])
        ptr += 1
        
        degree = [0] * (n + 1)
        
        for _ in range(n - 1):
            u = int(input_data[ptr])
            v = int(input_data[ptr + 1])
            ptr += 2
            degree[u] += 1
            degree[v] += 1

        if n <= 2:
            print("")
            continue

        all_degrees = []
        for i in range(1, n + 1):
            all_degrees.append(degree[i])
        
        all_degrees.sort(reverse=True)
        
        needed_values = []
        for i, deg in enumerate(all_degrees):
            val = i + 1
            for _ in range(deg - 1):
                needed_values.append(val)
        
        needed_values.sort()
        
        print(*(needed_values[:n-2]))

if __name__ == "__main__":
    solve()