#include <bits/stdc++.h>
using namespace std;
int main() {
int N;
cin >> N;
while(N--){
int n,m;
cin >> n >> m;
int arr[n]={};
vector<int> vec[n];
int a,b;
while(m--){
cin >> a >> b;
vec[a].push_back(b);
arr[b]++;
}
priority_queue<int> pq;
for(int i=0;i<n;i++){
if(arr[i]==0){
pq.push(-i);
}
}
int check=0;
while(check==0){
if(pq.size()==0){
cout << "QAQ" << '\n';
break;
}
int k=-pq.top();
cout << k << ' ';
arr[k]=-1;
pq.pop();
for(int i=0;i<vec[k].size();i++){
arr[vec[k][i]]--;
if(arr[vec[k][i]]==0){
pq.push(-vec[k][i]);
}
}
int temp=0;
for(int i=0;i<n;i++){
if(arr[i]!=-1){
temp++;
break;
}
}
if(temp==0){
check=1;
}
}cout << '\n';
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpIHsKCWludCBOOwoJY2luID4+IE47Cgl3aGlsZShOLS0pewoJCWludCBuLG07CgkJY2luID4+IG4gPj4gbTsKCQlpbnQgYXJyW25dPXt9OwoJCXZlY3RvcjxpbnQ+IHZlY1tuXTsKCQlpbnQgYSxiOwoJCXdoaWxlKG0tLSl7CgkJCWNpbiA+PiBhID4+IGI7CgkJCXZlY1thXS5wdXNoX2JhY2soYik7CgkJCWFycltiXSsrOwoJCX0KCQkKCQlwcmlvcml0eV9xdWV1ZTxpbnQ+IHBxOwoJCWZvcihpbnQgaT0wO2k8bjtpKyspewoJCQlpZihhcnJbaV09PTApewoJCQkJcHEucHVzaCgtaSk7CgkJCX0KCQl9CgkJaW50IGNoZWNrPTA7CgkJd2hpbGUoY2hlY2s9PTApewoJCQlpZihwcS5zaXplKCk9PTApewoJCQkJY291dCA8PCAiUUFRIiA8PCAnXG4nOwoJCQkJYnJlYWs7CgkJCX0KCQkJaW50IGs9LXBxLnRvcCgpOwoJCQljb3V0IDw8IGsgPDwgJyAnOwoJCQlhcnJba109LTE7CgkJCXBxLnBvcCgpOwoJCQlmb3IoaW50IGk9MDtpPHZlY1trXS5zaXplKCk7aSsrKXsKCQkJCWFyclt2ZWNba11baV1dLS07CgkJCQlpZihhcnJbdmVjW2tdW2ldXT09MCl7CgkJCQkJcHEucHVzaCgtdmVjW2tdW2ldKTsKCQkJCX0KCQkJfQoJCQlpbnQgdGVtcD0wOwoJCQlmb3IoaW50IGk9MDtpPG47aSsrKXsKCQkJCWlmKGFycltpXSE9LTEpewoJCQkJCXRlbXArKzsKCQkJCQlicmVhazsKCQkJCX0KCQkJfQoJCQlpZih0ZW1wPT0wKXsKCQkJCWNoZWNrPTE7CgkJCX0KCQl9Y291dCA8PCAnXG4nOwoJfQp9