여러 대의 로봇이 한 구역 안을 돌아다니면서 자기 위치를 서버로 보낸다. 서버는 로봇이 보낸 위치의 흐름만 받아 보고, 구역 안에 로봇이 몇 대 있는지 알아내야 한다.
구역은 닫힌 다각형이고, 서로 겹치지 않는 영역 1,…,N으로 나뉘어 있다. 모든 로봇은 처음에 영역 1에 있다가 움직이기 시작한다. 로봇은 지금 있는 영역과 인접한 영역으로만 이동하고, 새 영역에 들어갈 때마다 그 영역의 번호를 서버로 보낸다. 한 로봇이 같은 영역을 여러 번 드나들어도 된다.
서버는 영역 번호가 길게 이어진 스트림 하나를 받는다. 각 번호를 어느 로봇이 보냈는지는 알 수 없다.

모든 로봇이 영역 번호를 적어도 한 번은 보냈다고 하자. 이런 스트림을 만들어 낼 수 있는 로봇 수의 최솟값과 최댓값을 구하라.
입력은 여러 개의 테스트 케이스로 이루어진다. 각 테스트 케이스의 첫 줄에는 영역의 수 N (1≤N≤100)과 서버가 받은 스트림의 길이 M (1≤M≤200)이 주어진다. 이어지는 N개의 줄 중 i번째 줄은 영역 i를 설명한다. 각 줄은 영역 i와 인접한 영역의 수 ci로 시작하고, 그 뒤에 인접한 영역의 번호가 ci개 온다. 그다음 줄에는 서버가 받은 순서 그대로 영역 번호 M개가 주어진다. 입력은 0 0만 있는 줄로 끝난다.
주어지는 스트림은 항상 어떤 로봇 무리가 실제로 만들어 낼 수 있는 스트림이다.
각 테스트 케이스마다 구역 안에 있을 수 있는 로봇 수의 최솟값과 최댓값을 공백으로 구분해 한 줄에 출력한다.