#include <bits/stdc++.h>
using namespace std;
const int Nmax = 1e5 + 5;
const int inf = 2e9;
const int Mmax = 1e6 + 5;
const double eps = 1e-7;
char ans[Nmax];
bool sw;
int n, k, i, a, b, x, nr[Nmax], rest, j, p;
int main() {
  scanf("%d%d%d%d", &n, &k, &a, &b);
  if (!a) {
    if (b <= k)
      for (i = 1; i <= b; ++i) printf("B");
    else
      printf("NO");
    printf("\n");
    return 0;
  } else if (!b) {
    if (a <= k)
      for (i = 1; i <= a; ++i) printf("G");
    else
      printf("NO");
    printf("\n");
    return 0;
  } else if (a == b) {
    for (i = 1; i <= n / 2; ++i) printf("GB");
    printf("\n");
    return 0;
  }
  if (a < b) {
    swap(a, b);
    sw = 1;
  }
  for (i = 1; i <= 2 * b + 1; ++i) nr[i] = 1;
  rest = a - b - 1;
  while (rest) {
    for (i = 1; rest && i <= 2 * b + 1; i += 2) {
      ++nr[i];
      --rest;
    }
  }
  for (i = 1; i <= 2 * b + 1; ++i)
    if (nr[i] > k) {
      printf("NO\n");
      return 0;
    }
  for (i = 1; i <= 2 * b + 1; ++i)
    for (j = 1; j <= nr[i]; ++j)
      if (i & 1)
        ans[++p] = !sw ? 'G' : 'B';
      else
        ans[++p] = sw ? 'G' : 'B';
  printf("%s\n", ans + 1);
  return 0;
}
