#include #include #include using namespace std; using namespace atcoder; using mint = modint998244353; #define rep(i,n) for (int i = 0; i < (n); ++i) #define Inf32 1000000001 #define Inf64 4000000000000000001 void Gauss(vector> &B){ int now = 0; rep(i,1005){ int temp = -1; for(int j=now;j>n>>m; vector> b; { bitset<1005> t; rep(i,n)t[i] = 1; b.push_back(t); } rep(i,m){ bitset<1005> t; int l; cin>>l; rep(j,l){ int a; cin>>a; t[a-1] = 1; } b.push_back(t); rep(j,n)t[j].flip(); b.push_back(t); } Gauss(b); mint ans = 1; rep(i,b.size()){ if(b[i]==bitset<1005>())continue; ans *= 2; } cout<