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

#define BOOST ios::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
#define rep(i,a,b) for(int i=a;i<b;i++)
#define rept(it,v) for(auto it=v.begin();it!=v.end();it++)
#define pre(i,a,b) for(int i=a;i>=b;i--)
#define mp make_pair
#define pb push_back
#define endl "\n"
#define mod 1000000007
#define ll long long
#define ld long double
#define pii pair<int,int>
#define pll pair<ll,ll> 
#define vl vector<ll>
#define vi vector<int>
#define all(x) x.begin(),x.end()
#define sp(x) setprecision(x)
#define lb lower_bound
#define ub upper_bound
#define ll long long
#define pb push_back
#define pob pop_back
#define mt make_tuple
#define F first
#define S second
#define endl "\n"
#define ct continue
#define fill(a,b) memset(a,b,sizeof(a))
#define bs binary_search
#define gcd __gcd
#define sz(x) (int)((x).size())
#define test cin>>t; while(t--)
ll n,q,i,j,cnt,cnt2,a[1000000],b[1000000],x1,x2,x3,x4,sum,c[1000000],d[1000000],t,x,p,y,m,z,l,k,inv,ans,mi,ma,flag,check;
vector <int> v,v1,v2;
string s;

map <ll,ll> mp1,mp2;
int main()
{
  BOOST
  test
  {
    cin>>n>>m;
    cin>>s;
    x1 = 0;
    x2 = 0;
    x3 = 0;
    x4 = 0;
    for(i=0;i<s.length();i++)
    {
      if(s[i] == 'R')
        x1++;
      else if(s[i] == 'L')
        x2++;
      else if(s[i] == 'D')
        x3++;
      else if(s[i] == 'U')
        x4++;
    }  
    flag = 0;
    if(n > 0)
    {
      if(x1 < n)
        flag = 1;
    }
    else
    {
      if(x2 < -n)
        flag = 1;
    }
    if(m > 0)
    {
      if(x4 < m)
        flag = 1;
    }
    else
    {
      if(x3 < -m)
        flag = 1;
    }
    if(flag == 0)
      cout<<"YES"<<'\n';
    else
      cout<<"NO"<<'\n';
  }
}