#include <bits/stdc++.h>
#define ll long long
#define sti string
#define bit(n,i) ((n>>i) &1)
#define itachi ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define maxn 200005
#define fi first
#define se second
#define i18 __int128_t
using namespace std;
ll c[maxn],n,k;
struct matrix {
ll m,n;
vector<vector<ll>> mt;
matrix(int _m=0,int _n=0){
m=_m; n=_n;
mt.assign(m,vector<ll>(n,0));
}
matrix operator * (const matrix& other) const{
int x=m,y=n,z=other.n;
matrix ans(x,z);
for(int i=0;i<x;i++){
for(int k=0;k<y;k++){
if(mt[i][k]==0) continue;
for(int j=0;j<z;j++){
ans.mt[i][j]=(ans.mt[i][j]+mt[i][k]*other.mt[k][j])%3;
}
}
}
return ans;
}
};
matrix power(matrix base, ll exp) {
matrix res(base.m, base.m);
for (int i = 0; i < base.m; i++) res.mt[i][i] = 1;
while (exp) {
if (exp & 1) res = res * base;
base = base * base;
exp >>= 1;
}
return res;
}
int main()
{
itachi
cin>>n>>k;
for(int i=0;i<n;i++) {
char x; cin>>x;
if(x=='R') c[i]=0;
else if(x=='G') c[i]=1;
else c[i]=2;
}
if(n*k<=1e6){
for(int i=0;i<k;i++){
for(int j=0;j<n;j++){
int nxt=(j+1)%n;
int val=(2*c[j]+2*c[nxt])%3;
c[j]=val;
c[nxt]=val;
}
}
for(int i=0;i<n;i++){
int x=c[i];
if(x==0) cout<<'R';
else if(x==1) cout<<'G';
else cout<<'B';
}
return 0;
}
matrix A=matrix(n,n);
for(int i=0;i<2;i++) for(int j=0;j<2;j++) A.mt[i][j]=2;
for(int i=2;i<n;i++) A.mt[i][i]=1;
matrix C=matrix(n,1);
for(int j=0;j<n;j++) C.mt[j][0]=c[j];
matrix B=matrix(n,n);
for(int i=1;i<n;i++) B.mt[i-1][i]=1;
B.mt[n-1][0]=1;
B=B*A;
B=power(B,n);
B=power(B,k);
C=B*C;
for(int i=0;i<n;i++){
int x=C.mt[i][0];
if(x==0) cout<<'R';
else if(x==1) cout<<'G';
else cout<<'B';
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNkZWZpbmUgbGwgbG9uZyBsb25nCiNkZWZpbmUgc3RpIHN0cmluZwojZGVmaW5lIGJpdChuLGkpICgobj4+aSkgJjEpCiNkZWZpbmUgaXRhY2hpIGlvc19iYXNlOjpzeW5jX3dpdGhfc3RkaW8oMCk7Y2luLnRpZSgwKTtjb3V0LnRpZSgwKTsKI2RlZmluZSBtYXhuIDIwMDAwNQojZGVmaW5lIGZpIGZpcnN0CiNkZWZpbmUgc2Ugc2Vjb25kCiNkZWZpbmUgaTE4IF9faW50MTI4X3QKCgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKbGwgY1ttYXhuXSxuLGs7CgpzdHJ1Y3QgbWF0cml4IHsKICAgIGxsIG0sbjsKICAgIHZlY3Rvcjx2ZWN0b3I8bGw+PiBtdDsKICAgIG1hdHJpeChpbnQgX209MCxpbnQgX249MCl7CiAgICAgICAgbT1fbTsgbj1fbjsKICAgICAgICBtdC5hc3NpZ24obSx2ZWN0b3I8bGw+KG4sMCkpOwogICAgfQogICAgbWF0cml4IG9wZXJhdG9yICogKGNvbnN0IG1hdHJpeCYgb3RoZXIpIGNvbnN0ewogICAgICAgIGludCB4PW0seT1uLHo9b3RoZXIubjsKICAgICAgIG1hdHJpeCBhbnMoeCx6KTsKICAgICAgIGZvcihpbnQgaT0wO2k8eDtpKyspewogICAgICAgICAgZm9yKGludCBrPTA7azx5O2srKyl7CiAgICAgICAgICAgIGlmKG10W2ldW2tdPT0wKSBjb250aW51ZTsKICAgICAgICAgICAgZm9yKGludCBqPTA7ajx6O2orKyl7CiAgICAgICAgICAgICAgIGFucy5tdFtpXVtqXT0oYW5zLm10W2ldW2pdK210W2ldW2tdKm90aGVyLm10W2tdW2pdKSUzOwogICAgICAgICAgICB9CiAgICAgICAgICB9CiAgICAgICB9CiAgICAgICByZXR1cm4gYW5zOwogICAgfQp9OwoKbWF0cml4IHBvd2VyKG1hdHJpeCBiYXNlLCBsbCBleHApIHsKICAgIG1hdHJpeCByZXMoYmFzZS5tLCBiYXNlLm0pOwogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBiYXNlLm07IGkrKykgcmVzLm10W2ldW2ldID0gMTsKICAgIHdoaWxlIChleHApIHsKICAgICAgICBpZiAoZXhwICYgMSkgcmVzID0gcmVzICogYmFzZTsKICAgICAgICBiYXNlID0gYmFzZSAqIGJhc2U7CiAgICAgICAgZXhwID4+PSAxOwogICAgfQogICAgcmV0dXJuIHJlczsKfQoKaW50IG1haW4oKQp7CiAgICBpdGFjaGkKICAgIGNpbj4+bj4+azsKICAgIGZvcihpbnQgaT0wO2k8bjtpKyspIHsKICAgICAgICBjaGFyIHg7IGNpbj4+eDsKICAgICAgICBpZih4PT0nUicpIGNbaV09MDsKICAgICAgICBlbHNlIGlmKHg9PSdHJykgY1tpXT0xOwogICAgICAgIGVsc2UgY1tpXT0yOwogICAgfQogICAgaWYobiprPD0xZTYpewogICAgICAgIGZvcihpbnQgaT0wO2k8aztpKyspewogICAgICAgICAgICBmb3IoaW50IGo9MDtqPG47aisrKXsKICAgICAgICAgICAgICAgIGludCBueHQ9KGorMSklbjsKICAgICAgICAgICAgICAgIGludCB2YWw9KDIqY1tqXSsyKmNbbnh0XSklMzsKICAgICAgICAgICAgICAgIGNbal09dmFsOwogICAgICAgICAgICAgICAgY1tueHRdPXZhbDsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBmb3IoaW50IGk9MDtpPG47aSsrKXsKICAgICAgICAgICAgaW50IHg9Y1tpXTsKICAgICAgICAgICAgaWYoeD09MCkgY291dDw8J1InOwogICAgICAgICAgICBlbHNlIGlmKHg9PTEpIGNvdXQ8PCdHJzsKICAgICAgICAgICAgZWxzZSBjb3V0PDwnQic7CiAgICAgICAgfQogICAgICAgIHJldHVybiAwOwogICAgfQogICAgbWF0cml4IEE9bWF0cml4KG4sbik7CiAgICBmb3IoaW50IGk9MDtpPDI7aSsrKSBmb3IoaW50IGo9MDtqPDI7aisrKSBBLm10W2ldW2pdPTI7CiAgICBmb3IoaW50IGk9MjtpPG47aSsrKSBBLm10W2ldW2ldPTE7CiAgICBtYXRyaXggQz1tYXRyaXgobiwxKTsKICAgIGZvcihpbnQgaj0wO2o8bjtqKyspIEMubXRbal1bMF09Y1tqXTsKICAgIG1hdHJpeCBCPW1hdHJpeChuLG4pOwogICAgZm9yKGludCBpPTE7aTxuO2krKykgQi5tdFtpLTFdW2ldPTE7CiAgICBCLm10W24tMV1bMF09MTsKICAgIEI9QipBOwogICAgQj1wb3dlcihCLG4pOwogICAgQj1wb3dlcihCLGspOwogICAgQz1CKkM7CiAgICBmb3IoaW50IGk9MDtpPG47aSsrKXsKICAgICAgICBpbnQgeD1DLm10W2ldWzBdOwogICAgICAgIGlmKHg9PTApIGNvdXQ8PCdSJzsKICAgICAgICBlbHNlIGlmKHg9PTEpIGNvdXQ8PCdHJzsKICAgICAgICBlbHNlIGNvdXQ8PCdCJzsKICAgIH0KICAgIHJldHVybiAwOwp9Cg==