#include #include using namespace std; using u64 = uint64_t; u64 ux = time(NULL); u64 gen() { ux = ux * 0x5d588b656c078965 + 0x269ec3; return ux; } int main(void) { int N, M; scanf("%d%d", &N, &M); vector> G(N, vector()); for(int i=0; i col(N); vector> dp; for(int loop=0; loop<300; ++loop) { for(int i=0; i(gen() % 5); } dp.assign(N, vector(1<<5, false)); dp[0][0] = true; for(int S0=0; S0<1<<5; ++S0) { for(int u=0; u> col[v] & 1) { continue; } dp[v][S0|(1<