#include<bits/stdc++.h>
using namespace std;
map<int,int> mp;
signed main(){
	int t;
	cin>>t;
	while(t--){
		int n,k,u;
		cin>>n>>k;
		mp.clear();
		int ma=0,me=0;
		for(int i=1;i<=n;i++){
			cin>>u;
			mp[u]++;
			ma=max(ma,u);
		}
		while(mp.count(me)) me++;
		int ans=mp.size();
		
		if(me<ma&&k){
			int w=(me+ma+1)/2;
			if(mp[w]==0) ans++;
		}else{
			ans+=k;
		}
		cout<<ans<<endl;
	}
} 