#include <stdio.h>
void swap(int company[4][50000], int i, int j)
{
int temp;
int k;
for (k = 0; k < 4; k++)
{
temp = company[k][i];
company[k][i] = company[k][j];
company[k][j] = temp;
}
}
void quick_sort_company(int company[4][50000], int left, int right)
{
int pivot_index;
int pivot;
int i;
int j;
if (right - left == 1)
return ;
pivot_index = (left + right) / 2;
pivot = company[3][pivot_index];
swap(company, pivot_index, right - 1);
i = 0;
for (j = 0; j < right - 1; j++)
{
if (company[3][j] > pivot)
{
swap(company, i, j);
i++;
}
}
swap(company, i, right - 1);
quick_sort_company(company, 0, i);
quick_sort_company(company, i + 1, right);
}
int check_condition(int human[3][50000], int company[4][50000], int i, int j)
{
int k;
for (k = 0; k < 3; k++)
{
if (company[k][j] > human[k][i])
return (0);
}
return (1);
}
int main(void)
{
int n;
int m;
int company[4][50000];
int human[3][50000];
int answer[50000] = {0};
int i;
int j;
scanf("%d%d", &n, &m);
for (i = 0; i < n; i++)
{
scanf("%d%d%d%d", &company[0][i], &company[1][i], &company[2][i], &company[3][i]);
}
for (i = 0; i < m; i++)
{
scanf("%d%d%d", &human[0][i], &human[1][i], &human[2][i]);
}
quick_sort_company(company, 0, n);
for (i = 0; i < m; i++)
{
for (j = 0; j < n; j++)
{
if (check_condition(human, company, i, j))
{
answer[i] = company[3][j];
break ;
}
}
}
for (i = 0; i < m; i++)
{
printf("%d\n", answer[i]);
}
return (0);
}