#include<bits/stdc++.h>
using namespace std;
int main()
{
int jack;
cin>>jack;
while(jack--)
{
int a,b;
cin>>a>>b;
vector<int>v(a);
vector<int>v1(b);
for(int i=0;i<a;i++)
{
cin>>v[i];
}
for(int i=0;i<b;i++)
{
cin>>v1[i];
}
int u=a+b;
vector<int>k;
for(int i=0;i<a;i++)
{
k.push_back(v[i]);
}
for(int i=0;i<b;i++)
{
k.push_back(v1[i]);
}
sort(k.begin(),k.end());
int h=0;
for(int i=0;i<k.size();i++)
{
if(k[i]==k[i+1]-1 || k[i]==k[i+1])
h++;
}
cout<<h+1<<"\n";
}
}
ICNpbmNsdWRlPGJpdHMvc3RkYysrLmg+CiB1c2luZyBuYW1lc3BhY2Ugc3RkOwogCiBpbnQgbWFpbigpCiB7CiAJaW50IGphY2s7CiAJY2luPj5qYWNrOwogCXdoaWxlKGphY2stLSkKIAl7CiAJCWludCBhLGI7CiAJCWNpbj4+YT4+YjsKIAkJdmVjdG9yPGludD52KGEpOwogCQl2ZWN0b3I8aW50PnYxKGIpOwogCQlmb3IoaW50IGk9MDtpPGE7aSsrKQogCQl7CiAJCQljaW4+PnZbaV07CiAJCX0KIAkJZm9yKGludCBpPTA7aTxiO2krKykKIAkJewogCQkJY2luPj52MVtpXTsKIAkJfQogCQlpbnQgdT1hK2I7CiAJCXZlY3RvcjxpbnQ+azsKIAkJIGZvcihpbnQgaT0wO2k8YTtpKyspCiAJCXsKIAkJCSBrLnB1c2hfYmFjayh2W2ldKTsKIAkJfQogCQkgCQlmb3IoaW50IGk9MDtpPGI7aSsrKQogCQl7CiAJCQkgay5wdXNoX2JhY2sodjFbaV0pOwogCQl9CiAJCXNvcnQoay5iZWdpbigpLGsuZW5kKCkpOwogCQlpbnQgaD0wOwogCQlmb3IoaW50IGk9MDtpPGsuc2l6ZSgpO2krKykKIAkJewogCQkJaWYoa1tpXT09a1tpKzFdLTEgfHwga1tpXT09a1tpKzFdKQogCQkJaCsrOwogCQl9CiAJCWNvdXQ8PGgrMTw8IlxuIjsKIAl9CiB9