#include<bits/stdc++.h>
using namespace std;

int main(){
    ll n,m,k,c=0,a=0;
    cin>>n>>m;
    vector<vector<ll>> s(m);
    for(ll i=0;i<m;i++){
        cin>>k;
        s[i].resize(k);
        for(ll j=0;j<k;j++){
            cin>>s[i][j];
            s[i][j]--;
        }
    }
    vector<ll> p(m);
    for(ll i=0;i<m;i++) cin>>p[i];
    for(ll i=0;i<(1<<n);i++){
        for(ll j=0;j<m;j++){
            for(auto sw:s[j]){
                if((i>>sw)&1) c++;
            }
            if(c%2!=p[j]) break;
            if(j==m-1) a++;
            c=0;
        }
    }
    cout<<a<<endl;
    return 0;
}