import java.util.Scanner;
import java.util.TreeSet;
import java.util.ArrayList;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        while (in.hasNextInt()) { // 注意 while 处理多个 case
            int ILength = in.nextInt();
            int[] IArr = new int[ILength];
            for (int i = 0; i < ILength; i++) {
                IArr[i] = in.nextInt();
            }
            int RLength = in.nextInt();
            int[] RArr = new int[RLength];
            for (int i = 0; i < RLength; i++) {
                RArr[i] = in.nextInt();
            }

            int[] newRArr = getRArr(RArr);

            ArrayList<String> output = new ArrayList<String>();

            output = getResult(IArr, newRArr);

            for (int i = 0; i < output.size(); i++) {
                if (i < output.size() - 1) {
                    System.out.print(output.get(i));
                    System.out.print(" ");
                } else {
                    System.out.print(output.get(i));
                }

            }

            // for (int i = 0; i < newRArr.length; i++) {
            //     System.out.print(newRArr[i]);
            //     System.out.print("  ");
            // }
            // System.out.print("\n");
            // for (int i = 0; i < IArr.length; i++) {
            //     System.out.print(IArr[i]);
            //     System.out.print("  ");
            // }

        }
    }

    //返回去重排序的R序列
    public static int[] getRArr(int[] input) {
        int length = input.length;
        TreeSet<Integer> TS = new TreeSet<Integer>();
        for (int i = 0; i < length; i++) {
            TS.add(Integer.valueOf(input[i]));
        }
        int size = TS.size();
        int[] result = new int[size];
        int n = 0;
        for (Integer i : TS) {
            result[n] = i.intValue();
            n++;
        }
        return result;
    }

    //输入IArr和去重排序后的RArr,返回目标ArrayList
    public static ArrayList<String> getResult(int[] I, int[] R) {
        ArrayList<String> result = new ArrayList<String>();
        int Ilength = I.length;
        int Rlength = R.length;
        for (int i = 0; i < Rlength; i++) {
            int count = 0;
            String Rnum = String.valueOf(R[i]);
            for (int j = 0; j < Ilength; j++) {
                String Inum = String.valueOf(I[j]);
                if (Inum.contains(Rnum)) {
                    if (count == 0) {
                        result.add(Rnum);
                        //System.out.println(Rnum);
                    }
                    count++;
                    result.add(String.valueOf(j));
                    result.add(Inum);
                }
            }
            if (count != 0) {
                result.add(result.size() - count * 2,
                           String.valueOf(count)); //插入符合个数
            }
        }

        result.add(0, String.valueOf(result.size()));

        return result;
    }


}