N, M = map(int, input().split())
K = [[] for i in range(M)]
for i in range(M):
    k = list(map(int, input().split()))
    K[i] = k[1:]
 
P = list(map(int, input().split()))

ans = 0
for i in range(1, 2 ** N):
    switch = [0] * M
    for j in range(N):
        if (i >> j) & 1: # bitチェック、1桁目が1かどうか、1ならスイッチがオン
            for l in range(M):
                if j + 1 in K[l]: # j+1番のスイッチがオンだがl番の電球につながっているか？
                    switch[l] += 1 # l番目の電球につながっているスイッチがオンの数
     
    for j in range(M):
        if switch[j] % 2 != P[j]:
            break 
    else:
        ans += 1
            
print(ans)