#include<bits/stdc++.h>
using namespace std;
int c,T,n,k,cnt,vis[150];
vector<int> a[150];
struct node{
	int a,b;
}m[150];
void dfs(int x)
{
	bool flag=0;
	for(int i=1;i<n;++i)
	{
		if(!vis[i]) flag=1;
	}
	if(flag==0)
	{
		cnt++;
		return;
	}
	for(auto i:a[x])
	{
		if(!vis[i]) 
		{
			vis[i]=1;
			dfs(i);
			vis[i]=0;
		}
	}
	return;
}
int main()
{
	ios::sync_with_stdio(false);
	freopen("query.in","r",stdin);
	freopen("query.out","w",stdout);
	cin>>c>>T;
	while(T--)
	{
		cin>>n>>k;
		for(int i=1;i<n;++i)
		{
			cin>>m[i].a>>m[i].b;
		}
//		for(int i=1;i<n;++i)
//		{
//			for(int j=1;j<n;++j)
//			{
//				if(m[i].a==m[j].b||m[i].a==m[j].a||m[i].b==m[j].b||m[i].b==m[j].a)
//				{
//					a[i].push_back(j);
//					a[j].push_back(i);
//				}
//			}
//		}
//		cnt=0;
//		dfs(k);
		cout<<n-1<<'\n';
	}
	return 0;
} 
