입력은 여러 개의 테스트 케이스로 이루어진다. 각 테스트 케이스의 첫 줄에는 교차로의 수 N과 도로의 수 M이 공백 하나로 구분되어 주어진다(2≤N≤2000, 2≤M≤N(N−1)/2). 이어지는 M개의 줄에는 도로 하나의 정보가 정수 세 개 V, W, P로 공백 하나씩 구분되어 주어진다. V와 W는 서로 다른 교차로 번호이고(1≤V,W≤N, V=W), P는 1 또는 2이다. P가 1이면 그 도로는 V에서 W로만 갈 수 있는 일방통행이다. P가 2이면 그 도로는 V와 W를 양방향으로 잇는다. 같은 두 교차로를 잇는 도로가 두 개 이상 주어지는 경우는 없다.
마지막 테스트 케이스 다음 줄에는 공백으로 구분된 0 두 개만 주어진다. 이 줄은 처리하지 않는다.