#include <stdio.h>
int main(void){
  int n,m,i,j,s[50][2],p[50][2],d,min,l;
  scanf("%d%d",&n,&m);
  for (i=0;i<n;i++) scanf("%d%d",&s[i][0],&s[i][1]);
  for (i=0;i<m;i++) scanf("%d%d",&p[i][0],&p[i][1]);
  for (i=0;i<n;i++){
    min=200000000;
    for (j=0;j<m;j++){
      d=(s[i][0]>p[j][0])? s[i][0]-p[j][0]:p[j][0]-s[i][0];
      d+=(s[i][1]>p[j][1])? s[i][1]-p[j][1]:p[j][1]-s[i][1];
      if (d<min){
        min=d;
        l=j;
      }
    }
    printf("%d\n",l+1);
  }
  return 0;
}
### Prompt

Develop a solution in CPP to the problem described below:

There are N students and M checkpoints on the xy-plane.
The coordinates of the i-th student (1 \leq i \leq N) is (a_i,b_i), and the coordinates of the checkpoint numbered j (1 \leq j \leq M) is (c_j,d_j).
When the teacher gives a signal, each student has to go to the nearest checkpoint measured in Manhattan distance.
The Manhattan distance between two points (x_1,y_1) and (x_2,y_2) is |x_1-x_2|+|y_1-y_2|.
Here, |x| denotes the absolute value of x.
If there are multiple nearest checkpoints for a student, he/she will select the checkpoint with the smallest index.
Which checkpoint will each student go to?

Constraints

* 1 \leq N,M \leq 50
* -10^8 \leq a_i,b_i,c_j,d_j \leq 10^8
* All input values are integers.

Input

The input is given from Standard Input in the following format:


N M
a_1 b_1
:
a_N b_N
c_1 d_1
:
c_M d_M


Output

Print N lines.
The i-th line (1 \leq i \leq N) should contain the index of the checkpoint for the i-th student to go.

Examples

Input

2 2
2 0
0 0
-1 0
1 0


Output

2
1


Input

3 4
10 10
-10 -10
3 3
1 2
2 3
3 5
3 5


Output

3
1
2


Input

5 5
-100000000 -100000000
-100000000 100000000
100000000 -100000000
100000000 100000000
0 0
0 0
100000000 100000000
100000000 -100000000
-100000000 100000000
-100000000 -100000000


Output

5
4
3
2
1

### Response

```cpp
#include <stdio.h>
int main(void){
  int n,m,i,j,s[50][2],p[50][2],d,min,l;
  scanf("%d%d",&n,&m);
  for (i=0;i<n;i++) scanf("%d%d",&s[i][0],&s[i][1]);
  for (i=0;i<m;i++) scanf("%d%d",&p[i][0],&p[i][1]);
  for (i=0;i<n;i++){
    min=200000000;
    for (j=0;j<m;j++){
      d=(s[i][0]>p[j][0])? s[i][0]-p[j][0]:p[j][0]-s[i][0];
      d+=(s[i][1]>p[j][1])? s[i][1]-p[j][1]:p[j][1]-s[i][1];
      if (d<min){
        min=d;
        l=j;
      }
    }
    printf("%d\n",l+1);
  }
  return 0;
}
```