#include <iostream>
#include <cstring>
#include <map>
#include <cmath>
using namespace std;#include <bits/stdc++.h>
using namespace std;
int dx[] = {0, 1, 0, -1}, dy[] = {1, 0, -1, 0};
void solve()
{
int x,y;cin>>x>>y;
string s;cin>>s;
string ans = "";
int len=s.size();
map<char,int> mp;
int edx=0,edy=0;
map<int, char> p;
p[0] = 'U', p[1] = 'R', p[2] = 'D', p[3] = 'L';
for(int i=0;i<s.size();i++) {
mp[s[i]]++;
if(s[i]=='R') {
edx++;
}
else if(s[i]=='L') {
edx--;
}
else if(s[i]=='U') {
edy++;
}
else {
edy--;
}
}
if(edx==x&&edy==y||x==0&&y==0) {
cout<<"Impossible"<<endl;
return ;
}
int sum1=mp['R'],sum2=mp['L'],sum3=mp['U'],sum4=mp['D'];
if((sum3-sum4)>=y&&y>=0&&x==0&&sum1==0&&sum2==0) {
cout<<"Impossible"<<endl;
return ;
}
if((sum1-sum2)>=x&&x>=0&&y==0&&sum3==0&&sum4==0) {
cout<<"Impossible"<<endl;
return ;
}
if((sum4-sum3)>=abs(y)&&y<=0&&x==0&&sum1==0&&sum2==0) {
cout<<"Impossible"<<endl;
return ;
}
if((sum2-sum1)>=abs(x)&&x<=0&&y==0&&sum3==0&&sum4==0) {
cout<<"Impossible"<<endl;
return ;
}
int ex=0,ey=0;
for (int i = 0; i < s.size(); i ++){
bool f = false;
for (int j = 0; j < 4; j ++){
// if (i == 2){
// cout << j << endl;
// }
if (!mp[p[j]]) continue;
int tx = ex + dx[j], ty = ey + dy[j];
if (tx != x || ty != y){
f = true;
ex = tx, ey = ty;
ans += p[j];
mp[p[j]] --;
swap(p[0], p[2]);
swap(p[1], p[3]);
swap(dx[0], dx[2]);
swap(dx[1], dx[3]);
swap(dy[0], dy[2]);
swap(dy[1], dy[3]);
break;
}
// reverse(a, a + n);
}
// cout << f << ' ' << ex << ' ' << ey << endl;
if (!f) break;
}
int o = -1;
for (int i = 0; i < 4; i ++){
if (mp[p[i]]){
o = i;
break;
}
}
string pp(mp[p[o]], p[o]);
// for (int i = 0; i < 4; i ++) cout << p[i] << ' ' << mp[p[i]] << endl;
ans = pp + ans;
cout << ans << endl;
}
int main()
{
int t;
cin>>t;
while(t--){
solve();
}
return 0;
}
void solve()
{
int x,y;cin>>x>>y;
string s;cin>>s;
map<char,int> mp;
int edx=0,edy=0;
for(int i=0;i<s.size();i++) {
mp[s[i]]++;
if(s[i]=='R') {
edx++;
}
else if(s[i]=='L') {
edx--;
}
else if(s[i]=='U') {
edy++;
}
else {
edy--;
}
}
if(edx==x&&edy==y||x==0&&y==0) {
cout<<"Impossible"<<endl;
return ;
}
int sum1=mp['R'],sum2=mp['L'],sum3=mp['U'],sum4=mp['D'];
if((sum3-sum4)>=y&&y>=0&&x==0&&sum1==0&&sum2==0) {
cout<<"Impossible"<<endl;
return ;
}
else if((sum3-sum4)<y&&y>=0&&x==0&&sum1==0&&sum2==0){
while(sum4--) cout<<"D";
while(sum3--) cout<<"U";
cout<<endl;
return ;
}
if((sum1-sum2)>=x&&x>=0&&y==0&&sum3==0&&sum4==0) {
cout<<"Impossible"<<endl;
return ;
}
else if((sum1-sum2)<x&&x>=0&&y==0&&sum3==0&&sum4==0){
while(sum2--) cout<<"L";
while(sum1--) cout<<"R";
cout<<endl;
return ;
}
if((sum4-sum3)>=abs(y)&&y<=0&&x==0&&sum1==0&&sum2==0) {
cout<<"Impossible"<<endl;
return ;
}
else if((sum4-sum3)<abs(y)&&y<=0&&x==0&&sum1==0&&sum2==0){
while(sum3--) cout<<"U";
while(sum4--) cout<<"D";
cout<<endl;
return ;
}
if((sum2-sum1)>=abs(x)&&x<=0&&y==0&&sum3==0&&sum4==0) {
cout<<"Impossible"<<endl;
return ;
}
else if((sum2-sum1)<abs(x)&&x<=0&&y==0&&sum3==0&&sum4==0){
while(sum1--) cout<<"R";
while(sum2--) cout<<"L";
cout<<endl;
return ;
}
if(x>=0&&y>=0) {
while(sum2--) cout<<'L';
while(sum4--) cout<<'D';
while(sum1--) cout<<'R';
while(sum3--) cout<<'U';
cout<<endl;
}
else if(x>=0&&y<0) {
while(sum2--) cout<<'L';
while(sum3--) cout<<'U';
while(sum1--) cout<<'R';
while(sum4--) cout<<'D';
cout<<endl;
}
else if(x<0&&y>=0) {
while(sum1--) cout<<'R';
while(sum4--) cout<<'D';
while(sum3--) cout<<'U';
while(sum2--) cout<<'L';
cout<<endl;
}
else {
while(sum1--) cout<<'R';
while(sum3--) cout<<'U';
while(sum2--) cout<<'L';
while(sum4--) cout<<'D';
cout<<endl;
}
}
int main()
{
int t;
cin>>t;
while(t--){
solve();
}
return 0;
}