QOJ.ac

QOJ

Time Limit: 7.5 s Memory Limit: 1024 MB Total points: 100

#13329. Counting Cactus (Hard version)

统计

This is a harder version of Counting Cactus from 300iq Contest 2.

NEERC featured a number of problems about cactuses: connected undirected graphs in which every edge belongs to at most one simple cycle. Intuitively, a cactus is a generalization of a tree where some cycles are allowed. An example of a cactus from NEERC 2007 problem is given on the picture below.

problem_13329_1.png

Dreamoon has an undirected graph. Now he is wondering, how many subgraphs (subsets of edges) of his graph are cactuses? Can you help him find this value modulo $998\,244\,353$?

Input

The first line contains two integers $n$ and $m$: the number of vertices and edges in the Dreamoon's graph ($1 \le n \leq {\color{red}{\mathbf{18}}}$, $0 \leq m \leq \frac{n(n-1)}{2}$).

The next $m$ lines describe edges in the graph. The $i$-th of these lines contains two integers $a_i$ and $b_i$ ($1 \le a_i, b_i \le n$, $a_i \neq b_i$), denoting an edge between vertices $a_i$ and $b_i$. It is guaranteed that there are no multiple edges.

Output

Output one integer: the number of cactus subgraphs of Dreamoon's graph, modulo $998\,244\,353$.

Examples

Input

3 3
1 2
2 3
3 1

Output

4

Input

5 0

Output

0

Input

8 9
1 5
1 8
2 4
2 8
3 4
3 6
4 7
5 7
6 8

Output

35

Notes

  • $1\le n\le {\color{red}{\mathbf{18}}}$
  • $0\le m\le \frac{n(n-1)}2$
  • $u\neq v, 1\le u, v\le n$; there are no multiple edges.

Subtasks:

  • ($16$ points) $n\le 5$
  • ($20$ points) $n\le 7$
  • ($14$ points) $n\le 10$
  • ($20$ points) $n\le 13$
  • ($10$ points) $n\le 16$
  • ($20$ points) No additional constraints

Discussions

About Discussions

The discussion section is only for posting: Editorials, General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues. Submitting multiple issues may cause your account to be banned.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.