import math
def find(u, par):
if par[u] != u:
par[u] = find(par[u], par)
return par[u]
def union(u, v, par, size):
u_root = find(u, par)
v_root = find(v, par)
if u_root == v_root:
return
if size[u_root] < size[v_root]:
par[u_root] = v_root
size[v_root] += size[u_root]
else:
par[v_root] = u_root
size[u_root] += size[v_root]
def ip():
return map(int,input().split())
T=1
T=int(input())
for __ in range(T):
a=input()
n,k=ip()
adj=[[] for _ in range(n)]
deg={}
for i in range(n):
deg[i]=0
for _ in range(n-1):
u,v=ip()
adj[u-1].append(v-1)
adj[v-1].append(u-1)
deg[u-1]+=1
deg[v-1]+=1
ct=[-1 for _ in range(n)]
unsafe=set()
dd=set()
if n == 1 and k >= 1:
print(0)
continue
for i in range(n):
if deg[i]<=1:
unsafe.add(i)
t=1
while unsafe and t<=k:
st=set()
for i in unsafe:
# ct[i]=t
for v in adj[i]:
if v not in dd and v not in unsafe:
deg[v]-=1
if deg[v]<=1:
st.add(v)
for i in unsafe:
dd.add(i)
unsafe=st
t+=1
print(n-len(dd))
aW1wb3J0IG1hdGgKZGVmIGZpbmQodSwgcGFyKToKCiAgICBpZiBwYXJbdV0gIT0gdToKICAgICAgICBwYXJbdV0gPSBmaW5kKHBhclt1XSwgcGFyKQogICAgcmV0dXJuIHBhclt1XQoKZGVmIHVuaW9uKHUsIHYsIHBhciwgc2l6ZSk6CiAgICB1X3Jvb3QgPSBmaW5kKHUsIHBhcikKICAgIHZfcm9vdCA9IGZpbmQodiwgcGFyKQoKICAgIGlmIHVfcm9vdCA9PSB2X3Jvb3Q6CiAgICAgICAgcmV0dXJuIAoKCiAgICBpZiBzaXplW3Vfcm9vdF0gPCBzaXplW3Zfcm9vdF06CiAgICAgICAgcGFyW3Vfcm9vdF0gPSB2X3Jvb3QKICAgICAgICBzaXplW3Zfcm9vdF0gKz0gc2l6ZVt1X3Jvb3RdCiAgICBlbHNlOgogICAgICAgIHBhclt2X3Jvb3RdID0gdV9yb290CiAgICAgICAgc2l6ZVt1X3Jvb3RdICs9IHNpemVbdl9yb290XQoKZGVmIGlwKCk6CiAgICByZXR1cm4gbWFwKGludCxpbnB1dCgpLnNwbGl0KCkpCgoKCgpUPTEKVD1pbnQoaW5wdXQoKSkKZm9yIF9fIGluIHJhbmdlKFQpOgogICAgYT1pbnB1dCgpCiAgICBuLGs9aXAoKQogICAgYWRqPVtbXSBmb3IgXyBpbiByYW5nZShuKV0KICAgIGRlZz17fQogICAgZm9yIGkgaW4gcmFuZ2Uobik6CiAgICAgICAgZGVnW2ldPTAKICAgIGZvciBfIGluIHJhbmdlKG4tMSk6CiAgICAgICAgdSx2PWlwKCkKICAgICAgICBhZGpbdS0xXS5hcHBlbmQodi0xKQogICAgICAgIGFkalt2LTFdLmFwcGVuZCh1LTEpCiAgICAgICAgZGVnW3UtMV0rPTEKICAgICAgICBkZWdbdi0xXSs9MQogICAgY3Q9Wy0xIGZvciBfIGluIHJhbmdlKG4pXQogICAgdW5zYWZlPXNldCgpCiAgICBkZD1zZXQoKQogICAgaWYgbiA9PSAxIGFuZCBrID49IDE6CiAgICAgICAgcHJpbnQoMCkKICAgICAgICBjb250aW51ZQogICAgZm9yIGkgaW4gcmFuZ2Uobik6CiAgICAgICAgaWYgZGVnW2ldPD0xOgogICAgICAgICAgICB1bnNhZmUuYWRkKGkpCgogICAgdD0xCiAgICB3aGlsZSB1bnNhZmUgYW5kIHQ8PWs6CiAgICAgICAgc3Q9c2V0KCkKICAgICAgICBmb3IgaSBpbiB1bnNhZmU6CiAgICAgICAgICAgICMgY3RbaV09dAogICAgICAgICAgICBmb3IgdiBpbiBhZGpbaV06CiAgICAgICAgICAgICAgICBpZiB2IG5vdCBpbiBkZCBhbmQgdiBub3QgaW4gdW5zYWZlOgogICAgICAgICAgICAgICAgICAgIGRlZ1t2XS09MQogICAgICAgICAgICAgICAgICAgIGlmIGRlZ1t2XTw9MToKICAgICAgICAgICAgICAgICAgICAgICAgc3QuYWRkKHYpCiAgICAgICAgZm9yIGkgaW4gdW5zYWZlOgogICAgICAgICAgICBkZC5hZGQoaSkKICAgICAgICB1bnNhZmU9c3QKICAgICAgICB0Kz0xCiAgICAKICAgIHByaW50KG4tbGVuKGRkKSkKCg==
NgoKMTQgMQoxIDIKMiAzCjIgNAo0IDUKNCA2CjIgNwo3IDgKOCA5CjggMTAKMyAxMQozIDEyCjEgMTMKMTMgMTQKCjIgMjAwMDAwCjEgMgoKMyAyCjEgMgoyIDMKCjUgMQo1IDEKMyAyCjIgMQo1IDQKCjYgMgo1IDEKMiA1CjUgNgo0IDIKMyA0Cgo3IDEKNCAzCjUgMQoxIDMKNiAxCjEgNwoyIDEK
6
14 1
1 2
2 3
2 4
4 5
4 6
2 7
7 8
8 9
8 10
3 11
3 12
1 13
13 14
2 200000
1 2
3 2
1 2
2 3
5 1
5 1
3 2
2 1
5 4
6 2
5 1
2 5
5 6
4 2
3 4
7 1
4 3
5 1
1 3
6 1
1 7
2 1