Det finns $n$ punkter $P_1, P_2, \ldots, P_n$ i planet. VegiCat har $q$ frågor till dig. Varje fråga ger en punkt $P$.
För varje fråga, konstruera en enkel polygon genom att använda några av de givna punkterna som dess hörn. Polygonen måste innehålla $P$ strikt inuti sig och ha minsta möjliga antal hörn. Om ingen sådan polygon finns, skriv ut $-1$.
En enkel polygon är ett slutet polygontåg med minst tre distinkta hörn. Intilliggande kanter skär varandra endast i sin gemensamma ändpunkt, och icke-intilliggande kanter skär inte varandra.
Exempel på enkla och icke-enkla polygoner
Indata
Den första raden innehåller ett heltal $T$ ($1 \le T \le 2 \cdot 10^4$), antalet testfall. Beskrivningen av testfallen följer.
Den första raden i varje testfall innehåller två positiva heltal $n$ och $q$ ($3 \le n \le 10^5$, $1 \le q \le 10^5$), som representerar antalet givna punkter respektive antalet frågor.
Den $i$-te av de följande $n$ raderna innehåller två heltal $x_i$ och $y_i$ ($-10^9 \le x_i, y_i \le 10^9$), koordinaterna för $P_i$. Det garanteras att dessa $n$ punkter är parvis olika.
Var och en av de följande $q$ raderna innehåller två heltal $x$ och $y$ ($-10^9 \le x, y \le 10^9$), koordinaterna för den efterfrågade punkten.
Det garanteras att summan av $n$ över alla testfall inte överstiger $10^5$.
Det garanteras att summan av $q$ över alla testfall inte överstiger $10^5$.
Utdata
För varje fråga, om det inte finns någon polygon som uppfyller kraven, skriv ut ett heltal $-1$ på en rad.
Annars, skriv ut en polygon med minsta möjliga antal hörn. På den första raden, skriv ut ett heltal $m$, antalet hörn.
På den andra raden, skriv ut $m$ heltal $a_1, a_2, \ldots, a_m$ ($1 \le a_i \le n$), indexen för hörnen i ordning. Polygonen är $P_{a_1} P_{a_2} \ldots P_{a_m}$. Hörnen kan skrivas ut i antingen medurs eller moturs ordning.
Indexen måste vara parvis olika, och den utskrivna polygonen måste vara enkel och innehålla den efterfrågade punkten strikt inuti sig. Om det finns flera lösningar, skriv ut vilken som helst av dem.
Exempel
Indata 1
2 5 1 0 4 -3 0 -3 -3 3 -3 3 0 0 0 3 1 0 4 -3 0 3 0 0 0
Utdata 1
3 4 1 2 -1
Notering
I det första testfallet innehåller triangeln $P_4 P_1 P_2$ den efterfrågade punkten $P = (0, 0)$ strikt inuti sig. Eftersom en polygon har minst tre hörn har denna triangel minsta möjliga antal hörn.
I det andra testfallet är den enda möjliga polygonen triangeln $P_1 P_2 P_3$. Den efterfrågade punkten $P = (0, 0)$ ligger på kanten $P_2 P_3$, så svaret är $-1$.
Illustrationer av exempeltestfallen