#include <bits/stdc++.h>
using namespace std;
int N, M;
vector<bool> V;
vector<vector<int>> A;
void Go(int u) {
  if (V[u]) return;
  V[u] = true;
  for (int v : A[u]) {
    Go(v);
  }
  printf("%d ", u + 1);
}
int main() {
  scanf("%d%d", &N, &M);
  V = vector<bool>(N);
  A = vector<vector<int>>(N);
  for (int i = 0; i < M; ++i) {
    int u, v;
    scanf("%d%d", &u, &v);
    A[u - 1].push_back(v - 1);
  }
  for (int i = 0; i < N; ++i) {
    Go(i);
  }
  printf("\n");
  return 0;
}
