题目描述
Problem
There are N vacant lots on the two-dimensional plane. Numbers from 1 to N are assigned to each vacant lot. Every vacant lot is so small that it can be considered a point. The i-th vacant lot exists at (xi, yi).
Taro chose just K from these N vacant lots and decided to build a building in those vacant lots. However, I thought it would be uninteresting to build multiple buildings too close together, so Taro decided to choose a vacant lot so that the Euclidean distance between each vacant lot would always be 2 or more.
Create a program that outputs possible combinations of vacant lots that Taro chooses. If there are multiple combinations, output the smallest one in lexicographical order. However, no matter how you choose K vacant lots, if the Euclidean distance of any two vacant lots is less than 2, output -1 instead.
Constraints
The input satisfies the following conditions.
- All inputs are integers.
- 2 ≤ K ≤ N ≤ 6,000
- 1 ≤ xi, yi ≤ 1,000,000 (1 ≤ i ≤ N)
- xi mod 2 = floor (yi ÷ 2) mod 2 (1 ≤ i ≤ N)
(Here, floor (yi ÷ 2) is the value obtained by dividing yi by 2 and rounding down to the nearest whole number.) - There can be no more than one vacant lot at the same coordinates.
Input
The input is given in the following format.
N K
x1 y1
x2 y2
...
xN yN
Output
Output the vacant lot numbers selected by Taro line by line in ascending order.
Examples
Input
3 2
2 1
1 2
1 3
Output
1
3
Input
4 3
2 1
1 2
1 3
2 4
Output
-1
Input
5 3
5 7
5 6
6 8
20 20
4 8
Output
2
3
4
输入格式
见题面
输出格式
见题面