#include <bits/stdc++.h>
const long double eps = 1e-15;
const long double pi = acos(-1);
using namespace std;
char temp[505];
int ar[] = {0, 0, -1, 1};
int ac[] = {-1, 1, 0, 0};
int n, k, a, b;
string res = "";
void solve(int sumb, int suma) {
  bool flag;
  if (suma > sumb) {
    int d = suma - sumb;
    for (int i = !res.empty(); i < d; i++) res += 'G';
    suma = sumb;
    flag = true;
  }
  if (sumb > suma) {
    int d = sumb - suma;
    for (int i = 0; i < d; i++) res += 'B';
    sumb = suma;
    flag = false;
  }
  if (!suma) return;
  if (flag) {
    res += 'B';
    sumb--;
  }
  for (int i = 0; i < suma + sumb; i++) {
    if (i % 2 == 0)
      res += 'G';
    else
      res += 'B';
  }
}
int main() {
  cin >> n >> k >> a >> b;
  int na = max(a, b);
  int nb = n - na;
  for (int i = 0; i < n; i++) {
    if (abs(na - nb) < k) {
      solve(na, nb);
      break;
    }
    for (int j = 0; j < k && na > 0; j++) {
      res += 'B';
      na--;
    }
    if (nb > 0) {
      res += 'G';
      nb--;
    }
  }
  if (a > b)
    for (auto &x : res)
      if (x == 'G')
        x = 'B';
      else
        x = 'G';
  int suma = 0, sumb = 0;
  for (auto &x : res) {
    if (suma > k || sumb > k) {
      cout << "NO\n";
      return 0;
    }
    if (x == 'G') {
      suma++;
      sumb = 0;
    } else {
      sumb++;
      suma = 0;
    }
  }
  if (suma > k || sumb > k) {
    cout << "NO\n";
    return 0;
  }
  if (res.size() == n)
    cout << res << "\n";
  else
    cout << "NO\n";
}
