AT_abc223_d [ABC223D] Restricted Permutation

Description

[problemUrl]: https://atcoder.jp/contests/abc223/tasks/abc223_d $ (1,\ 2,\ \dots,\ N) $ を並び替えて得られる数列 $ P $ であって以下の条件を満たすもののうち、辞書順で最小のものを求めてください。 - $ i\ =\ 1,\ \dots,\ M $ に対し、$ P $ において $ A_i $ は $ B_i $ よりも先に現れる。 ただし、そのような $ P $ が存在しない場合は `-1` と出力してください。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ N $ $ M $ $ A_1 $ $ B_1 $ $ \vdots $ $ A_M $ $ B_M $

Output Format

答えを出力せよ。

Explanation/Hint

### 制約 - $ 2\ \leq\ N\ \leq\ 2\ \times\ 10^5 $ - $ 1\ \leq\ M\ \leq\ 2\ \times\ 10^5 $ - $ 1\ \leq\ A_i,\ B_i\ \leq\ N $ - $ A_i\ \neq\ B_i $ - 入力は全て整数である。 ### Sample Explanation 1 条件を満たす $ P $ は $ (2,\ 1,\ 3,\ 4),\ (2,\ 3,\ 1,\ 4),\ (2,\ 3,\ 4,\ 1),\ (3,\ 2,\ 1,\ 4),\ (3,\ 2,\ 4,\ 1) $ の $ 5 $ つです。これらのうち辞書順で最小のものは $ (2,\ 1,\ 3,\ 4) $ です。 ### Sample Explanation 2 条件を満たす $ P $ は存在しません。