#include <iostream>
#include <string>
#include <sstream>
#include <algorithm>
#include <vector>
#include <utility>
#include <functional>
#include <stack>
#include <queue>
#include <map>
#include <set>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <deque>
 
using namespace std;
 
#define REP(i,s,e) for(int i=(s); i<(int)(e); i++)
#define rep(i,n) REP(i,0,(n))
#define pb(n) push_back(n)
#define mp(n,m) make_pair(n, m)
#define all(r) r.begin(),r.end()
#define fi first
#define se second
#define println(X) cout<<X<<endl;
 
 
typedef long long ll;
typedef vector<int> vi;
typedef vector<vi> vii;
typedef vector<ll> vl;
typedef vector<vl> vll;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;

const int INF = 1e9;

int m, n, x, y;
int d[25][25];
vi ans;

bool check(){
	for(int i = 0; i < m; i++){
		for(int j = i+1; j < m; j++){
			if(d[ans[j]][ans[i]]){
				x= i; y = j;
				return true;;
			}
		}
	}
	return false;
}

int main(){
	cin>>m>>n;
	rep(i, n){
		cin>>x>>y;
		d[x][y]=1;
	}
	rep(i, m){
		ans.pb(i+1);
	}
	while(check()){
		swap(ans[x], ans[y]);
	}
	for(int i = 0; i < m; i++){
		cout<<ans[i]<<endl;
	}
}