탐욕스러운 농부들

아직 제출이 없습니다시간 제한1초메모리 제한128 MB

문제

바이트랜드의 여러 나라가 통합하여 '바이트 국가 연합'을 만들기로 했다. 그 첫 번째 정책 중 하나는 농업에 대한 직접 보조금 제도이다. 모든 농부는 자신이 소유한 농장의 크기를 나타내는 자연수를 하나 받고, 이 수가 곧 받게 될 보조금의 크기를 결정한다.

불평등을 줄이기 위해 의회는 00부터 시작하여 가장 작은 수를 가진 농부에게 가장 많은 보조금을 주기로 했다. 이렇게 하면 모든 농부가 값 00을 차지하려 하므로 다음 규칙이 추가되었다. 각 농부에게는, 그가 고용한 농부들에게 배정된 모든 수와 다른 가장 작은 자연수를 배정해야 한다.

그런데 어떤 구성에서는 이러한 배정을 유일하게 만들 수 없거나 아예 만들 수 없는 경우가 있다. 이런 경우를 위해 무한대라는 값을 추가로 사용한다. 농부 XX는, XX가 고용한 어떤 농부 YY 역시 무한대를 배정받았고, 그 YY가 고용한 농부들 중 어느 누구도 XX가 차지하고 싶어 하는 유한한 값을 배정받지 않은 경우에 한해 무한대를 배정받을 수 있다. 정부는 최종 배정에 무한대가 가능한 한 많이 포함되기를 원하며, 이 조건을 만족하는 배정은 유일하다.

이 배정을 계산하는 프로그램을 작성하여라. 값이 무한대인 농부에 대해서는 1-1을 출력한다.

입력

첫째 줄에 테스트 케이스의 수 tt (1t1001 \le t \le 100)가 주어진다. 이어서 tt개의 테스트 케이스가 주어진다.

각 테스트 케이스의 첫 줄에는 두 정수 nnmm (1n1001 \le n \le 100, 0m<100000 \le m < 10000)이 주어지며, 각각 농부의 수와 그들 사이의 고용 관계의 수를 의미한다. 농부는 11번부터 nn번까지 번호가 매겨져 있다.

다음 mm개의 줄에는 각각 두 정수 aabb (1a,bn1 \le a, b \le n)가 주어지며, 이는 농부 aa가 농부 bb를 고용함을 의미한다.

출력

각 테스트 케이스마다 nn개의 줄을 출력한다. 그중 ii번째 줄에는 농부 ii에게 배정된 값을 출력한다. 그 값이 무한대이면 대신 1-1을 출력한다.