#include <bits/stdc++.h>
using namespace std;
int i, j, m, n, s, t, ans, v, k[11], p[11], b[11][11];
int f() {
  int w = 0;
  for (j = 0; j < k[i]; j++) w += ((1 << b[i][j] - 1) & s) > 0;
  return w % 2 == p[i];
}
int main() {
  cin >> n >> m;
  for (; i < m; i++)
    for (cin >> k[i], j = 0; j < k[i]; j++) cin >> b[i][j];
  for (i = 0; i < m; i++) cin >> p[i];
  for (t = 1 << n; s < t; s++) {
    for (i = v = 0; i < m; i++) v += f();
    ans += (v == m);
  }
  cout << ans << endl;
}
