while True:
try:
I = input().split() //将输入的字符分隔,变成列表
I_str = I[1:]//取数量后面的全部数据
R = input().split()
R_str = sorted(list(map(int,set(R[1:]))))//将列表变成无重复数据集合,然后map成int类型的列表,再进行排序
re={}//空字典备用
for r in R_str://遍历R_str
count = 0//每一个r需要单独记录含有的数的个数总和
u=[]//每一个r遍历后的结果做一个列表,所以每一次需要从空列表开始
for x in range(len(I_str))://取下标数
if str(r) in I_str[x]://判断r是否在当前I_str的字符串中存在
count+=1//存在,就个数加1
u.append(x)//将位置索引存在列表中
u.append(I_str[x])//将字符串也存在列表中
else:
continue//不存在就继续循环查看下一个
if count != 0 ://如果有与r相同的就记录,没有就不记录
re[r] = {count:u}
out = []
for a in re:
out.append(a)//取出r
for b in re[a]:
out.append(b)//取出含有r字符串的个数
for c in re[a][b]:
out.append(c)//取出所有含有r的字符串
print(len(out),' '.join([str(j) for j in out]))//遍历取出数据
except:
break