#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
#define cy cout<<"YES"<<endl
#define cn cout<<"NO"<<endl
#define ms(a,b) memset(a, b, sizeof a);
#define scd(n) scanf("%d",&n)
#define scld(n) scanf("%lld",&n)
#define lp(i,a,b) for(i=a; i<b; i++)
const int INF = 0x3f3f3f3f;
#define MOD 1000000009

int main()
{
    int t; t=1;
    scd(t);
    while(t--)
    {
        int px, py; cin>>px>>py;
        string s; cin>>s;
        sort(s.begin(), s.end());
        int r = 0, l = 0, u = 0, d = 0;
        for(int i=0; i<s.size(); i++)
        {
            if(s[i]=='R')r++;
            if(s[i]=='L')l++;
            if(s[i]=='U')u++;
            if(s[i]=='D')d++;
        }
        int x, y;
        bool f = true;
        if(px>0)
        {
            if(px<=r)f= true;
            else f = false;
        }
        else if(px<0)
        {
            l*=-1;
            if(px>=l)f = true;
            else f =false;
        }
        if(f)
        {
            if(py>0)
            {
                if(py<=u)f=true;
                else f= false;
            }
            else if(py<0)
            {
                d*=-1;
                if(py>=d)f=true;
                else f=false;
            }
        }
        if(f)cy;
        else cn;

    }
    return 0;
}

/*
map<ll, int>mp;
map<ll, int>::iterator it;
ll a[n+2]; int b[n+2], c=0;
        for(it = mp.begin(); it != mp.end(); it++)
        {
           a[c]=(it->first);
           b[c++]=(it->second);
        }
*/
