Rikka loves convex polygons, so she decides to install some illuminants to embellish polygons.
Now she has a large convex polygon with $n$ sides. She also has $m$ different points strictly outside the polygon which are all legal positions to install illuminants.
An illuminant can light up some exterior boundaries of the polygon.
Rikka wants to install some illuminants to light up all exterior boundaries of the polygon. She asks you to calculate the least number of illuminants which she needs and provide a feasible scheme.
The input contains several test cases, and the first line contains a single integer $T$ ($1 <= T <= 100$), the number of test cases.
For each test case, the first line contains two integers $n$ ($3 <= n <= 1000$) and $m$ ($1 <= m <= 1000$).
Each of the following $n$ lines describes a vertex on the convex polygon with two integers $x$ and $y$ ($| x |, | y | <= 10^9$), the Cartesian coordinates of the vertex. All these vertices are given in counter-clockwise order and any three of them are not collinear.
Then the following $m$ lines contain $m$ different points outside the polygon describing all legal positions to install illuminants. Each of them contains two integers $x$ and $y$ ($| x |, | y | <= 10^9$), the Cartesian coordinates of a legal position. They are numbered from $1$ to $m$. All these positions would not lie in some extension lines for the sides of the polygon.
For each test case, if it's impossible to light up all exterior boundaries of the polygon, output a single line with a single integer $-1$. Otherwise, output two lines. Firstly, output a line with a single integer $k$, representing the least number of illuminants Rikka needs to light up all the boundaries. Then, output a line with $k$ space-separated distinct integers, describing a feasible scheme, each of which is the index of a selected position.
All feasible schemes are allowed, so you can output any of them.
## Input
The input contains several test cases, and the first line contains a single integer $T$ ($1 <= T <= 100$), the number of test cases.For each test case, the first line contains two integers $n$ ($3 <= n <= 1000$) and $m$ ($1 <= m <= 1000$).Each of the following $n$ lines describes a vertex on the convex polygon with two integers $x$ and $y$ ($| x |, | y | <= 10^9$), the Cartesian coordinates of the vertex. All these vertices are given in counter-clockwise order and any three of them are not collinear.Then the following $m$ lines contain $m$ different points outside the polygon describing all legal positions to install illuminants. Each of them contains two integers $x$ and $y$ ($| x |, | y | <= 10^9$), the Cartesian coordinates of a legal position. They are numbered from $1$ to $m$. All these positions would not lie in some extension lines for the sides of the polygon.
## Output
For each test case, if it's impossible to light up all exterior boundaries of the polygon, output a single line with a single integer $-1$. Otherwise, output two lines. Firstly, output a line with a single integer $k$, representing the least number of illuminants Rikka needs to light up all the boundaries. Then, output a line with $k$ space-separated distinct integers, describing a feasible scheme, each of which is the index of a selected position.All feasible schemes are allowed, so you can output any of them.
[samples]
**Definitions**
Let $ n \in \mathbb{Z} $ be the number of sides of a convex polygon.
Let $ m \in \mathbb{Z} $ be the number of legal illuminant positions.
Let $ P = (v_1, v_2, \dots, v_n) $ be the sequence of polygon vertices in counter-clockwise order, where $ v_i \in \mathbb{R}^2 $.
Let $ E = \{e_1, e_2, \dots, e_n\} $ be the set of exterior edges, where $ e_i $ is the edge from $ v_i $ to $ v_{i+1} $ (with $ v_{n+1} = v_1 $).
Let $ Q = \{q_1, q_2, \dots, q_m\} $ be the set of legal illuminant positions, $ q_j \in \mathbb{R}^2 $, all strictly outside the polygon and not on any edge extension.
For each illuminant position $ q_j $, define the set of edges it can illuminate:
$$
I(q_j) = \{ e_i \in E \mid \text{the ray from } q_j \text{ to the polygon intersects } e_i \text{ and does not intersect any other edge} \}
$$
(This is equivalent to: $ q_j $ can illuminate edge $ e_i $ if the line segment from $ q_j $ to any interior point of $ e_i $ does not intersect the polygon’s interior.)
**Constraints**
1. $ 1 \le T \le 100 $
2. $ 3 \le n \le 1000 $, $ 1 \le m \le 1000 $
3. All polygon vertices are in counter-clockwise order, no three collinear.
4. All $ q_j $ are strictly outside the polygon and not on any edge extension.
**Objective**
Find the minimum cardinality subset $ S \subseteq \{1, 2, \dots, m\} $ such that:
$$
\bigcup_{j \in S} I(q_j) = E
$$
If no such $ S $ exists, output $-1$. Otherwise, output $ |S| $ and the indices in $ S $.