#include<bits/stdc++.h>
using namespace std;
const int N=3e6+5;
int T,t[N][75],cnt,num[N],dfn[N];
inline void insert(string s){int rt=1;for(int i=0;i<s.size();i++) (dfn[t[rt][s[i]-'0']]==T+1?num[rt=t[rt][s[i]-'0']]++:(dfn[rt=t[rt][s[i]-'0']=++cnt]=T+1,num[rt]=1));}
inline int query(string s){int rt=1;for(int i=0;i<s.size();i++) rt=(dfn[t[rt][s[i]-'0']]==T+1)*t[rt][s[i]-'0'];return num[rt];}
int main()
{
ios::sync_with_stdio(false);cin.tie(0),cout.tie(0);
cin>>T;
while(T--)
{
int n,q;cin>>n>>q;cnt=1;
for(int i=1;i<=n;i++){string s;cin>>s;insert(s);}
while(q--){string s;cin>>s;cout<<query(s)<<"\n";}
}
return 0;
}