#include<bits/stdc++.h>
using namespace std;
const int maxn = 1e5 + 5;
int n, m, ans;
bitset<maxn> vis, g[maxn];
void T(int k){
ans = max(ans, k);
vis.set(k);
for(int i = 1; i <= n; ++i){
if(g[k][i] and !vis[i])
T(i);
}
}signed main(){
scanf("%d%d", &n, &m);
for(int i = 1; i <= m; ++i){
int u, v;
scanf("%d%d", &u, &v);
g[u].set(v);
}for(int i = 1; i <= n; ++i){
ans = 0;
vis.reset();
T(i);
printf("%d ", ans);
}return 0;
}