#include<bits/stdc++.h>
using namespace std;
#define maxn 100005
vector<int> e[maxn];
priority_queue<int> q;
int n,m,x,y,T,idx=0;
int in[maxn],ans[maxn];
int main(){
cin >> T;
while(T--){
cin >> n >> m;
idx=0;
memset(ans,0,sizeof(ans));
memset(in,0,sizeof(in));
for(int i=1;i<=n;i++) e[i].clear();
for(int i=1;i<=n;i++){
cin >> x >> y;
e[y].push_back(x);
in[x]++;
}
for(int i=1;i<=n;i++)
if(in[x]==0){
q.push(i);
break;
}
while(!q.empty()){
int t=q.top();
q.pop();
ans[++idx]=t;
int s=e[t].size();
for(int i=0;i<s;i++){
int nt=e[t][i];
in[nt]--;
if(in[nt]==0)
q.push(e[t][i]);
}
}
if(idx<n) cout << "Impossible!";
else for(int i=n;i>=1;i--) cout << ans[i] << ' ';
cout << '\n';
}
return 0;
}