405027 - 菜肴制作

有 n 道菜,编号 1 ∼ n,编号越小质量越高。给定 m 条限制 (i, j),表示 i 必须先于 j 制作。 求一个最优制作顺序,使得:

1.满足所有限制的前提下,1 号尽量靠前;

2.在满足第 1 条的前提下,2 号尽量靠前; 3.在满足前两条的前提下,3 号尽量靠前; 依此类推。即:编号小的菜尽量先做。

输入

第一行是一个正整数 t,表示数据组数。接下来是 t 组数据。对于每组数据:第一行两个用空格分开的正整数 n 和 m(n, m ≤ 10^5),分别表示菜肴数目和制作顺序限制的条目数。接下来 m 行(m 条限制中可能存在完全相同的限制),每行两个正整数 x, y,表示 x 号菜肴必须先于 y 号菜肴制作的限制。

输出

输出仅包含 t (1 ≤ t ≤ 3)行,每行 n 个整数,表示最优的菜肴制作顺序,或者 Impossible! 表示无解。

样例

输入

3
5 4
5 4
5 3
4 2
3 2
3 3
1 2
2 3
3 1
5 2
5 2
4 3

输出

1 5 3 4 2 
Impossible! 
1 5 2 4 3

提示

第二组数据同时要求菜肴 1 先于菜肴 2 制作,菜肴 2 先于菜肴 3 制作,菜肴 3 先于菜肴 1 制作,而这是无论如何也不可能满足的,从而导致无解。

时间限制 1 秒
内存限制 128 MB
统计
上一题 下一题