#include <bits/stdc++.h>
using namespace std;
const int N = 30001;
vector<int> a[N];
int q, w, m, used[N], ans[N], n, i, k;
void dfs(int v) {
  used[v] = 1;
  for (int i = 0; i < a[v].size(); i++) {
    int to = a[v][i];
    if (!used[to]) dfs(to);
  }
  ans[m++] = v;
}
int main() {
  cin.tie(0);
  ios_base::sync_with_stdio(0);
  cin >> n >> m;
  for (i = 0; i < m; i++) {
    cin >> q >> w;
    a[w].push_back(q);
  }
  m = 0;
  for (i = 1; i <= n; i++)
    if (!used[i]) dfs(i);
  for (i = m - 1; i >= 0; i--) cout << ans[i] << " ";
}
