#include "bits/stdc++.h"
using namespace std;
#define ll long long
#define ld long double
#define N 1000000
const ll MOD = 1e9 + 7;
ll i, j, k, n, m, u, v;
vector<ll> adj[N];
ll vis[N] = {0};
bool cycle = false;
vector<ll> ans;
void dfs(ll x)
{
vis[x] = 1;
for (auto it : adj[x])
{
if (!vis[it])
dfs(it);
else if (vis[it] == 1)
cycle = true;
}
vis[x] = 2;
ans.push_back(x);
}
void top_sort(ll n)
{
for (i = 1; i <= n; i++)
{
if (!vis[i])
dfs(i);
}
reverse(ans.begin(), ans.end());
}
signed main()
{
ios::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
cin >> n >> m;
for (i = 0; i < m; i++)
{
cin >> u >> v;
adj[u].push_back(v);
}
top_sort(n);
if (cycle)
cout << "Sandro fails.";
else
{
for (auto it : ans)
cout << it << ' ';
cout << '\n';
}
}
I2luY2x1ZGUgImJpdHMvc3RkYysrLmgiCnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgojZGVmaW5lIGxsIGxvbmcgbG9uZwojZGVmaW5lIGxkIGxvbmcgZG91YmxlCiNkZWZpbmUgTiAxMDAwMDAwCmNvbnN0IGxsIE1PRCA9IDFlOSArIDc7CgpsbCBpLCBqLCBrLCBuLCBtLCB1LCB2Owp2ZWN0b3I8bGw+IGFkaltOXTsKbGwgdmlzW05dID0gezB9Owpib29sIGN5Y2xlID0gZmFsc2U7CnZlY3RvcjxsbD4gYW5zOwoKdm9pZCBkZnMobGwgeCkKewogICAgdmlzW3hdID0gMTsKICAgIGZvciAoYXV0byBpdCA6IGFkalt4XSkKICAgIHsKICAgICAgICBpZiAoIXZpc1tpdF0pCiAgICAgICAgICAgIGRmcyhpdCk7CiAgICAgICAgZWxzZSBpZiAodmlzW2l0XSA9PSAxKQogICAgICAgICAgICBjeWNsZSA9IHRydWU7CiAgICB9CiAgICB2aXNbeF0gPSAyOwogICAgYW5zLnB1c2hfYmFjayh4KTsKfQoKdm9pZCB0b3Bfc29ydChsbCBuKQp7CiAgICBmb3IgKGkgPSAxOyBpIDw9IG47IGkrKykKICAgIHsKICAgICAgICBpZiAoIXZpc1tpXSkKICAgICAgICAgICAgZGZzKGkpOwogICAgfQogICAgcmV2ZXJzZShhbnMuYmVnaW4oKSwgYW5zLmVuZCgpKTsKfQoKc2lnbmVkIG1haW4oKQp7CiAgICBpb3M6OnN5bmNfd2l0aF9zdGRpbyhmYWxzZSk7CiAgICBjaW4udGllKG51bGxwdHIpOwogICAgY291dC50aWUobnVsbHB0cik7CgogICAgY2luID4+IG4gPj4gbTsKICAgIGZvciAoaSA9IDA7IGkgPCBtOyBpKyspCiAgICB7CiAgICAgICAgY2luID4+IHUgPj4gdjsKICAgICAgICBhZGpbdV0ucHVzaF9iYWNrKHYpOwogICAgfQoKICAgIHRvcF9zb3J0KG4pOwoKICAgIGlmIChjeWNsZSkKICAgICAgICBjb3V0IDw8ICJTYW5kcm8gZmFpbHMuIjsKICAgIGVsc2UKICAgIHsKICAgICAgICBmb3IgKGF1dG8gaXQgOiBhbnMpCiAgICAgICAgICAgIGNvdXQgPDwgaXQgPDwgJyAnOwogICAgICAgIGNvdXQgPDwgJ1xuJzsKICAgIH0KfQ==