#pragma GCC optimize("Ofast") #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; typedef long long int ll; typedef unsigned long long ull; mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count()); ll myRand(ll B) { return (ull)rng() % B; } inline double time() { return static_cast(chrono::duration_cast(chrono::steady_clock::now().time_since_epoch()).count()) * 1e-9; } constexpr ll mod = 998244353; ll dp[1<<10][1<<10]; void add(ll &x,ll y){ x += y; if(x >= mod)x -= mod; } int main(){ cin.tie(nullptr); ios::sync_with_stdio(false); ll n,m,t; cin >> n >> m >> t; vector> g(n); for(int i=0;i> x >> y; g[x].push_back(y); g[y].push_back(x); } dp[0][0] = 1; for(int i=0;i