// AB NAHI HO RHI CPP.........               //******************************************
#include<bits/stdc++.h>                      //*****************************  ********
using namespace std ;                        //***********  *   ********  ********
typedef long long int ll;                   //************  ***   ******  *********
typedef long double ld;                      //***********  *****   ****  *********
#define int long long                       //************  *******   **  *********
#define PB push_back                        // *********  *********   *  *********
#define MP make_pair                      //  *****************************************
#define F first                            //********************************************
#define S second                           // ****************************************
#define ii pair <int,int>                  //############################################
#define P push                            //############################################
#define endl "\n"                        //##############################################
#define vvi vector<vector<int> >        //###############################################
#define vi vector<int>                    //############################################
#define vpi vector< pair<int,int> >       // ############################################
#define sz(a) (int)a.size()             //##############################################
#define all(a)   a.begin() , a.end()     //#############################################
const ll N = 1e9+7  , N1 =  250000+7;//  
#define fastrack ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
signed main()
{
    //cout<<setprecision(18);
    ll t;
    cin>>t;
    while(t--)
    {
        ll x,y;
        cin>>x>>y;
        string s;
        cin>>s;
        ll l=0,r=0,u=0,d=0,x1=0,y1=0,n=sz(s);
        for(int i=0;i<n;i++)
        {
            if(s[i]=='R'&&x1<x)
            {
                r++; x1++;
            }
            if(s[i]=='L'&&x1>x)
            {
                l++; x1--;
            }
            if(s[i]=='U'&&y1<y)
            {
                u++; y1++;
            }
            if(s[i]=='D'&&y1>y)
            {
                d++; y1--;
            }
        }
        if(x1==x&&y1==y)
        cout<<"YES"<<endl;
        else
        cout<<"NO"<<endl;
    }
    return 0;
}
   
    

### Prompt

Create a solution in CPP for the following problem:

You were dreaming that you are traveling to a planet named Planetforces on your personal spaceship. Unfortunately, its piloting system was corrupted and now you need to fix it in order to reach Planetforces.

<image>

Space can be represented as the XY plane. You are starting at point (0, 0), and Planetforces is located in point (p_x, p_y).

The piloting system of your spaceship follows its list of orders which can be represented as a string s. The system reads s from left to right. Suppose you are at point (x, y) and current order is s_i: 

  * if s_i = U, you move to (x, y + 1); 
  * if s_i = D, you move to (x, y - 1); 
  * if s_i = R, you move to (x + 1, y); 
  * if s_i = L, you move to (x - 1, y). 



Since string s could be corrupted, there is a possibility that you won't reach Planetforces in the end. Fortunately, you can delete some orders from s but you can't change their positions.

Can you delete several orders (possibly, zero) from s in such a way, that you'll reach Planetforces after the system processes all orders?

Input

The first line contains a single integer t (1 ≤ t ≤ 1000) — the number of test cases.

Each test case consists of two lines. The first line in each test case contains two integers p_x and p_y (-10^5 ≤ p_x, p_y ≤ 10^5; (p_x, p_y) ≠ (0, 0)) — the coordinates of Planetforces (p_x, p_y).

The second line contains the string s (1 ≤ |s| ≤ 10^5: |s| is the length of string s) — the list of orders.

It is guaranteed that the sum of |s| over all test cases does not exceed 10^5.

Output

For each test case, print "YES" if you can delete several orders (possibly, zero) from s in such a way, that you'll reach Planetforces. Otherwise, print "NO". You can print each letter in any case (upper or lower).

Example

Input


6
10 5
RRRRRRRRRRUUUUU
1 1
UDDDRLLL
-3 -5
LDLDLDDDR
1 2
LLLLUU
3 -2
RDULRLLDR
-1 6
RUDURUUUUR


Output


YES
YES
YES
NO
YES
NO

Note

In the first case, you don't need to modify s, since the given s will bring you to Planetforces.

In the second case, you can delete orders s_2, s_3, s_4, s_6, s_7 and s_8, so s becomes equal to "UR".

In the third test case, you have to delete order s_9, otherwise, you won't finish in the position of Planetforces.

### Response

```cpp
// AB NAHI HO RHI CPP.........               //******************************************
#include<bits/stdc++.h>                      //*****************************  ********
using namespace std ;                        //***********  *   ********  ********
typedef long long int ll;                   //************  ***   ******  *********
typedef long double ld;                      //***********  *****   ****  *********
#define int long long                       //************  *******   **  *********
#define PB push_back                        // *********  *********   *  *********
#define MP make_pair                      //  *****************************************
#define F first                            //********************************************
#define S second                           // ****************************************
#define ii pair <int,int>                  //############################################
#define P push                            //############################################
#define endl "\n"                        //##############################################
#define vvi vector<vector<int> >        //###############################################
#define vi vector<int>                    //############################################
#define vpi vector< pair<int,int> >       // ############################################
#define sz(a) (int)a.size()             //##############################################
#define all(a)   a.begin() , a.end()     //#############################################
const ll N = 1e9+7  , N1 =  250000+7;//  
#define fastrack ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
signed main()
{
    //cout<<setprecision(18);
    ll t;
    cin>>t;
    while(t--)
    {
        ll x,y;
        cin>>x>>y;
        string s;
        cin>>s;
        ll l=0,r=0,u=0,d=0,x1=0,y1=0,n=sz(s);
        for(int i=0;i<n;i++)
        {
            if(s[i]=='R'&&x1<x)
            {
                r++; x1++;
            }
            if(s[i]=='L'&&x1>x)
            {
                l++; x1--;
            }
            if(s[i]=='U'&&y1<y)
            {
                u++; y1++;
            }
            if(s[i]=='D'&&y1>y)
            {
                d++; y1--;
            }
        }
        if(x1==x&&y1==y)
        cout<<"YES"<<endl;
        else
        cout<<"NO"<<endl;
    }
    return 0;
}
   
    

```