#include<bits/stdc++.h>
using namespace std;
int n,m;
vector<int> v[100010];
bool b[100010];
int ans=0;
int dfs(int x)
{
b[x]=1;
ans=max(ans,x);
for(int i=0;i<v[x].size();i++)
{
if(b[v[x][i]]==0)
{
if(v[x][i]>ans) ans=v[x][i];
b[v[x][i]]=1;
ans=max(ans,dfs(v[x][i]));
}
}
return ans;
}
int main()
{
cin>>n>>m;
for(int i=1;i<=m;i++)
{
int x,y;
cin>>x>>y;
v[x].push_back(y);
}
for(int i=1;i<=n;i++)
{
memset(b,0,sizeof(b));
ans=0;
cout<<dfs(i)<<" ";
}
cout<<endl;
return 0;
}