AT_pakencamp_2025_day3_c Don't be Clockwise

Description

二次元平面上に $ N $ 個の点 $ p_1,p_2,\dots,p_N $ があります。 $ p_i $ は $ (X_i,Y_i) $ に位置します。複数の点が同一座標にあることはありません。 以下の条件を満たす点列 $ p=(p_1,p_2,\dots,p_N) $ の並び替え $ q=(q_1,q_2,\dots,q_N) $ をひとつ構築するか、それが不可能であることを宣言してください。 - $ 1\leq i\leq N-2 $ について、点列 $ q_i,q_{i+1},q_{i+2} $ が一直線上にあるか、この順に反時計回りとなる。 - より正確には、 $ q_i $ の座標を $ (x_i,y_i) $ として、 $ (x_{i+1} - x_i)(y_{i+2} - y_{i+1}) - (y_{i+1} - y_i)(x_{i+2} - x_{i+1}) \ge 0 $ が成り立つ。 以上の問題を $ T $ 個のテストケースについて解いてください。

Input Format

入力は以下の形式で標準入力から与えられる。 > $ T $ $ \text{case}_1 $ $ \text{case}_2 $ $ \vdots $ $ \text{case}_T $ 各テストケースは以下の形式で与えられる。 > $ N $ $ X_1 $ $ Y_1 $ $ X_2 $ $ Y_2 $ $ \vdots $ $ X_N $ $ Y_N $

Output Format

$ T $ 行出力せよ。 $ i $ 行目には、 $ i $ 番目のテストケースについて、題意を満たす $ q $ が存在しないなら $ -1 $ を出力せよ。 存在するなら、 $ q=(p_{r_1},p_{r_2},\dots,p_{r_N}) $ としたとき $ r_1,r_2,\dots,r_N $ をこの順に空白区切りで出力せよ。 複数の答えがある場合、どれを出力しても構わない。

Explanation/Hint

### Sample Explanation 1 ![](https://cdn.luogu.com.cn/upload/vjudge_pic/AT_pakencamp_2025_day3_c/5789510dd0a972f26643ab162102f09991862582273447701a2a3485f4d905ee.png) ### Constraints - $ 1\leq T\leq 100 $ - $ 3\leq N\leq 3000 $ - $ 0\leq X_i,Y_i\leq 10^9 $ - $ (X_i,Y_i)\ne (X_j,Y_j) $ $ (i\ne j) $ - $ N $ の総和は $ 3000 $ 以下 - 入力はすべて整数