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

import java.util.*;
public class Subsequence1
{
	public static void main(String[] args)
	{
	    Scanner sc = new Scanner(System.in);
        int t = sc.nextInt();
		for(int i=1;i<=t;i++)
		{
		   int m = sc.nextInt();
		   int n = sc.nextInt();
		   Vector<Integer> a = new Vector<Integer>(m);
		   Vector<Integer> b = new Vector<Integer>(n);
		   for(int j=0;j<m;j++)
		   {
			   a.insertElementAt(sc.nextInt(),j);
		   }
		   for(int j=0;j<n;j++)
		   {
			   b.insertElementAt(sc.nextInt(),j);
		   }
		   Collections.sort(a);
		   Collections.sort(b);
		   /*
		   for(int j=0;j<a.size();j++)
		   {
			   for(int k=j+1;k<a.size();k++)
			   {
				   if(a.elementAt(j)!=0 && a.elementAt(k)!=0 && a.elementAt(j)==a.elementAt(k))
				   {
					  Collections.replaceAll(a,a.elementAt(j),0); 				   
				   }   
			   }   
		   }
           for(int j=0;j<b.size();j++)
		   {
			   for(int k=j+1;k<b.size();k++)
			   {
				   if(b.elementAt(j)!=0 && b.elementAt(k)!=0 && b.elementAt(j)==b.elementAt(k))
				   {
					  Collections.replaceAll(b,b.elementAt(j),0); 				   
				   }   
			   }   
		   }
           System.out.println("a:"+a+" b:"+b);	
           */		   
		   int count=0,no=0;
           for(int j=0;j<a.size();j++)
		   {
            for(int k=0;k<b.size();k++)
			{
				if(a.elementAt(j)==b.elementAt(k))
				{
					count += 1;
					no = a.elementAt(j);
				}	
			}
		   }	
           System.out.println(count==0?"NO":"YES"+"\n"+"1 "+no);		   
		}
	}
}