#include <iostream>
#include <algorithm>
#define MAXN 205
using namespace std;
char _m[MAXN][MAXN];
char tem[MAXN][MAXN];
bool cmp(char a,char b);
int r;
int c;
void fun();
bool cmp(char a,char b);
int main()
{
//freopen("acm.acm","r",stdin);
int i;
int j;
int test;
int a = 0;
cin>>test;
int time;
while(test --)
{
if(a != 0)
cout<<endl;
cin>>r>>c>>time;
a = 1;
for(i = 0; i < r; ++ i)
{
for(j = 0; j < c; ++ j)
{
cin>>_m[i][j];
}
}
for(i = 0; i < r; ++ i)
{
for(j = 0; j < c; ++ j)
{
tem[i][j] = _m[i][j];
}
}
for(i = 0; i < time; ++ i)
{
fun();
}
for(i = 0; i < r; ++ i)
{
for(j = 0; j < c; ++ j)
{
cout<<_m[i][j];
}
cout<<endl;
}
}
}
void fun()
{
int i;
int j;
for(i = 0; i < r; ++ i)
{
for(j = 0; j < c; ++ j)
{
if(i + 1 < r)
{
if(cmp(_m[i+1][j],_m[i][j]))
{
tem[i][j] = _m[i+1][j];
continue;
}
}
if(j + 1 < c)
{
if(cmp(_m[i][j+1],_m[i][j]))
{
tem[i][j] = _m[i][j+1];
continue;
}
}
if(i - 1 >= 0)
{
if(cmp(_m[i-1][j],_m[i][j]) )
{
tem[i][j] = _m[i-1][j];
continue;
}
}
if(j - 1 >= 0)
{
if(cmp(_m[i][j-1],_m[i][j]))
{
tem[i][j] = _m[i][j-1];
continue;
}
}
}
}
for(i = 0; i < r; ++ i)
{
for(j = 0; j < c; ++ j)
{
_m[i][j] = tem[i][j];
}
}
}
bool cmp(char a,char b)
{
if(a == 'R' && b == 'S')
{
return true;
}
else if(a == 'R' && b == 'P')
{
return false;
}
else if(a == 'P' && b == 'R')
{
return true;
}
else if(a == 'P' && b == 'S')
{
return false;
}
else if(a == 'S' && b == 'P')
{
return true;
}
else if(a == 'S' && b == 'R')
{
return false;
}
return false;
}