#include using namespace std; long long mod = 998244353; //入力が必ずmod未満の時に使う. struct mint{ long long v = 0; mint(){} mint(int a){v = a;} mint(long long a){v = a;} mint(unsigned long long a){v = a;} long long val(){return v;} void modu(){v %= mod;} mint repeat2mint(const long long a,long long b){ mint ret = 1,p = a; while(b){ if(b&1) ret *= p; p *= p; b >>= 1; } return ret; }; mint operator+(const mint b){return mint(v)+=b;} mint operator-(const mint b){return mint(v)-=b;} mint operator*(const mint b){return mint(v)*=b;} mint operator/(const mint b){return mint(v)/=b;} mint operator+=(const mint b){ v += b.v; if(v >= mod) v -= mod; return *this; } mint operator-=(const mint b){ v -= b.v; if(v < 0) v += mod; return *this; } mint operator*=(const mint b){v = v*b.v%mod; return *this;} mint operator/=(mint b){ if(b == 0) assert(false); int left = mod-2; while(left){if(left&1) *this *= b; b *= b; left >>= 1;} return *this; } mint operator++(int){*this += 1; return *this;} mint operator--(int){*this -= 1; return *this;} bool operator==(const mint b){return v == b.v;} bool operator!=(const mint b){return v != b.v;} bool operator>(const mint b){return v > b.v;} bool operator>=(const mint b){return v >= b.v;} bool operator<(const mint b){return v < b.v;} bool operator<=(const mint b){return v <= b.v;} mint pow(const long long x){return repeat2mint(v,x);} mint inv(){return mint(1)/v;} }; vector> multima(vector> &A,vector> &B){ int siza = A.size(),sizb = B.at(0).size(); vector> ret(siza,vector(sizb)); for(int i=0; i> N >> M >> X; int Limit = M; vector inv(Limit+1,1); for(int i=2; i<=Limit; i++) inv.at(i) = mod-(mod/i*inv.at(mod%i) %mod); vector> edge(N,vector(N)); while(M--){ int u,v; cin >> u >> v; u--; v--; edge.at(u).at(v)++; if(u != v) edge.at(v).at(u)++; } int n = (N+1)*N; vector> Z(n,vector(n)),A(n,vector(1)); for(int i=0; i<=N; i++) for(int k=0; k now = edge.at(k); if(i < N){ now.at(i)--; if(now.at(i) < 0) continue; } int pos = i*N+k,all = 0; for(auto &e : now) all += e; if(all == 0) Z.at(n-N+k).at(pos) = 1; else for(int l=0; l>= 1; } vector answer(N); for(int i=0; i<=N; i++) for(int k=0; k