#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, i, t = 0, cnt = 0;
  string s;
  vector<int> arr(6);
  for (i = 0; i < 6; i++) arr[i] = 0;
  string s1[6] = {"GRB", "GBR", "RGB", "RBG", "BRG", "BGR"}, s2;
  cin >> n >> s;
  for (i = 0; i < n; i += 3) {
    if ((s[i] != 'G') && (i < n)) arr[0]++;
    if ((s[i + 1] != 'R') && (i + 1 < n)) arr[0]++;
    if ((s[i + 2] != 'B') && (i + 2 < n)) arr[0]++;
  }
  for (i = 0; i < n; i += 3) {
    if ((s[i] != 'G') && (i < n)) arr[1]++;
    if ((s[i + 1] != 'B') && (i + 1 < n)) arr[1]++;
    if ((s[i + 2] != 'R') && (i + 2 < n)) arr[1]++;
  }
  for (i = 0; i < n; i += 3) {
    if ((s[i] != 'R') && (i < n)) arr[2]++;
    if ((s[i + 1] != 'G') && (i + 1 < n)) arr[2]++;
    if ((s[i + 2] != 'B') && (i + 2 < n)) arr[2]++;
  }
  for (i = 0; i < n; i += 3) {
    if ((s[i] != 'R') && (i < n)) arr[3]++;
    if ((s[i + 1] != 'B') && (i + 1 < n)) arr[3]++;
    if ((s[i + 2] != 'G') && (i + 2 < n)) arr[3]++;
  }
  for (i = 0; i < n; i += 3) {
    if ((s[i] != 'B') && (i < n)) arr[4]++;
    if ((s[i + 1] != 'R') && (i + 1 < n)) arr[4]++;
    if ((s[i + 2] != 'G') && (i + 2 < n)) arr[4]++;
  }
  for (i = 0; i < n; i += 3) {
    if ((s[i] != 'B') && (i < n)) arr[5]++;
    if ((s[i + 1] != 'G') && (i + 1 < n)) arr[5]++;
    if ((s[i + 2] != 'R') && (i + 2 < n)) arr[5]++;
  }
  t = min_element(arr.begin(), arr.end()) - arr.begin();
  s2 = s1[t];
  for (i = 0; i < n; i += 3) {
    if ((s[i] != s2[0]) && (i < n)) s[i] = s2[0];
    if ((s[i + 1] != s2[1]) && (i + 1 < n)) s[i + 1] = s2[1];
    if ((s[i + 2] != s2[2]) && (i + 2 < n)) s[i + 2] = s2[2];
  }
  cout << arr[t] << endl << s;
  return 0;
}
