#include<bits/stdc++.h>
using namespace std;

typedef long long ll;
const int maxn=8e3+10;
int x,y,dpx[maxn<<1],dpy[maxn<<1],tmp[maxn<<1];
char s[maxn];

int main(){
	cin>>s>>x>>y;
	int now=0,type=0;
	{
		int pos=0;
		while(s[now]=='F')
			++now,++pos;
		dpx[pos+maxn]=dpy[maxn]=true;
	}
	while(s[now]){
		++now;
		int len=0;
		while(s[now]=='F')
			++now,++len;
		memset(tmp,0,sizeof(tmp));
		if(type){
			for(int i=0;i+len<(maxn<<1);++i)
				if(dpx[i])
					tmp[i+len]=true;
			for(int i=len;i<(maxn<<1);++i)
				if(dpx[i])
					tmp[i-len]=true;
			memcpy(dpx,tmp,sizeof(dpx));
		}
		else{
			for(int i=0;i+len<(maxn<<1);++i)
				if(dpy[i])
					tmp[i+len]=true;
			for(int i=len;i<(maxn<<1);++i)
				if(dpy[i])
					tmp[i-len]=true;
			memcpy(dpy,tmp,sizeof(dpy));
		}
		type^=1;
	}
	puts(dpx[x+maxn]&&dpy[y+maxn]?"Yes":"No");
	return 0;
}