제페토의 피자

호환되지 않는 재료 쌍을 하나도 포함하지 않는 부분집합 개수를 빈 피자를 포함하여 셉니다.

보통4완전 탐색비트 연산면접 대비아직 제출이 없습니다시간 제한1초메모리 제한64 MB

문제

제페토는 마을에서 가장 좋은 피자 가게를 열었다. 피자에 올릴 수 있는 재료는 11번부터 NN번까지 번호가 붙어 있고, 제페토는 이 재료 중 원하는 것만 골라 피자 하나를 만든다.

문제는 서로 섞이지 않는 재료다. 같은 피자에 함께 올릴 수 없는 재료 쌍이 MM개 있다. 이 쌍에 속한 두 재료를 한 피자에 동시에 올리면 안 된다.

제페토가 만들 수 있는 서로 다른 피자가 몇 가지인지 구하라. 어떤 재료 ii가 한쪽 피자에는 올라가 있고 다른 쪽에는 없으면 두 피자는 서로 다르다. 재료를 하나도 올리지 않은 피자도 한 가지로 센다.

입력

첫째 줄에 정수 NNMM이 공백으로 구분되어 주어진다. (1N201 \le N \le 20, 0M4000 \le M \le 400)

다음 MM개 줄에는 각각 서로 다른 두 정수 aabb가 주어진다. (1a,bN1 \le a, b \le N) 재료 aa와 재료 bb를 같은 피자에 올릴 수 없다는 뜻이다. 같은 쌍이 여러 번 주어질 수 있다.

출력

첫째 줄에 제페토가 만들 수 있는 서로 다른 피자의 개수를 출력한다.