Bobo 有一个包含 $n$ 个顶点和 $m$ 条边的二分图 $G = (V, E)$。他想选择一个顶点子集 $D$,使得对于每一个顶点 $v$,要么 $v$ 本身在 $D$ 中,要么 $v$ 的某个邻居在 $D$ 中。请找出 Bobo 可以选择的子集数量。
输入格式
第一行包含两个整数 $n, m$ ($1 \le n \le 30, 0 \le m \le 225$)。
接下来的 $m$ 行,第 $i$ 行包含两个整数 $a_i, b_i$,表示第 $a_i$ 个顶点和第 $b_i$ 个顶点之间有一条边 ($1 \le a_i, b_i \le n$)。
保证图中没有自环和重边。
输出格式
输出一个整数,表示 Bobo 可以选择的子集数量。
样例
输入格式 1
4 4 1 2 2 3 3 4 4 1
输出格式 1
11
输入格式 2
4 0
输出格式 2
1