#include<bits/stdc++.h>
using namespace std;
int n,m,z,x,y,bj[100005]={0},maxx=0;
vector<int> a[100005];
void dfs(int k){
for(int i=0;i<a[k].size();i++){
if(!bj[a[k][i]]){
if(maxx<a[k][i])maxx=a[k][i];
bj[a[k][i]]=1;
dfs(a[k][i]);
}
}
}
int main(){
cin>>n>>m;
while(m--){
cin>>x>>y;
a[x].push_back(y);
}
for(int i=1;i<=n;i++){
maxx=i;
for(int j=0;j<100005;j++)bj[j]=0;
bj[i]=1;
dfs(i);
cout<<maxx<<" ";
}
return 0;
}