#include <bits/stdc++.h>
using namespace std ;
#define leng 100001
struct Edge{
int next ;
int dis ;
int to ;
}edge[leng];
int head[leng] , tot ;
int n , m , u[leng] , v[leng] ;
int jb[leng];
void add ( int from , int to , int dis );
int main ( ){
cin >> n >> m ;
for ( int i = 1 ; i <= m ; ++i ){
cin >> u[i] >> v[i] ;
add(v[i] , u[i] , 0 );
}
for ( int i = 1 ; i <= n ; ++i ){
jb[i] = i ;
}
for ( int k = n ; k >= 1 ; --k ){
for ( int i = head[k] ; i ; i = edge[i].next){
if ( jb[k] > jb[edge[i].to] ){
jb[edge[i].to] = jb[k] ;
}
}
}
for ( int i = 1 ; i <= n ; ++i ){
cout << jb[i] << " ";
}
return 0 ;
}
void add ( int from , int to , int dis ){
edge[++tot].next = head[from];
edge[tot].to = to ;
edge[tot].dis = dis;
head[from] = tot;
}