#include <iostream>
#include <string>

using namespace std;

void C(string& str)
{
	string temp;
	for(int i = 1; i < str.size(); ++i)
	{
		temp += str[i];
	}
	temp += str[0];
	str = temp;
}

void J(string& str)
{
	string temp;
	temp += str[str.size() - 1];
	for(int i = 0; i < str.size() - 1; ++i)
	{
		temp += str[i];
	}
	str = temp;
}

void E(string& str)
{
	string temp;
	int n;
	if(str.size() % 2)
	{
		n = str.size() / 2 + 1;
	}
	else
	{
		n = str.size() / 2;
	}
	for(int i = n; i < str.size(); ++i)
	{
		temp += str[i];
	}
	if(str.size() % 2)
	{
		--n;
		temp += str[n];
	}
	for(int i = 0; i < n; ++i)
	{
		temp += str[i];
	}
	str = temp;
}

void A(string& str)
{
	string temp;
	for(int i = str.size() - 1; i >= 0; --i)
	{
		temp += str[i];
	}
	str = temp;
}

void M(string& str)
{
	for(int i = 0; i < str.size(); ++i)
	{
		if('0' <= str[i] && str[i] <= '8')
		{
			str[i] = str[i] + 1; 
		}
		else if(str[i] == '9')
		{
			str[i] = '0';
		}
	}
}

void P(string& str)
{
	for(int i = 0; i < str.size(); ++i)
	{
		if('1' <= str[i] && str[i] <= '9')
		{
			str[i] = str[i] - 1; 
		}
		else if(str[i] == '0')
		{
			str[i] = '9';
		}
	}
}

void solve()
{
	int n;
	cin >> n;
	while(n--)
	{
		string command, input;
		cin >> command >> input;
		for(int i = command.size() - 1; i >= 0; --i)
		{
			switch(command[i])
			{
				case 'J':
				  J(input);break;
				case 'C':
				  C(input);break;
				case 'E':
				  E(input);break;
				case 'A':
				  A(input);break;
				case 'P':
				  P(input);break;
				case 'M':
				  M(input);break;
			}
		}
		cout << input << endl;
	}
}

int main()
{
	solve();
	return(0);
}