n, m = map(int, input().split()) adj = [[] for _ in range(n + 1)] in_degree = [0] * (n + 1) for _ in range(m): u, v = map(int, input().split()) adj[u].append(v) in_degree[v] += 1 q = [] for i in range(1, n + 1): if in_degree[i] == 0: q.append(i) head = 0 topsort = [] while head < len(q): u = q[head] head += 1 topsort.append(u) for v in adj[u]: in_degree[v] -= 1 if in_degree[v] == 0: q.append(v) if len(topsort) == n: print(*topsort) else: print("-1")