#include <iostream>
#include <string>

using namespace std;

int main(){
  int n;
  while(cin >> n){
    for(int i=0;i<n;i++){
      string hito;
      string data;
      cin >> hito;
      cin >> data;
      for(int j=hito.size()-1;j>=0;j--){
	//cout << data << endl;
	if(hito[j]=='J'){
	  string tmp=data;
	  data="";
	  data+=tmp[tmp.size()-1];
	  for(int k=0;k<tmp.size()-1;k++){
	    data+=tmp[k];
	  }
	}else if(hito[j]=='C'){
	  string tmp=data;
	  data="";
	  for(int k=1;k<tmp.size();k++){
	    data+=tmp[k];
	  }
	  data+=tmp[0];
	}else if(hito[j]=='E'){
	  string left="", right="";
	  if(data.size()%2==0){
	    for(int k=0;k<data.size()/2;k++){
	      left+=data[k];
	      right+=data[k+data.size()/2];
	    }
	  }else{
	    for(int k=0;k<data.size()/2;k++){
	      left+=data[k];
	      right+=data[k+data.size()/2+1];
	    }
	    right+=data[data.size()/2];
	  }
	  data="";
	  data+=right;
	  data+=left;
	}else if(hito[j]=='A'){
	   string tmp=data;
	  for(int k=0;k<tmp.size();k++){
	    data[k]=tmp[tmp.size()-1-k];
	  }
	}else if(hito[j]=='P'){
	  for(int k=0;k<data.size();k++){
	    if(data[k]>='0' && data[k]<='9'){
	      if(data[k]=='0') data[k]='9';
	      else data[k]=data[k]-1;
	    }
	  }
	}else if(hito[j]=='M'){
	  for(int k=0;k<data.size();k++){
	    if(data[k]>='0' && data[k]<='9'){
	      if(data[k]=='9') data[k]='0';
	      else data[k]=data[k]+1;
	    }
	  }
	}
      }
      cout << data << endl;
    }
  }
  return 0;
}