#include <iostream>
using namespace std;
int main(){
	int n, m;
	int k[10], s[10][10], p[10];
	cin >> n >> m;
	for(int i = 0;i < m;i++){
		cin >> k[i];
		for(int j = 0;j < k[i];j++){
			cin >> s[i][j];
		}
	}
	for(int i = 0;i < m;i++){
		cin >> p[i];
	}
	int count;
	int count2 = 0;
	for(int i = 0;i < (1 << n);i++){
		for(int j = 0;j < m;j++){
			count = 0;
			for(int w = 0;w < k[j];w++){
				if((i >> (s[j][w] - 1)) % 2){
					count++;
				}
			}
			if((count - p[j]) % 2){
				break;
			}
			if(j == (m - 1)){
				count2++;
			}
		}
	}
	cout << count2 << endl;
}