#include<bits/stdc++.h>
using namespace std;
const int N=15;
int n,m,k[N],s[N][N],p[N],ans;
int main()
{
    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];
    for(int i=0;i<1<<n;i++){
        int v=0;
        for(int j=0;j<m;j++){
            int sum=0;
            for(int l=0;l<k[j];l++)sum+=((1<<(s[j][l]-1))&i)>0;
            // cout<<i<<" "<<j<<" "<<sum<<" "<<p[j]<<endl;
            v+=(sum%2)==p[j];
        }
        ans+=v==m;
    }
    cout<<ans<<endl;
    return 0;
}