#include<bits/stdc++.h>
#include<vector>
using namespace std;
int a[100005];
vector<int> v[100005];
int dfs(int ui)
{
if(a[ui] != 0) return a[ui];
a[ui] = ui;
if(v[ui].size() == 0) return a[ui];
for(int i=0;i<v[ui].size();i++)
{
if(a[v[ui][i]] != 0) a[ui] = max(a[ui],a[v[ui][i]]);
else a[ui] = max(a[ui],dfs(v[ui][i]));
}
return a[ui];
}
int main(){
int n,m,ui,vi; cin>>n>>m;
for(int i=1;i<=m;i++)
{
cin>>ui>>vi;
v[ui].push_back(vi);
}
for(int i=1;i<=n;i++)
{
dfs(i);
cout<<a[i]<<" ";
}
return 0;
}