아주 먼 미래, 사람들이 가장 많이 이용하는 대중교통은 하이퍼튜브이다. 하이퍼튜브 하나는 $K$개의 역을 서로 직접 연결한다. 즉, 같은 하이퍼튜브에 속한 두 역 사이는 한 번의 이동으로 오갈 수 있다. $1$번 역에서 출발하여 $N$번 역에 도착할 때, 방문하는 역의 최소 개수를 구하여라. (출발역과 도착역도 방문한 역으로 센다.)
첫째 줄에 역의 수 $N$, 하이퍼튜브 하나가 연결하는 역의 개수 $K$, 하이퍼튜브의 개수 $M$이 주어진다. ($1 \le N \le 100000$, $1 \le K, M \le 1000$)
다음 $M$개의 줄에는 각 하이퍼튜브의 정보가 한 줄에 하나씩 주어진다. 각 줄에는 $K$개의 정수가 주어지며, 이는 그 하이퍼튜브가 서로 연결하는 역의 번호이다.
첫째 줄에 $1$번 역에서 $N$번 역까지 가는 동안 방문하는 역의 최소 개수를 출력한다. 도달할 수 없으면 $-1$을 출력한다.