#include <bits/stdc++.h>
using namespace std;
int nxt[30000];
map<pair<int, int>, int> e;
int main() {
  int n, m, i;
  scanf("%d %d", &n, &m);
  for (i = 0; i < m; i++) {
    int a, b;
    scanf("%d %d", &a, &b);
    a--;
    b--;
    e[pair<int, int>(a, b)]++;
  }
  for (i = 0; i < n; i++) nxt[i] = -1;
  int s = 0;
  for (i = 1; i < n; i++) {
    int p = s;
    if (e[pair<int, int>(i, p)] != 1) {
      s = i;
      nxt[i] = p;
      continue;
    }
    bool f = false;
    while (nxt[p] != -1) {
      int q = p;
      p = nxt[p];
      if (e[pair<int, int>(i, p)] != 1) {
        nxt[q] = i;
        nxt[i] = p;
        f = true;
        break;
      }
    }
    if (!f) nxt[p] = i;
  }
  while (s != -1) {
    printf("%d ", s + 1);
    s = nxt[s];
  }
  puts("");
  return 0;
}
