Уникнення Розділів
Розбиття множини S = {1, 2, ..., n} — це колекція множин P = {P_1, P_2, ..., P_k}, така що об'єднання всіх P_i дорівнює S, і жодні дві множини P_i та P_j не перетинаються, тобто P_i ∩ P_j = ∅ для i≠j. Наприклад, для n = 5 можливе розбиття: P_1 = {1, 3}, P_2 = {2, 4, 5}.
Розбиття вважається таким, що уникає множини Q, якщо жодна з множин P_i не містить Q як підмножину. Наприклад, наведене вище розбиття уникає множин {1, 2} та {3, 4}, але не уникає {1, 3} та {2}.
Дано n та колекцію множин Q_1, Q_2, ..., Q_l. Потрібно знайти кількість розбиттів множини S, які уникають кожної з множин Q_i.
Вхідні дані
Перший рядок вхідного файлу містить два цілі числа n та l (1 ≤ n ≤ 100, 0 ≤ l ≤ 10). Наступні l рядків описують множини, яких слід уникати. Кожен рядок починається з одного цілого числа q_i - розміру множини, за яким слідують q_i чисел - елементів множини.
Вихідні дані
Вивести одне ціле число - кількість розбиттів, які уникають кожної з Q_i.