#ifdef LOCAL
    cout<<"\nTime Elapsed: " << 1.0*clock() / CLOCKS_PER_SEC << " sec\n";
#endif

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

#define ll long long
#define vll vector<ll> 
#define un_mp unordered_map<char,ll>
#define endl "\n"
#define f first
#define s second
#define pb push_back
#define all(a) a.begin(),a.end()

int main() {
    ios::sync_with_stdio(false);
    cin.tie(0);
    ll n,tt,k,m,d;
    cin>>tt;
    while(tt--){
        ll x,y;
        cin>>x>>y;
        string s;
        un_mp mp;
        cin>>s;
        ll x1=0,y1=0;
        for(auto p:s){
            mp[p]++;
            if(p=='R'){
               x1++; 
            }
            else if(p=='L'){
                x1--;
            }
            else if(p=='D'){
                y1--;
            }
            else if(p=='U'){
                y1++;
            }
        }
        if(x1==x&&y1==y){
            cout<<"YES"<<endl;
        }
        else{
            bool flag=true;
            if(flag==true&&x1<x){
                ll j1=x-x1;
                if(mp['L']>=j1){
                    flag=true;
                }
                else{
                    flag=false;
                }
            }
            if(flag==true&&x1>x){
                ll j1=x1-x;
                if(mp['R']>=j1){
                    flag=true;
                }
                else{
                    flag=false;
                }
            }
            if(flag==true&&y1<y){
                ll j1=y-y1;
                if(mp['D']>=j1){
                    flag=true;
                }
                else{
                    flag=false;
                }
            }
            if(flag==true&&y1>y){
                ll j1=y1-y;
                if(mp['U']>=j1){
                    flag=true;
                }
                else{
                    flag=false;
                }
            }
            if(flag){
                cout<<"YES"<<endl;
            }
            else{
                cout<<"NO"<<endl;
            }
        }
    }
}