Bakhaveri

/problems/epc17.bakhaveri/file/statement/sv/img-0001.jpg
Pixabay, cc0
Osquar jobbar på Ericsson, men är inte så bra på att baka. Tyvärr har det nu blivit fredag och som det ofta görs på Ericsson ska en person i arbetslaget ta med sig fika till alla och den här fredagen är det Osquars tur.

När Osquar bakar ett bakverk gör han som följande. Han tar alla ingredienser som ska ingå i bakverket, blandar dem i sin stora bunke, häller ut smeten på en plåt och ställer in den i ugnen. (det är väl så man gör när man bakar?) Dock bryr han sig inte om att tvätta bunken mellan olika bakverk, så det riskerar finnas spår av andra ingredienser i bakverken än de ingredienser som faktiskt ska ingå. Detta är ett problem på grund av de preferenser som hans arbetslag har. Endast om ett bakverk är helt okontaminerat av andra ingredienser kan en kollega äta den.

Osquar har fått in $n$ preferenser från sina $n$ kollegor, som alla kommer innehålla
någon/några av $m$ ingredienser. Hjälp Osquar att hitta det maximala antalet godkända bakverk som Osquar kan baka till sitt arbetslag på Ericsson, givet att han själv får välja vilken ordning han bakar dem i och att bunken är ren från början.

Indata

På första raden finns två heltal $n$ och $m$, antalet bakverk respektive antalet ingredienser. Sedan följer $n$ rader, en för varje preferens, som innehåller ett heltal $k$ och sedan $k$ heltal $a_1...a_ k$, de ingredienser som ska ingå i bakverket.

$1 \leq n \leq 10^6$
$1 \leq k, m \leq 20$
$1 \leq a_ i \leq m$

Utdata

Förklaring av Exempel: Baka först bakverk 3, sedan bakverk 2. Bakverk 1 kan inte bakas om något av de andra bakverken har bakats, då bunken är kontaminerad med ingrediens 3, och om bakverk 1 har bakats kan inte heller någon av de andra bakverken bakas, då skålen är kontaminerad med ingrediens 1.

Sample Input 1 Sample Output 1
3 3
2 1 2
2 2 3
1 3
2