#include<iostream>
using namespace std;
char c;
string s,print;
bool cow[100001];
int i,j,n,m,x,y,f[100001];
int find(int x)
{
if(f[x]!=x)
f[x]=find(f[x]);
return f[x];
}
main()
{
ios::sync_with_stdio(0);
cin.tie(0);cout.tie(0);
cin>>n>>m>>s;
for(i=0;i<n;i++)
if(s[i]=='H')
cow[i]=true;
for(i=1;i<=n;i++) f[i]=i;
for(i=0;i<m;i++) print[i]='0';
for(i=1;i<n;i++)
{
cin>>x>>y;
int a=find(x),
b=find(y);
if(a!=b)
f[b]=a;
}
for(i=0;i<m;i++)
{
cin>>x>>y>>c;
for(j=1;j<=n;j++)
if(find(j)==find(x))
if(c=='H')
{
if(cow[j])
{
print[i]='1';
break;
}
}
else
if(!cow[j])
{
print[i]='1';
break;
}
}
for(i=0;i<m;i++)
cout<<print[i];
}