1
2 2
1 1
1 2
 1
1 3
3
1 2 3
 1
1 1
1000
1000
 1
2 2
2 2
2 2
 5
4 5
10 8 6 4
1 2 3 4 5
1 1
3
3
1 1
3
2
5 3
1000 2 2 2 3
3 1 5
5 5
1 2 3 4 5
1 2 3 4 5
 1
4 4
1 1 1 1
1 2 3 4
 1
2 3
1 1
1 2 3

YES
1 1
 YES
1 3
 YES
1 1000
 YES
1 2
 YES
1 4
YES
1 3
NO
YES
1 3
YES
1 1
 YES
1 1
 YES
1 1

def serch(b,a,n):
	start = 0
	end = n-1
	while start <= end:
		mid = (end+start)//2
		if b[mid] == a:
			return mid 
		elif b[mid] > a:
			end = mid -1
		else:
			start = mid+1
	return "no"
for i in range(int(input())):
	n,m = map(int,input().split())
	a = list(map(int,input().split()))
	b = sorted(list(map(int,input().split())))
	i = 0
	while i < n:
		t = serch(b,a[i],m)
		if t != "no":
			print("YES")
			print("1",a[i])
			break
		i+=1
	else:
		print("NO")
