#include <bits/stdc++.h>
using namespace std;

vector<int> G[20];
bool visited[20];

vector<int> od;

void dfs(int v){
    visited[v] = true;
    for(int i = 0; i < G[v].size(); i++){
        if(!visited[G[v][i]]) dfs(G[v][i]);
    }
    od.push_back(v);
}

int main(){
    int m, n;
    cin >> m >> n;
    for(int i = 0; i < m; i++) visited[i] = false;
    for(int i = 0; i < n; i++){
        int a, b;
        cin >> a >> b;
        G[--b].push_back(--a);
    }
    dfs(1);
    for(int i = 0; i < od.size(); i++){
        cout << od[i]+1 << "\n";
    }
    return 0;
}