#include <bits/stdc++.h>
using namespace std;
int v, e;
vector<int> out[30005];
vector<int> ans;
bool vis[30005];
void dfstree(int n) {
  for (auto x : out[n]) {
    if (!vis[x]) {
      vis[x] = true;
      dfstree(x);
    }
  }
  ans.push_back(n);
}
int main() {
  cin >> v >> e;
  for (int i = 0; i < e; i++) {
    int x, y;
    cin >> x >> y;
    out[x].push_back(y);
  }
  for (int i = 1; i < v + 1; i++) {
    if (!vis[i]) {
      vis[i] = true;
      dfstree(i);
    }
  }
  for (auto x : ans) cout << x << " ";
  cout << '\n';
  ;
}
