N = int(raw_input()) files = [] for i in xrange(N): files.append(map(int, raw_input().split())[1:]) Q = int(raw_input()) for q in xrange(Q): query = map(int, raw_input().split()) T, K = query[0], query[1] A = query[2:] sol = 0 if T == 1: for i in xrange(N): if len(set(A).intersection(files[i])) == K: sol += 1 elif T == 2: for i in xrange(N): if len(set(A).intersection(files[i])) >= 1: sol += 1 elif T == 3: for i in xrange(N): l = len(set(A).intersection(files[i])) if l >= 1 and l < K: sol += 1 print sol