#include<bits/stdc++.h>
using namespace std;
typedef struct point
{
int x;
int y;
char type;
} POINT;
int main()
{
int n,m;
cin>>n>>m;
POINT test[n];
for(int i=0; i<n; i++)
cin>>test[i].x>>test[i].y>>test[i].type;
for(int i=0; i<m; i++)
{
bool dete = true;
//a+bx+cy = 0;
int a,b,c;
cin>>a>>b>>c;
//以第一个点作为基准点,判断其他点是不是满足条件
char type = test[0].type;
bool flag = a+b*test[0].x+c*test[0].y>0;
for(int j=1; j<n; j++)
{
bool temp = a+b*test[j].x+c*test[j].y>0;
if((temp == flag && type!= test[j].type)||(temp != flag && type == test[j].type))
{
dete = false;
cout<<"No\n";
break;
}
}
if(dete == true)
cout<<"Yes\n";
}
return 0;
}