#include<bits/stdc++.h>
using namespace std;
int n,q,tot,hd[500005],nt[500005],to[500005],fa[500005][20],lg[500005],dep[500005],d[500005][20],g;
bool vis[500005];
void link(int x,int y)
{
	nt[++tot]=hd[x],to[tot]=y,hd[x]=tot;
	nt[++tot]=hd[y],to[tot]=x,hd[y]=tot;
}
void dfs(int x)
{
	vis[x]=1;
	d[x][0]=x;
	for(int i=hd[x];i;i=nt[i])
	{
		int y=to[i];
		if(!vis[y])
		{
			
			dfs(y);
		}
	}
}
int lca(int x,int y)
{
	if(dep[x]<dep[y])
		swap(x,y);
	int t=dep[x]-dep[y];
	for(int i=lg[n];i>=0;i--)
		if(t>=(1<<i))
		{
			x=fa[x][i];
			t-=(1<<i);
		}
	if(x==y)
		return x;
	for(int i=lg[n];i>=0;i--)
		if(fa[x][i]!=fa[y][i])
		{
			x=fa[x][i];
			y=fa[y][i];
		}
	return fa[x][0];
}
int cx(int l,int r)
{
	int s=lg[r-l+1];
	return lca(d[l][s],d[r-(1<<s)+1][s]);
}
const int p=1e9+7;
int main()
{
	freopen("traverse.in","r",stdin);
	freopen("traverse.out","w",stdout);
	int u,v,l,r,k,ans,c,T;
	scanf("%d%d",&c,&T);
	while(T--)
	{
		scanf("%d%d",&n,&k);	
		for(int i=1;i<n;i++)
			scanf("%d%d",&u,&v),link(u,v);
		for(int i=1;i<=n;i++)
			vis[i]=0;
		scanf("%d",&c);
		
		printf("%d\n",5);
	}
	
	return 0;
}
