#include<iostream>
#include<string>
#include<vector>
#include <sstream>
#include<vector>
#include<algorithm>
#include<set>
using namespace std;


int main(int argc, char* argv[]){
    int val1,val2;
    while(cin >> val1){
        vector<int> Iarr;
        vector<int> Rarr;


        for(int i=0;i<val1;i++){
            int t;
            cin >> t;
            Iarr.push_back(t);
        }
    //    for(int i=0;i<val;i++){
    //        cout << Iarr[i] << " ";
    //    }
    //    cout << endl;
        cin >> val2;
        for(int i=0;i<val2;i++){
            int t;
            cin >> t;
            Rarr.push_back(t);
        }
    //    for(int i=0;i<val;i++){
    //        cout << Rarr[i] << " ";
    //    }
    //    cout << endl;
        sort(Rarr.begin(), Rarr.end());
        set<int> st(Rarr.begin(), Rarr.end());
        Rarr.assign(st.begin(), st.end());
        int total = 0;
        string str;
        for(int i=0;i<Rarr.size();i++){
            int num=0;
            string tmp;
            for(int j=0;j<Iarr.size();j++){
                if(to_string(Iarr[j]).find(to_string(Rarr[i]))!=string::npos){
                    num++;
                    tmp+=to_string(j)+' '+to_string(Iarr[j])+' ';
                }
            }
            if(num!=0){
                total+=(num*2+2);
                str+=to_string(Rarr[i])+' '+to_string(num)+' '+tmp;
            }
        }
        cout << to_string(total)+' '+str.substr(0,str.size()-1)<<endl;
    }

    return 0;
}