#include<bits/stdc++.h>
using namespace std;
const int N = 1e4 + 10;
int a[1000000],b[N];
int nex[N];
void GetNext(int *x,int len)
{
//int len = s.lengt();
nex[0] = -1;
for(int i = 1,j = -1;i < len;i++)
{
while(j >= 0 && x[i] != x[j+1]) j = nex[j];
if(x[i] == x[j+1]) ++j;
nex[i] = j;
}
}
int kmp(int *x,int *y,int l1,int l2)
{
//int l1 = s1.length(),l2 = s2.length();
int pos = -1;
for(int i = 0,j = -1; i < l1;i++)
{
while(j >= 0 && (j == l2 - 1 || x[i] != y[j+1]))
j = nex[j];
if(x[i] == y[j+1])
++j;
if(j == l2 - 1)
{
pos = i - l2 + 2;
break;
}
}
return pos;
}
int main()
{
int t,n,m;
scanf("%d",&t);
while(t--)
{
scanf("%d%d",&n,&m);
for(int i = 0;i < n;i++)
scanf("%d",&a[i]);
for(int j = 0;j < m;j++)
scanf("%d",&b[j]);
GetNext(b,m);
int ans = kmp(a,b,n,m);
printf("%d\n",ans);
}
return 0;
}