#include <bits/stdc++.h>
using namespace std;
int gcd(int a,int b){
return b==0?a:gcd(b,a%b);
}
pair<int,int> add(pair<int,int> &a,pair<int,int> &b){
int c=a.second*b.second;
int d=a.first*b.second+b.first*a.second;
int e=gcd(c,d);
return {d/e,c/e};
}
void solve(){
int n1,n2;
cin>>n1>>n2;
set <pair<int,int> > stt;
stt.insert({0,1});
vector < pair<int,int> > arr1;
arr1.push_back({0,1});
while(n1--){
int a,b;cin>>a>>b;
pair<int,int> nn;nn.first=a,nn.second=b;
if(n1!=0){
pair<int,int> temp=arr1.back();
pair<int,int> it=add(temp,nn);
arr1.push_back(it);
stt.insert(it);
}
}
int ans=1;
vector <pair<int,int> > arr2;
arr2.push_back({0,1});
while(n2--){
int a,b;cin>>a>>b;
pair<int,int> nn;nn.first=a,nn.second=b;
if(n1!=0){
pair<int,int> temp=arr1.back();
pair<int,int> it=add(temp,nn);
arr1.push_back(it);
if(stt.find(it)!=stt.end()){
ans++;
}
}
}
cout<<ans<<endl;
}
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
int t;cin>>t;
while(t--){
solve();
}
}